乗算、除算、剰余
メニューを表示するにはスワイプしてください
乗算演算子
乗算演算子 * は、オペランド同士の積を返す。例えば、プールを満たすのに必要な水の量を求める場合:
Main.c
123456789101112131415#include <stdio.h> int main() { int height = 2; // In meters int width = 7; // In meters int length = 10; // In meters // A cubic meter contains one thousand liters int liters = (height * width * length) * 1000; printf("Size of pool: %d liters", liters); return 0; }
除算演算子
除算演算子 / は、左側のオペランドを右側のオペランドで割る。
車の速度を計算したいとします。
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters double t = 3; // Three hours double v = s / t; printf("Velocity = %f m/h", v); return 0; }
double型の変数を使用することで、結果が小数値となり、より正確な値を得ることができます。整数型のみを使用した場合、結果も整数になります。
int + int => int
int + double => double
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters int t = 3; // Three hours // Without `double v` variable printf("Velocity = %d m/h", s/t); return 0; }
フォーマット指定子を変更するだけでは、不正な整数除算は修正されないことに注意。
Main.c
12345678910#include <stdio.h> int main() { int s = 200; // In meters int t = 3; // Three hours printf("Velocity = %f m/h", s/t); // Changed specifier return 0; }
しかし、別の変数を導入せずに正しい除算を行う方法があります。
Main.c
1234567891011#include <stdio.h> int main() { int s = 200; // In meters double t = 3; // Three hours printf("Velocity = %f m/h", s/t); // Changed specificator return 0; }
注意
除算で小数点以下の結果を得るには、少なくとも一方のオペランドが double などの小数型である必要があります。
剰余演算子
% 演算子は除算の余りを返します。例えば:
Main.c
1234567891011#include <stdio.h> int main() { printf("Modulo 8 %% 5 = %d\n", 8 % 5); printf("Modulo 10 %% 3 = %d\n", 10 % 3); printf("Modulo 7 %% 5 = %d\n", 7 % 5); printf("Modulo 20 %% 5 = %d\n", 20 % 5); return 0; }
注意
文字列内で % 文字を表示したい場合(例: printf 文)、%% を使って % を1つ表現します。これは、コンパイラに % 文字を出力し、書式指定子として扱わないことを指示します。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 3. 章 3
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 3. 章 3