【第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