一般的な配列操作
CoddyのC#ジャーニー「基礎」セクションの一部 — レッスン 66/69。
よく使われる配列操作は以下の通りです:
- 配列内のすべての要素の合計を求めます:
int[] numbers = {1, 2, 3, 4, 5};
int sum = 0;
foreach (int number in numbers) {
sum += number;
}
Console.WriteLine("Sum: " + sum);- 配列内の要素の平均を求める:
int[] numbers = {1, 2, 3, 4, 5};
int sum = 0;
foreach (int number in numbers) {
sum += number;
}
double average = (double) sum / numbers.Length;
Console.WriteLine("Average: " + average);- 配列内の最大要素を見つける:
int[] numbers = {1, 5, 2, 9, 3};
int max = numbers[0];
for (int i = 1; i < numbers.Length; i++) {
if (numbers[i] > max) {
max = numbers[i];
}
}
Console.WriteLine("Max: " + max);- 配列内の最小要素を見つける:
int[] numbers = {1, 5, 2, 9, 3};
int min = numbers[0];
for (int i = 1; i < numbers.Length; i++) {
if (numbers[i] < min) {
min = numbers[i];
}
}
Console.WriteLine("Min: " + min);チャレンジ
簡単整数型の配列を入力として受け取り、以下の操作を実行する CalculateStats という名前のメソッドを作成してください。
- 配列内のすべての要素の合計を計算します。
- 配列内の要素の平均を計算します。
- 配列内の最大要素を見つけます。
- 配列内の最小要素を見つけます。
メソッドは、合計、平均、最大値、最小値の順に格納された double 型の配列を返す必要があります。
チートシート
C#における一般的な配列操作:
全要素の合計:
int[] numbers = {1, 2, 3, 4, 5};
int sum = 0;
foreach (int number in numbers) {
sum += number;
}要素の平均:
int[] numbers = {1, 2, 3, 4, 5};
int sum = 0;
foreach (int number in numbers) {
sum += number;
}
double average = (double) sum / numbers.Length;最大要素:
int[] numbers = {1, 5, 2, 9, 3};
int max = numbers[0];
for (int i = 1; i < numbers.Length; i++) {
if (numbers[i] > max) {
max = numbers[i];
}
}最小要素:
int[] numbers = {1, 5, 2, 9, 3};
int min = numbers[0];
for (int i = 1; i < numbers.Length; i++) {
if (numbers[i] < min) {
min = numbers[i];
}
}自分で試してみよう
using System;
public class Program {
public static double[] CalculateStats(int[] arr) {
// ここにコードを記述してください
}
public static void Main(string[] args) {
string text = Console.ReadLine();
string[] arrString = text.Split(",");
int[] numbers = new int[arrString.Length];
for (int i = 0; i < arrString.Length; i++) {
numbers[i] = int.Parse(arrString[i]);
}
double[] stats = CalculateStats(numbers);
Console.WriteLine("Sum: " + stats[0]);
Console.WriteLine("Average: " + stats[1]);
Console.WriteLine("Maximum: " + stats[2]);
Console.WriteLine("Minimum: " + stats[3]);
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。