Java 替换奇数为平方根和偶数为平方

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

其中,“array”指的是数组引用。

要获得一个数的平方根,我们可以使用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编程语言探讨了通过不同的方法将数组中的奇数替换为其平方根,偶数替换为其平方。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程