2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

某8ビット機と8ビット機のスレッド

196 :774ワット発電中さん:2022/07/28(木) 21:58:17.11 ID:oZvH5JCP9
DEFINT A-Zで、
A# A! A$ などの記号がない変数は、すべて整数型と定義した場合。

最初はRUN命令で変数初期化があるから、
INPUT命令で「未入力(CR)」の場合、0になる。
よって、30行で0を禁止〜「未入力」「本当に0と入力」の区別が付かないから。

INPUT命令で、単精度実数型のT!に代入すると、いいのでは。

TIMEはシステム変数のため、0〜65535、
行番号【65530〜65535を除く】やPLAY命令のMマクロ……などと同じで、
0と正の1〜65535を認めている、のでは。

INPUT "TIME--->";TIME
のように、直接代入は……Syntax errorになった、これは不可と判明。


TIMEはシステム変数のため、単精度実数型と同じ扱いでいい、と思う。


>>177のプログラムを、「初代」モードで実行した場合。
GET TIMEがないので、時間は"23:59:59"と設定、
よって……
TIME変数は 59×1000+59×100+23×10=65130 〜 強制的に最大値を代入している。
このプログラムにもDEFINT A-Zがあるけど、エラーは出ない。

TIME変数に65130を代入した場合、6.8秒で0に戻るはず。
CTRL+STOPで中断し、? TIMEを実行すると、正の小さな値になっていた。


だから……誰もがRND(-TIME)を使うのでは?
徳間書店の雑誌掲載のプログラムは、DEFINTA-Zがないと、ボツになりそう。

これは、設計者のJさん本人が
他機種のRANDOMIZEに相当するのは"RND(-TIME)"、と設計したと思う。

アスキー版のリファレンスマニュアル(1983年)にも、
「RND(-TIME)を使って毎回ふり出す乱数を変えることができます。」
と記述がある
ということは、「公式設定では」と思う。

総レス数 834
1026 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★