Menu
CoddyTech

取模运算符

本课属于 Coddy Dart 学习旅程的“基础知识”单元。第 18 课,共 94 课。

取模运算符(%)会给出除法后的余数。让我们通过一些简单的示例来了解它的工作原理。

基本取模运算

void main() {
  int dividend = 10;
  int divisor = 3;
  int remainder = dividend % divisor;
  
  print('Remainder of $dividend ÷ $divisor = $remainder');
}

输出:Remainder of 10 ÷ 3 = 1

当我们用 10 除以 3 时,得到 3,余数是 1。取模运算符 % 会返回这个余数。

检查偶数和奇数

我们可以使用取模运算符判断一个数是偶数还是奇数:

void main() {
  int number = 15;
  int remainder = number % 2;
  
  print('$number % 2 = $remainder');
  
  // 偶数除以 2 的余数是 0
  bool isEven = remainder == 0;
  
  // 直接判断布尔值,而不是使用 if/else
  String result = isEven ? '$number is even' : '$number is odd';
  print(result);
}

输出:

15 % 2 = 1
15 is odd
challenge icon

挑战

简单

创建一个程序,使用取模运算符(%)解决以下问题:

  1. 声明一个整数变量 totalMinutes,值为 197
  2. 使用整数除法计算并保存 totalMinutes 中的完整小时数
  3. 使用取模运算符计算并保存剩余分钟数
  4. 按照以下精确格式打印时间,包含小时和分钟:
197 minutes is 3 hours and 17 minutes.

然后:

  1. 声明一个整数变量 coins,值为 57
  2. 计算并保存 coins 可以换成多少个 25 枚一组的硬币
  3. 使用取模运算符计算并保存剩余硬币数
  4. 按照以下精确格式打印结果:
57 coins can be divided into 2 quarters and 7 remaining coins.

亲手试试

void main() {
  // 在这里声明你的变量
  // 把下面每个占位值替换为题目要求的值
  int totalMinutes = 0;

  // 计算小时数和剩余分钟数
  // 用整数除法计算小时数,用取模运算符计算剩余分钟数
  int hours = totalMinutes;
  int remainingMinutes = totalMinutes;

  // 输出时间结果
  print("$totalMinutes minutes is $hours hours and $remainingMinutes minutes.");

  // 计算 25 美分硬币的数量和剩余硬币的数量
  int coins = 0;
  int quarters = coins ~/ 1;
  int remainingCoins = coins % 1;

  // 输出硬币计算结果
  print("$coins coins can be divided into $quarters quarters and $remainingCoins remaining coins.");
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Dart 在线编译器