Tiny Basicのプログラムで
試験の成績を入力し、30点未満なら青点、30点以上50点未満なら赤点、50点以上なら合格と表示するプログラムを作成せよ。青点、赤点、合格を判定する部分は副プログラムとして作成せよ。 という問題があったんです。
それで僕は
Cls
input A
Call Q
Sub Q
END
Select Case A=A
Case A=<29
print"青点"
Case A=>50
print"合格"
Case else
print"赤点"
End Select
End sub
というプログラムをつくったんですがどんな点数を入れても青点って結果がでてしまうんです。
どうしたらいいんでしょうか?
No.9ベストアンサー
- 回答日時:
>PUBLIC Aのやつはエラーになります
エラー:コマンド PUBLIC の構文エラーです。
コマンドまたは引数のミスタイプが考えられます。
俺の環境では全くそうならない。念のため、Tiny BasicのバージョンとOSを言ってもらえる?
使えないバージョンだと仮定して
一応結構苦し紛れでこう書き直してみたけど・・・・
Cls
input A
Call Q(A)
END
Sub Q(X)
Select Case X=X
Case X=<29
print"青点"
Case X=>50
print "合格"
Case else
print "赤点"
End Select
End sub
OSはXPで
バージョンはTiny Basic for Windows v. 1.15b(jan.2007)
bytakeuchi Teruoです。
このプログラムでもできましたありがとうございました!!
No.6
- 回答日時:
>どのようなプログラムをつくったら
回答1の
PUBLIC A
から
End sub
までそのまま。
>起動させるとSub文に対応してませんとでてしまって
多分DT200さんがC/C++のノリで書いちゃったからだと思う
Basicは
Else If
じゃなくて
ElseIf
だ。
多分そこを全部直せば動くんじゃないかなあ?
>Select Case TRUEとかPUBLIC A のところが特にわかりませんね。。
何かいい説明があればURL読んどいて、で済むんだけど、ちょっと探す気力が沸かない。済まぬ。
#ちなみに一応環境を述べたのは
http://oshiete1.goo.ne.jp/qa3088906.html
なんてこともあったから。
if文は起動には成功しましたがやっぱり青点って表示されます
PUBLIC Aのやつはエラーになります
エラー:コマンド PUBLIC の構文エラーです。
コマンドまたは引数のミスタイプが考えられます。
って感じです
No.5
- 回答日時:
> =< や => じゃなくて <=/>= ではないのですか?
あ。でもまぁ一応当方環境では動作しています。
>Select Case の使い方が間違っています。
私も最初はそう思ったのですが、間違ってないと思います。
Select Case TRUE
って書けばお分かりでしょうか?
次のCase の後に指定された条件文がTRUEとなればそれが選ばれる、という。
#当方環境では
80を入力したら「合格」
30を入力したら「赤点」
15を入力したら「青点」
が表示されました。
PUBLIC A
がポイントだと思うんだけどなあ・・・・
(#1で掲示したコードはうっかりAの後に全角空白入れちゃったっぽいのでそのままコピペすると文法エラーと怒られます。)
#ちなみに検証環境はTiny Basic for Win 1.15b on WinXP Pro SP2です
Select Case TRUEとかPUBLIC A のところが特にわかりませんね。。
どのようなプログラムをつくったらちゃんと結果がでたんですか?
おしえてください><
No.4
- 回答日時:
外してたらごめんなさい。
> Case A=<29
> print"青点"
> Case A=>50
=< や => じゃなくて <=/>= ではないのですか?
Tiny Basic for Windowsについて
http://tinybasic.hp.infoseek.co.jp/TBIntro/tbasi …
ですよね?
でも構文エラーになっていないのか。
No.3
- 回答日時:
Select Case の使い方が間違っています。
Select Case A ← A=Aではない
Case 0 To 29 ← toで範囲を指定できるか不明(以上や以下という使い方はできない)
print "青点"
Case 30,31,32,33, .... ,48,49 ← これはOKのはず
Print "赤点"
Case 50 To 100
Print "合格"
Case Else
Print "入力誤り"
End Select
とするか、If文で判断します。
If ( A >= 0 ) and ( A < 30 ) Then
Print "青点"
Else If ( A>=30) and (A<50) Then
Print "赤点"
Else If (A>=50) and (A<=100) Then
Print "合格"
Else
Print ”入力誤り"
End If
Select Caseのプログラムはなんかよくわからなくてできませんでした。。
If文はとりあえず入れてみましたがエラーになってもうすこしでできそうだったんですが。。(泣
Cls
input A
Call mb
end
Sub mb
If ( A >= 0 ) and ( A < 30 ) Then
Print "青点"
Else If ( A>=30) and (A<50) Then
Print "赤点"
Else If (A>=50) and (A<=100) Then
Print "合格"
end if
End sub
end
という感じです
起動させるとSub文に対応してませんとでてしまって
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) ポケコンの文字移動が上手くできない… 3 2022/04/25 01:34
- C言語・C++・C# c言語 1 2022/11/09 13:05
- その他(プログラミング・Web制作) Pythonの問題です。 1 2022/08/02 12:39
- その他(プログラミング・Web制作) python コードについて(初学者です) 3 2023/07/20 14:44
- C言語・C++・C# C言語 3 2022/11/09 13:27
- 高校受験 中学校3年生です。 今回の前期中間のテストが9教科 900点中364点でした。 僕は高校に進学を取る 3 2022/06/25 01:56
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- 数学 至急!研究の統計について 6 2023/07/12 00:38
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- その他(プログラミング・Web制作) VBA 1 2023/01/19 16:19
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
変数の値が勝手に変化する原因
-
ループのとめ方
-
ロトカ=ヴォルテラ方程式 をC...
-
【JAVA】数字をひし形に出力す...
-
JCLの基本について教えてください
-
c言語 至急お願い致します
-
ProC 固定SQLでNULLってどう表...
-
C言語のプログラム
-
カシオ fx-5800P 測量プログラ...
-
_dupenv_s関数でメモリリーク
-
fortran if文
-
3次関数を作るプログラム
-
Fortran90についての質問です。
-
Tiny Basicのプログラムです。。
-
0除算して、落ちるプログラムと...
-
正しい五十音順について
-
65536は2の何乗なのでしょうか?
-
あるプログラムのコマンドライ...
-
C++ で、「)」が必要 というエ...
-
VBAで仕様書は書きますか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【JAVA】数字をひし形に出力す...
-
プログラミング
-
ruby
-
変数の値が勝手に変化する原因
-
JCLの基本について教えてください
-
Fortran90についての質問です。
-
fortran if文
-
3つの整数のうち奇数のみを表示...
-
Sublime Text 3でのFortranプロ...
-
Matlabについて質問2
-
ProC 固定SQLでNULLってどう表...
-
COBOLのピリオド
-
360度を超える角度
-
main関数終了時のreturnの意味は?
-
Visual Basic 三辺の長さ? ...
-
c言語です
-
C言語 バッファについて。
-
c言語のプログラミング 2つの整...
-
_dupenv_s関数でメモリリーク
-
N88basicを用いたGPIB制御
おすすめ情報