在 Java 中用平方根替换奇数,用平方替换偶数

javaobject oriented programmingprogramming更新于 2024/11/27 19:56:17

在 Java 中,数组是一个对象。它是一种非原始数据类型,用于存储类似数据类型的值。

根据问题陈述,我们必须用给定数组中的平方根替换奇数,用平方替换所有偶数。如果一个数能被 2 整除,则称其为偶数,否则称为奇数。

让我们探索这篇文章,看看如何使用 Java 编程语言来实现这一点。

向您展示一些实例

实例 1

假设原始数组为 {49, 9, 12, 6, 64, 81, 22}。
通过平方根找到奇数,通过平方找到所有偶数后:
原始数组为:[7, 3, 144, 36, 4096, 9, 484]
给定数组中偶数及其平方为:
偶数 | 平方
12 -- 144
6 -- 36
64 -- 4096
22 -- 484
给定数组中奇数及其平方根为:
奇数 |平方根
49 -- 7
9 -- 3
81 -- 9

实例-2

假设原始数组为 {51, 19, 22, 61, 4, 8, 32}
通过平方根找到奇数,通过平方找到所有偶数后:
原始数组为:[7, 4, 484, 7, 16, 64, 1024]
(这里我们将 double 值转换为 int 值)
给定数组中的偶数及其平方为:
偶数 | 平方
22 -- 484.0
4 -- 16.0
8 -- 64.0
32 -- 1024.0
给定数组中的奇数及其平方根为:
奇数 |平方根
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"找到奇数元素,并通过"arr[i]%2 != 0"求其平方"Math.sqrt(arr[i])"。

  • 步骤 4 - 打印数组的元素。

语法

要获取数组的长度(该数组中的元素数),数组有一个内置属性,即 length

下面是它的语法 -

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[]) {
      
        //声明并初始化数组元素
        int[] arr = { 49, 9, 12, 6, 64, 81, 22 };
        
        //打印原始数组
        System.out.println("原始数组为:" + Arrays.toString(arr));
        
        //逐个迭代数组元素并替换
        //奇数用其平方根
        
        //偶数用其平方
        for (int i=0; i<arr.length; i++){
      
         //检查偶数元素
         if(arr[i]%2 == 0) {
         
            //打印偶数数组元素及其平方
            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));
   }
}

输出

原始数组为:[49, 9, 12, 6, 64, 81, 22]
更新后的数组为:[7, 3, 144, 36, 4096, 9, 484]

方法 2:使用用户定义方法

在此方法中,数组元素将在程序中初始化。然后通过将数组作为参数传递并按照算法在方法内部调用用户定义方法,用数组的平方根替换奇数,用数组的平方替换所有偶数。

示例

import java.util.*;
public class Main {
   public static void main(String args[]) {
      
    //声明并初始化数组元素
    int[] arr = { 49, 9, 12, 6, 64, 81, 22 };
    
    //调用用户定义的方法
    replace(arr);
   }
   
   //用户定义的方法
   public static void replace(int []arr) {
    //打印原始数组
    System.out.println("原始数组为:" + Arrays.toString(arr));
    
    //逐个迭代数组元素并替换
    //奇数用其平方根
    
    //偶数用其平方
    for (int i=0; i<arr.length; i++) {
      
         //检查偶数元素
         if(arr[i]%2 == 0) {
         
            //打印偶数数组元素及其平方
            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));
   }
}

输出

原始数组为:[49, 9, 12, 6, 64, 81, 22]
更新后的数组为:[7, 3, 144, 36, 4096, 9, 484]

在本文中,我们探索了使用 Java 编程语言在数组中用其平方根替换奇数和用其平方替换偶数的不同方法。


相关文章


有用资源