剰余演算子
CoddyのDartジャーニー「基礎」セクションの一部。レッスン 18/94。
modulo operator(%)は、divisionの後のremainderを返します。いくつかの簡単な例を使って、どのように機能するかを見ていきましょう。
基本的な剰余演算(Modulo)
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で `remainder` は1になります。`modulo` `operator` % は、その `remainder` の値を取得します。
偶数と奇数の判定
modulo 演算子を使用して、number が even か odd かを判定できます:
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チャレンジ
簡単modulo 演算子 (%) を使用して、次の問題を解決するプログラムを作成してください:
- 値 197 を持つ integer 変数
totalMinutesを宣言します - integer の division を使用して、
totalMinutesに含まれる全体の hours を計算して保存します - modulo 演算子を使用して、remaining の minutes を計算して保存します
- 正確に次の形式で hours と minutes の time を print します:
197 minutes is 3 hours and 17 minutes.次に:
- 値 57 を持つ integer 変数
coinsを宣言します coinsから何個の quarters(25 coins)ができるかを計算して保存します- modulo 演算子を使用して、remaining の coins を計算して保存します
- 正確に次の形式で result を print します:
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.");
// クォーターと残りのコインを計算する
int coins = 0;
int quarters = coins ~/ 1;
int remainingCoins = coins % 1;
// コインの結果を出力する
print("$coins coins can be divided into $quarters quarters and $remainingCoins remaining coins.");
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Dartオンラインコンパイラ