【第4回】ステートメント(2)
【第4回】ステートメント(2)

例題11 条件判断@ 「IF〜THEN〜」
3つの数値a,b,cを入力して、最大値を表示するプログラムを作れ。


(LIST1)

1:  INPUT "a=";a

2:  INPUT "b=";b

3:  INPUT "c=";c

4:  IF b<c THEN b=c         'b,cの大きい方をbに

5:  IF a<b THEN a=b          'a,bの大きい方をaに

6:  PRINT a              'aの値が最大値

(LIST2)

1:  INPUT "a=";a

2:  INPUT "b=";b

3:  INPUT "c=";c

4:  max=a			     '仮の最大値をaに

4:  IF b>max THEN max=b       'b,maxの大きい方をmaxに

5:  IF c>max THEN max=c       'c,maxの大きい方をmaxに

6:  PRINT max              'aの値が最大値



<類題11-1>4つの数値a,b,c,dを入力して、最小値を表示するプログラムを作れ。

(OUTPUT) a?63  b?48  c?72  d?83  48

<類題11-2>自然数nの平方 n2 が1000以上となる最小のnを求めるプログラムを作れ。

(OUTPUT) 32

例題12 条件判断A 「SELECT」
3つの数値a,b,cを入力して、2次方程式 ax2+bx+c=0 の解を表示するプログラムを作れ。


(LIST)

1:  INPUT "a=";a

2:  INPUT "b=";b

3:  INPUT "c=";c

4:  D=b^2-4*a*c             '判別式 

5:  SELECT CASE D            '判別式Dによる分岐

6:  CASE IS >0               'D>0のとき異なる2つの実数解

7:      PRINT "x1=";(-b-SQR(D))/(2*a)

8:      PRINT "x2=";(-b+SQR(D))/(2*a)

9:  CASE IS =0             'D=0のとき重解

10:      PRINT "x=";-b/2*a

11:  CASE IS <0             'D<0のとき解なし

12:      PRINT "解なし"

13:  END SELECT

<類題12>2つの数値a,bを入力して、1次方程式 ax=b の解を表示するプログラムを作れ。

例題13 条件判断を伴う繰り返し 「DO〜LOOP」
いくつかの自然数を入力し、その合計を求め表示するプログラムを作れ。


(LIST)

1:  sum=0

2:  DO

3:      INPUT "x=";x

4:      IF x>0 THEN sum=sum+x ELSE PRINT "sum=";sum:END

5:  LOOP

<類題13>いくつかの自然数を入力し、その平方の和を求め表示するプログラムを作れ。

(OUTPUT) ?54,32,41,-1  5306