数値配列内の要素の最大、最小、平均、合計などを検索します
タイトルの説明:
アルゴリズムの検討:数値配列内の要素の最大、最小、平均、合計などを見つけます
10個の要素を含むint型の1次元配列を定義し、それぞれランダムな整数を割り当ててから、すべての要素の最大値、最小値、合計値、平均値を見つけて出力します。要件:すべての乱数は2桁です。
問題解決のアイデア:
[10,99]:数式を使用するときは、閉じた区間であることを確認してください。
数式:(int)(Math.random()*(99-10 + 1)+ 10)
概要:
トラバースする場合、0からarr.length-1、つまりfor(int i = 0;i < arr.length;i++)
この質問のJavaコード:
public class ArrayTest1 {
public static void main(String[] args) {
int[] arr = new int[10];
for(int i = 0;i < arr.length;i++){
arr[i] = (int)(Math.random() * (99 - 10 + 1) + 10);
}
//遍历
for(int i = 0;i < arr.length;i++){
System.out.print(arr[i] + "\t");
}
System.out.println();
//求数组元素的最大值
int maxValue = arr[0];
for(int i = 1;i < arr.length;i++){
if(maxValue < arr[i]){
maxValue = arr[i];
}
}
System.out.println("数组元素中的最大值为:" + maxValue);
//求数组元素的最小值
int minValue = arr[0];
for(int i = 1;i < arr.length;i++){
if(minValue > arr[i]){
minValue = arr[i];
}
}
System.out.println("数组元素中的最小值为:" + minValue);
//求数组元素的总和
int sum = 0;
for(int i = 0;i < arr.length;i++){
sum += arr[i];
}
System.out.println("数组元素的总和为:" + sum);
//求数组元素的平均数
int avgValue = sum / arr.length; //此时结果为整数
// double avgValue = (double)sum / arr.length; 此时结果为带小数的形式
System.out.println("数组元素的平均数为:" + avgValue);
}
}