(4) 第2章 演算と型
第3章 プログラムの流れの分岐
目次
これまでの復習
プログラム
- プログラム=実行したいことを順番に記述したもの
- コンピュータは人間の言葉を理解しない(機械語・マシン語を理解)ので、人間とコンピュータの橋渡しをするのが、プログラミング
言語
- コンパイラが、プログラミング言語を機械語に翻訳する
変数
- 変数=メモリのどこかにある「入れ物」
- C言語では、最初に準備が必要=宣言
- 型:変数(入れ物)の設計図
代入
- C言語の = は、数学の「左右が等しい」という意味では無く、「右辺の値を左辺の値に入れる」という意味:代入
- 例) a=1; b=2; c=a+b;
入力
- scanfという関数(命令)を使ってキーボードから変数にデータを入力することができる
- scanf("変換仕様", &変数) として使う
- 変換仕様は、整数型(int)の場合 %d、実数型(double)の場合 %lf
出力
- printfという関数(命令)を使って画面に文字やデータを出力(表示)することができる
- ただ文字を出力する場合、printf("出力したい文字") とする
- 変数を出力したい場合、printf("変換仕様", 変数) として使う
- 変換仕様は、整数型(int)の場合 %d、実数型(double)の場合 %f
- ¥n は改行を表す
- %5d は5ケタ分の表示領域を確保して表示する
- %5.2f は5ケタ分の表示領域を確保し、小数点以下は2ケタまで表示する
- %.2f は小数点以下2ケタまで表示する
演算
- 加減乗除は + - * /
- 整数どうしの割り算は切り捨てになる
- 実数がどちらかにあれば、実数になる
- 余りは % (整数のみ)
- 何ケタ目かを取り出すときによく使われる
- 倍数かどうかを考えるときにも使われる
プログラムの流れ(3章、4章の導入)
- 「アルゴリズム」 = 問題を解くためのプログラムの手順を書いたもの
- フローチャート等で図示する
- 基本構造
- 順次
- 分岐 (教科書3章) ある条件によって実行したりしなかったり
- 繰り返し (教科書4章) ある処理を何度も実行する
分岐の例(if文)
条件が成り立つ時だけ
/* if文の例1 */
#include <stdio.h>
int main(void)
{
int num;
printf("整数を入力してください:");
scanf("%d", &num);
if(num>0){
printf("正の数です¥n");
}
return (0);
}
条件が成り立つ時と成り立たないとき
/* if文の例2 */
#include <stdio.h>
int main(void)
{
int num;
printf("整数を入力してください:");
scanf("%d", &num);
if(num>0){
printf("正の数です¥n");
}else{
printf("正の数じゃないです¥n");
}
return (0);
}
繰り返しの例(while文とfor文)
while文 条件が成り立つ場合に繰り返す
/* while文の例 */
#include <stdio.h>
int main(void)
{
int goukei, i;
goukei=0;
i=1;
while(i<=10){
goukei=goukei+i;
i=i+1;
}
printf("1から10までを足すと%dになります¥n", goukei);
return (0);
}
for文 回数を指定して繰り返す
/* for文の例 */
#include <stdio.h>
int main(void)
{
int goukei, i;
goukei=0;
for(i=1; i<=10; i++){
goukei=goukei+i;
}
printf("1から10までを足すと%dになります¥n", goukei);
return (0);
}
演習4-1 (分岐)
- 入力した整数が偶数のときに「偶数です」と表示するプログラムを作る
- 入力した整数が偶数のときに「偶数です」、奇数の時に「奇数です」と表示するプログラムを作る
演習4-2 (繰り返し)
- 整数を入力し、1から入力した整数までを足した数を表示するプログラムを作る。while文を用いる。
- 整数を入力し、1から入力した整数までを足した数を表示するプログラムを作る。for文を用いる。
課題4
以下のプログラムを作成する
- 円の半径[cm](整数型)を入力し、円の面積を計算して小数点以下2桁まで表示する。半径として正の数が入力された時だけ計算して表示し、0以下の値が入力された時は、「正の数を入力してください」と表示するだけにする。円周率は3.14として計算する。
- 実数を10個入力し、正の数の合計と、負の数の合計を表示する。
- 1~100までの整数のうち、3の倍数の合計を表示する。
- 二つの整数を入力し、最初に入力した数から次に入力した数までの合計を表示する。最初に入力した数の方が大きかった場合は、「計算できません」と表示する。
- 数当てゲームを作る(発展問題)
- 当てる数は1から100の間の整数とする
- 正解の数を決めておく
- ある数値を入力し、正解と比べて当たりか、大きいか、小さいかを表示する
- 10回以内で当たると「おめでとう」、10回を超えたら「残念でした」と表示し終了する
注意事項
- 宛先はkawahara、件名は 1200xxxx処
理演習C1課題4 のように学籍番号、講義名、課題名を続けて書く
- 全部のプログラムと実行結果を、ひとつのメールの本文に貼りつけて送信する
- 添付メールとして送らない
- メールの本文には、ソースプログラム、実行結果、考察を書く
- 時間内に、メールで送信(時間内にできなかった人は出来たところまでを送信)