プチコン3号 SmileBASIC コミュニティ投稿Иあっキー#くさへび akkisato2015/01/08 20:04:19プチコンのバージョンを表示するプログラムの作り方を教えてください!2そうだね 10返信プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿みけらんジェロ chikuwaxx2015/1/8 20:22バージョン情報が格納されてるシステム変数はVERSIONです。 PRINT VERSIONと打つとバージョンが・・・50332160と出るんですよね。 どういう事かと言いますと、これは16進数で表示してるという事なのです(つまりVERSIONには16進数で格納されている)。 そこで PRINT HEX$(VERSION)と打つと、3000200と出ます。 分解すると3,00,0200となり(これはVERSIONのヘルプに書いてありました)、バージョン3.0.2という事が判明します。 ただこの数字は数値として格納されてますので、プログラムで文字列として扱う(そうでないと分解出来ない)にはまたちょっとした方法が必要ですが、ヒントはここまでです(MID$・・・いや何でもない)。1そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[2]親投稿Иあっキー#くさへび akkisato2015/1/8 21:12これじゃダメですよね。 Ver1.0.10 とかになったとき、ちゃんと表示されませんよね? 実は、ここで行き詰まって、質問したんです。 僕は、mk2の時からやってるので、 プチコン歴ちょうど1年です!0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿みけらんジェロ chikuwaxx2015/1/8 21:42よく見るとMID$の書き方がおかしいですね・・・ MID$は前から基となる文、(抜きだしたい文字の)左からの文字数、何文字抜きたいかの数値ですから MID$(V$,0,1)+"."+MID$(V$,1,2)+"."+MID$(V$,3,4)でないと正しく出ないと思われます。 私のBASIC歴は過去MSXやファミリーベーシックも触ってきましたのでブランク込みで30年以上ですかね。0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿でんぺん DENPEN2015/1/8 21:48ちょっと思ったんですが、これって一番最後の桁だけ特殊ですよね。0200で2なら0201だとどういうことになるんだろう? 3.0.2.1? 3.0.201? とちょっと疑問に思いました0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿みけらんジェロ chikuwaxx2015/1/8 21:53私も最初ヘルプに書いてあったのはXX.YY.ZZZZなので30,00,200(7桁なので2000にはなりません)と読んでましたが区切る所が違うの?と思ってたり。 あとHEX$は数値じゃなくて文字列で返すのだと今気付きました。そこは申し訳ないです。0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[6]親投稿でんぺん DENPEN2015/1/8 22:09とりあえず数字の表示はともかくとして桁数のことを考えると上から数えるのはバージョン頭が2桁になった時に問題があるので後ろから数えた方が良さそうですね。 LEFT$(V$,LEN(V$)-6)+"."+MID$(V$,LEN(V$)-6,2)+"."+RIGHT$(V$,4) みたいな。 てかあってるかな。たまにこの手の命令は切り出し箇所を間違える…0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[7]親投稿Godot orz_1272015/1/8 23:27V=VERSION V1=V>>24 V2=(V>>16) AND 255 V3=((V>>8) AND 255) + (V AND 255) * 256 ?FORMAT$("%D.%D.%D",V1,V2,V3) 推測ですが、最後の2バイトは値がリトルエンディアンの形式で格納されているので上位と下位が入れ替わっているのかと。0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[8]親投稿でんぺん DENPEN2015/1/8 23:55あー、なるほどそういうことか<リトルエンディアン 僕も始めビット演算で出せばと思ったんですが、最後の桁が合わなかったんで止めたんですが、そういうことなら納得ですね。0そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[9]親投稿Godot orz_1272015/1/9 0:01もひとつ V$=HEX$(VERSION,8) V1=VAL("&H"+LEFT$(V$,2)) V2=VAL("&H"+MID$(V$,2,2)) V3=VAL("&H"+RIGHT$(V$,2)+MID$(V$,4,2)) ?FORMAT$("%D.%D.%D",V1,V2,V3)1そうだね プレイ済み2017/11/04 00:25:56に取得
プチコン3号 SmileBASIC コミュニティ返信[10]親投稿Иあっキー#くさへび akkisato2015/1/9 16:44ありがとうございます! 「もひとつ」の方は、わかりました!0そうだね プレイ済み2017/11/04 00:25:56に取得