演習の解答例

各演習問題の解答例は以下の通りです。 講評に関しては、ここをみてください。

小テスト1 の講評

こちらで考えていた解答例はこんな感じです。
#include <stdio.h>
int main();

int main()
{int a, b, c, d;
 char buffer[10];

 printf("aを入力してください\n");
 gets(buffer);
 a=atoi(buffer);

 printf("bを入力してください\n");
 gets(buffer);
 b=atoi(buffer);

 printf("cを入力してください\n");
 gets(buffer);
 c=atoi(buffer);

 printf("dを入力してください\n");
 gets(buffer);
 d=atoi(buffer);

 if ((a>b)&&(a>c)&&(a>d)){printf("max = %d\n", a);}
 if ((b>a)&&(b>c)&&(b>d)){printf("max = %d\n", b);}
 if ((c>a)&&(c>b)&&(c>d)){printf("max = %d\n", c);}
 if ((d>a)&&(d>b)&&(d>c)){printf("max = %d\n", d);}
 return (0);
}
みなさん、よくできていました。 以下, 解説をします.
送り先を kunihiro@ice.uec.ac.jp にした人がかなりいました. (正しい送り先は kunihiro だ, と説明してあります) 今回は,採点の時に考慮しますが,以後,注意してください.
a, b, c,dの中でaが一番大きいための条件は, 「aがbよりも大きくて,なおかつ,aがcよりも大きくて,なおかつ, aがdよりも大きい」ですね.(これが,理解できない人はいませんね.) あとは,それを忠実にプログラムにするだけです.
このプログラムは,大きく分けて,二つの小さいプログラムから構成されています.
  1. 数値の入力をする部分
  2. 条件を満たしているか調べて,結果を出力する部分
最初から,大きいプログラムを作ろうとすると,大変ですが, ほとんどのプログラムは,このように小さいプログラムの集合体となっています. まずは,小さいプログラムを組んでみることから,スタートしましょう.