情報
大学生・専門学校生・社会人

BASICプログラムの問題です。
先日課題が出されたのですが、再提出するように言われました。
教授に質問メールを送ってみたのですがまだ返事が返ってきておらず困っています。
わかる方よろしければ、どこが間違えているか教えて欲しいですよろしくお願いします(。_。*)

あるタクシー会社の料金は、最初2kmまでが650円。 
以後600m毎に80円である。 
乗車距離をkmで入力し、乗車料金を求めよ。

10 INPUT"タクシー料金(2kmまで)";A
15 A=650
20 INPUT"乗車距離";B
30 INPUT"乗車距離";C
30 IF B>=2 THEN 0.6B*80
40 FOR K=B TO C
50 T=T+C
60 NEXT K
65 PRINT "乗車距離";C;"km"
70 PRINT "料金は";T;"円です"
80 END

回答

考え方が違います。普通はトータルの走行距離だけをinputさせる計算を期待してます。

たとえば、2.6kmを入力したら2 + 0.6に分解してやり、650*1 + 80*0.6 を計算できるようにつくります。
1.2kmなら、650がでるようにします。

今のプログラムはB,Cが何のためにあるのか不明です。

りな

回答ありがとうございます(。_。*)

はじめの値をB、終わりの値をCとしたつもりでした。

なるほどです!
分解して計算できるようにするにはIFを使って書けますか?

ゲイシャ

答えを書いてしまうと意味がないので、プログラムの流れだけ示してみます。頑張ってください。

りな

わざわざありがとうございます✨
10 INPUT"乗車距離";A
20 IF A<=2 THEN T=650 ELSE B=A-2 AND C=B/0.6 AND T=C*80
30 T=T+650
40 PRINT"乗車距離";A
50 PRINT"料金";T
60 END

こんな感じで大丈夫でしょうか?

ゲイシャ

3行目はelseのときだけ実行しますか?これだと、1kmのときにも1300円になるきがします。2行目にandしないといけないと思います。

私に確認するよりも、実際に実行して確かめた方がいいとおもいます。

りな

回答ありがとうございます!
どこをandにしたらいいのかわからなくなったので
IF節を2行作って提出しました。
BASICプログラムをコンピュータで動かすためには専用のソフトが必要ですか?
まだ実際に動かしたことがないので次回から参考にしたいです。

ゲイシャ

以前は十進BASICとかのソフトがありましたね。
スマホのアプリにもあるみたいです。
http://qiita.com/basictomonokai/items/25bcb21ec69c00e9ad23

りな

わざわざありがとうございます(。_。*)
本当に助かりました✨

この回答にコメントする
疑問は解決しましたか?