本帖最后由 Jim 于 2025-4-25 23:55 编辑
作业1:
import 'dart:io';
void main() {
int? num = 0;
bool repeat = true;
while (repeat) {
num = getInputInt("

lease enter a number (1-7):");
if (num == null) {
repeat = false;
continue;
}
switch (num) {
case 1:
print("\x1B[32m${num} is Monday\x1B[0m");
break;
case 2:
print("\x1B[32m${num} is Tuesday\x1B[0m");
break;
case 3:
print("\x1B[32m${num} is Wednesday\x1B[0m");
break;
case 4:
print("\x1B[32m${num} is Thursday\x1B[0m");
break;
case 5:
print("\x1B[32m${num} is Friday\x1B[0m");
break;
case 6:
print("\x1B[32m${num} is Saturday\x1B[0m");
break;
case 7:
print("\x1B[32m${num} is Sunday\x1B[0m");
break;
default:
print(
"\x1B[31m${num}\x1B[0m is invalid input. Please enter a number between 1 and 7.",
);
break;
}
}
}
String? getInputString(String prompt) {
print(prompt);
String? input = stdin.readLineSync();
return input;
}
int? getInputInt(String prompt) {
String? input = getInputString(prompt);
if (input == null || input.isEmpty) {
return null;
}
try {
int num = int.parse(input);
return num;
} catch (e) {
return null;
}
}
作业2:
import 'dart:io';
void main() {
int? score = 0;
bool repeat = true;
while (repeat) {
score = getInputInt("

lease enter a score (0-100):");
if (score == null) {
repeat = false;
continue;
}
switch (score ~/ 10) {
case 10:
case 9:
print("\x1B[35m${score} is A\x1B[0m");
break;
case 8:
print("\x1B[32m${score} is B\x1B[0m");
break;
case 7:
print("\x1B[36m${score} is C\x1B[0m");
break;
case 6:
print("\x1B[35m${score} is D\x1B[0m");
break;
default:
if (score >= 0 && score <= 59) {
print("\x1B[33m${score} is E\x1B[0m");
} else {
print(
"\x1B[31m${score} is invalid score, Please enter a score between 0 and 100\x1B[0m",
);
}
}
}
}
String? getInputString(String prompt) {
print(prompt);
String? input = stdin.readLineSync();
return input;
}
int? getInputInt(String prompt) {
String? input = getInputString(prompt);
if (input == null || input.isEmpty) {
return null;
}
try {
int num = int.parse(input);
return num;
} catch (e) {
return null;
}
}