Java 用平方根替换奇数,用平方替换偶数
在Java中,数组是一个对象。它是一种非原始数据类型,用于存储类似数据类型的值。
根据问题陈述,我们必须在给定的数组中用平方根替换奇数,用平方替换所有偶数。如果一个数字能被2整除,就被称为偶数,否则就被称为奇数。
让我们来探讨一下这篇文章,看看如何使用Java编程语言来实现。
向您展示一些实例
实例1
Suppose the original array is {49, 9, 12, 6, 64, 81, 22}.
After finding odd numbers by its square root and all even numbers by its square:
Original array is: [7, 3, 144, 36, 4096, 9, 484]
Even numbers with their square in the given array are:
Even Number | Square
12 -- 144
6 -- 36
64 -- 4096
22 -- 484
Odd numbers with their square root in the given array are:
Odd Number | Square root
49 -- 7
9 -- 3
81 -- 9
实例2
Suppose the original array is {51, 19, 22, 61, 4, 8, 32}
After finding odd numbers by its square root and all even numbers by its square:
Original array is: [7, 4, 484, 7, 16, 64, 1024]
(Here we have typecast double value to int value)
Even numbers with their square in the given array are:
Even Number | Square
22 -- 484.0
4 -- 16.0
8 -- 64.0
32 -- 1024.0
Odd numbers with their square root in the given array are:
Odd Number | Square root
51 -- 7.14142842854285
19 -- 4.358898943540674
61 -- 7.810249675906654
算法
- 第1步 – 声明并初始化一个整数数组。
-
第2步 – 通过 “arr[i]%2 == 0 “找到偶数元素,并通过 “Math.pow(arr[i],2) “将其平方。
-
第3步 – 通过 “arr[i]%2 != 0 “找到奇数元素,并通过 “Math.sqrt(arr[i]) “找到其平方。
-
第4步 – 打印数组中的元素。
语法
要获得一个数组的长度(该数组中的元素数),数组有一个内置的属性,即长度
下面是它的语法
array.length
其中,’数组’指的是数组引用。
为了获得一个数字的平方根,我们在java.lang包的Math类中内置了sqrt()方法。
以下是使用该方法获得任何数字的平方根的语法
double squareRoot = Math.sqrt(input_vale)
同样地,在Java中,为了获得任何数字的幂,我们有内置的 java.lang.Math.pow() 方法。
以下是使用该方法获得2的幂的语法 —
double power = Math.pow (inputValue,2)
多种方法
我们已经提供了不同方法的解决方案。
- 通过使用数组的静态初始化
-
通过使用用户定义的方法
让我们逐一看看这个程序和它的输出。
方法1:通过使用数组的静态初始化
在这种方法中,数组元素将在程序中被初始化。然后按照算法,用奇数的平方根替换奇数,用所有偶数的平方替换数组。
例子
import java.util.*;
public class Main {
public static void main(String args[]) {
//Declare and initialize the array elements
int[] arr = { 49, 9, 12, 6, 64, 81, 22 };
//printing original array
System.out.println("Original array is: " + Arrays.toString(arr));
//Iterating the array elemnts one by one and replacing
//Odd numbers with their square root
//Even numbers with their square
for (int i=0; i<arr.length; i++){
//check for even element
if(arr[i]%2 == 0) {
//printing even array elements with their square
arr[i] = (int)Math.pow(arr[i],2);
} else {
arr[i] = (int)Math.sqrt(arr[i]);
}
}
System.out.println("Updated array is: "+ Arrays.toString(arr));
}
}
输出
Original array is: [49, 9, 12, 6, 64, 81, 22]
Updated array is: [7, 3, 144, 36, 4096, 9, 484]
方法-2:通过使用用户定义的方法
在这种方法中,数组元素将在程序中被初始化。然后通过传递数组作为参数调用一个用户定义的方法,并在方法中按照算法用其平方根替换奇数,用数组的平方替换所有偶数。
例子
import java.util.*;
public class Main {
public static void main(String args[]) {
//Declare and initialize the array elements
int[] arr = { 49, 9, 12, 6, 64, 81, 22 };
//calling the user defined method
replace(arr);
}
//user defined method
public static void replace(int []arr) {
//printing original array
System.out.println("Original array is: " + Arrays.toString(arr));
//Iterating the array elemnts one by one and replacing
//Odd numbers with their square root
//Even numbers with their square
for (int i=0; i<arr.length; i++) {
//check for even element
if(arr[i]%2 == 0) {
//printing even array elements with their square
arr[i] = (int)Math.pow(arr[i],2);
} else {
arr[i] = (int)Math.sqrt(arr[i]);
}
}
System.out.println("Updated array is: "+ Arrays.toString(arr));
}
}
输出
Original array is: [49, 9, 12, 6, 64, 81, 22]
Updated array is: [7, 3, 144, 36, 4096, 9, 484]
在这篇文章中,我们探讨了使用Java编程语言在数组中用平方根替换奇数,用平方替换偶数的不同方法。