利用迴圈自動輸入好幾天的數據就不需要手動呼叫昨天寫的recordTodayData()好幾次,每天輸入後馬上判斷出狀態並印出
程式碼解釋:
1.新增陣列並儲存當天狀態,最後一行為表達儲存今天的狀態
static int[] systolicArray = new int[3];
static int[] diastolicArray = new int[3];
static int[] pulseArray = new int[3];
static String[] statusArray = new String[3];
2.前幾天的「輸入資料並判斷」程式碼區塊,每天數入完當場放出結果讓使用者可以即時知道結果
public static void recordTodayData(int dayIndex) {
Scanner scanner = new Scanner(System.in);
System.out.println("=== 第 " + (dayIndex + 1) + " 天輸入 ===");
System.out.print("請輸入收縮壓: ");
systolicArray[dayIndex] = scanner.nextInt();
System.out.print("請輸入舒張壓: ");
diastolicArray[dayIndex] = scanner.nextInt();
System.out.print("請輸入脈搏: ");
pulseArray[dayIndex] = scanner.nextInt();
if (systolicArray[dayIndex] >= 140 || diastolicArray[dayIndex] >= 90) {
statusArray[dayIndex] = "偏高";
} else if (systolicArray[dayIndex] < 90 || diastolicArray[dayIndex] < 60) {
statusArray[dayIndex] = "偏低";
} else {
statusArray[dayIndex] = "正常";
}
System.out.println("今日狀態:" + statusArray[dayIndex] + "\n");
}
3.顯示輸入結果
public static void printAllData() {
System.out.println("=== 目前所有紀錄 ===");
for (int i = 0; i < systolicArray.length; i++) {
System.out.println("第 " + (i + 1) + " 天:" +
systolicArray[i] + "/" + diastolicArray[i] +
" mmHg, 脈搏:" + pulseArray[i] +
" → 狀態:" + statusArray[i]);
}
}
4.印出「目前所有數據」的提示字後用迴圈自動從第0天跑到第2天,每次呼叫 recordTodayData() 輸入數據
public static void main(String[] args) {
// 用迴圈輸入 3 天
for (int i = 0; i < systolicArray.length; i++) {
recordTodayData(i);
}
5.印出所有結果
printAllData();
程式碼結果:
=== 第 1 天輸入 ===
請輸入收縮壓: 117
請輸入舒張壓: 66
請輸入脈搏: 117
今日狀態:正常
=== 第 2 天輸入 ===
請輸入收縮壓: 93
請輸入舒張壓: 65
請輸入脈搏: 91
今日狀態:正常
=== 第 3 天輸入 ===
請輸入收縮壓: 99
請輸入舒張壓: 63
請輸入脈搏: 105
今日狀態:正常
=== 目前所有紀錄 ===
第 1 天:117/66 mmHg, 脈搏:117 → 狀態:正常
第 2 天:93/65 mmHg, 脈搏:91 → 狀態:正常
第 3 天:99/63 mmHg, 脈搏:105 → 狀態:正常