IF文
IF 条件 THEN 処理
(条件)が真ならば(処理)を行う。
(条件)が偽ならば次の行へ進む。
(条件)が真ならば(処理)を行う。
(条件)が偽ならば次の行へ進む。
IF 条件 THEN 処理A ELSE 処理B
(条件)が真ならば(処理A)を、偽ならば(処理B)を行う。
その後、次の行へ進む。
(条件)が真ならば(処理A)を、偽ならば(処理B)を行う。
その後、次の行へ進む。
比較演算子
数学 | = | < | > | ≦ | ≧ | ≠ |
BASIC | = | < | > | <= | >= | <> |
【確認1】Xの絶対値を出力するプログラム(その1)
[プログラム]
10 INPUT X 20 IF X>=0 THEN PRINT X 30 IF X<0 THEN PRINT -X 40 END
[実行結果]
【確認2】Xの絶対値を出力するプログラム(その2)
[プログラム]
10 INPUT X 20 IF X<0 THEN X=-X 30 PRINT X 40 END
[実行結果]
(i) 10を入力した場合
(ii) -10を入力した場合
[解説]
このプログラムは、確認1のプログラムを書き換えたものです。
20行目において、Xが負であればXに−Xを代入して符号を反転しています。
【問題1】入力された値が正/0/負のいずれであるか判定をするプログラム
[プログラム]
10 INPUT X 20 IF ___ THEN PRINT X;"is positive." 30 IF ___ THEN PRINT X;"is negative." 40 IF ___ THEN PRINT X;"is zero." 50 END
[実行結果]
(i) 10を入力した場合
(ii) -10を入力した場合
(iii) 0を入力した場合
[設問]
実行結果を参考にして空欄を埋め、キーボードから入力された値Xが正の数であるか負の数であるか、それとも0であるか判定するプログラムを完成させなさい。
【問題2】絶対値を求めるプログラム
[プログラム]
100 INPUT "x=";X 110 IF X>=1 THEN PRINT X ELSE PRINT -X 120 END
[設問]
A君は絶対値を求めるために次のプログラムを作りました。
このプログラムを実行してみると、X=3を入力したときは3が出力され、X=-3を入力したときは3が出力されます。また、X=1を入力したときは1が出力され、X=-1を入力したときは1が出力されます。
しかし、このプログラムには誤りがあります。その誤りを指摘し、正しく動作するようにプログラムを変更しなさい。
【問題3】二次方程式の異なる実数解の個数を求めるプログラム
[プログラム]
10 INPUT PROMPT "a,b,c=":A,B,C 20 D=___________ 30 IF ___ THEN PRINT "This equation has two solutions." 40 IF ___ THEN PRINT "This equation has a solution." 50 IF ___ THEN PRINT "This equation has no solutions." 60 END
[設問]
空欄を埋めてプログラムを完成させなさい。