Nicotto Town ニコッとタウン

スマホ版あります♪



つぶやきの答え

わざわざつぶやきに反応してくださって、どうもありがとうございました^^


かなりむか~しのBASICです。


フリーウェアのMBASIC86とか、ROMフリーで動くFM-7エミュレータとか、そんなの使ってます。
Windows上でのアプリ開発はどうするのかって? そんなの作らないもーん(作れません(ヾノ・∀・`)) 


VisualBasicもフリーで使えるみたいですけど、うちのパソコンだと重すぎます。
そもそもフォームとかイベントとか(´・д・`)ゞ??だし、なんか画面がごちゃごちゃしてて(;´∀`)だし・・・
でも2.0は持ってたんだよ。



FOR I=0 TO LEN("4F6B6667747A76285D79827A")/2-1
PRINT CHR$  (VAL("&H"+MID$("4F6B6667747A76285D79827A",I*2+1,2))-I-1);
NEXT I



下の方に解説・答えを入れておきました・・・
興味の無い方、自力で考えたい方は飛ばしてください。




















・LENは( )の中の文字数を数える関数。
 24文字あるので、FOR I=0 TO 24/2-1 = 11。なので、FOR I=0 TO 11と同じ。


・FOR~NEXTは、繰り返し命令。
 上の例では、0から11までの12回。
 変数Iの値を1づつ増やしながら、FOR~NEXTの間(2行目)を12回実行する。


・MID$(A,B,C)は、文字を取り出す関数。Aの文章の、B文字目から、C文字取り出す。
 MID$("ABCDEFG",1,2)なら"AB"。 MID$("ABCDEFG",4,3)なら"DEF"

 I=0 のとき、MID$("4F6B6667~",0*2+1,2)は"4F"
 I=1 のとき、MID$("4F6B6667~",1*2+1,2)は"6B"
 つまり2行目で、"4F","6B","66"と2文字づつ区切っている。


・VALは( )の中の文字を数値として扱う関数。
 文字の足し算"12"+"13"="1213"、数字の足し算"12"+"13"="25"の違い。


・CHR$は( )の中の数値を文字として返す関数。いわゆるアスキーコード。
 例えば、CHR$(65)なら"A"、CHR$(66)なら"B"
 ( )の中に文字は入れられないので、上の例ではVAL関数で数値に変換している。


なので、CHR$(&H4F-I-1) = Iは0なので &H4F-1 = CHR$(&H4E) = N
     CHR$(&H6B-I-1) = Iは1     &H6B-2 = CHR$(&H69) = i
     CHR$(&H66-I-1) = Iは2     &H66-3 = CHR$(&H63) = c
     CHR$(&H67-I-1) = Iは3     &H67-4 = CHR$(&H63) = c...


答え "Niccoto Town"とつぶやいていました。

#日記広場:パソコン/インターネット

アバター
2009/06/07 22:17
初めまして。
分かり易い解説付きで、参考になりました。
本当に、かすみさんすっご~いです。

言語は違いますが、自分もプログラム経験があります。
その昔、MSX-BASICとかDisk-BASICとか勉強したけど、自分は挫折でした。
関数が、なかなか覚えられないです。

BASICって、自分が会社でやっていた制御言語(Control Language)のプログラムに
文法がよく似ています。だから、意味が理解し易かったのかもです。

Disk-BASICのプログラムも、組まれるのですか?
アバター
2009/06/01 19:53
Σ( ̄ロ ̄|||まったくわからない。

かすみさんすごい!
アバター
2009/06/01 18:52
かすみさん、こんにちわ!

PCにお詳しいようで!(・o・ノ)ノ
ブラインドタッチもお手の物なのでしょうね☆彡
こういうお仕事をされてるのでしょうか?
アバター
2009/06/01 13:05
そもそも・・・異次元な感じで・・・(o゚ェ゚o)?
かすみさんって・・・なにもの?
アバター
2009/06/01 00:52
BASICなんて懐かしいo(^-^)o
おいらは昔よく遊んでたよ
N60-BASICとかN88-BASICとかN88-BASIC(86)とか…
アセンブラ(Z80、86)もかじったけどw
アバター
2009/05/31 23:58
 解読を試みましたが、できませんでした(>_<)
 16進数か、バイナリーかと思ったので。
 なるほど、・・・すご~い。
 BASICとかC言語もすこしはかじったんですけどね~
 もう、忘れました。
アバター
2009/05/31 22:53
昔勉強して、そこで終わっちゃったので今ではあまり役に立たない知識ばかりです・・・
長い変数名とか馴染めないし・・・

見よう見真似で作った暗号出力プログラム。
でも出力した文字をコピー出来ない・・・Σ(゚д゚;)

Dim intI, strA, strOut(1024)
strA = "Niccoto Town"

for intI = 1 to Len(strA)
strOut(intI) = Hex( Asc( Mid(strA, intI, 1)) + intI)
next
MsgBox(Join(strOut, ""))
アバター
2009/05/31 22:39
ああああ・・・・ 頭が考えるのを拒否してる~!!! 

°。゜(# ̄ ▽. ̄#) ボッケー°。
アバター
2009/05/31 21:45
う・・・・すごすぎる・・
全然、わかりません。あはは・・・
アバター
2009/05/31 21:32
(。◔‸◔。)ン~~~!わかりません
アバター
2009/05/31 20:54
MBASIC86? 知らなかった(^_^;)。
てか、FM-7がさらっと出てくる件

VBScript、実は全然知らない(汗)。
Text形式で貼り付けて拡張子をvbsに変更。ダブルクリック。

Dim intI, strA, strOut(1024)
strA = "4F6B6667747A76285D79827A"

for intI = 0 to Len(strA) / 2 - 1
strOut(intI) = Chr(Cint("&h" + Mid(strA, intI * 2 + 1, 2)) - intI - 1)
next
MsgBox(Join(strOut, ""))
アバター
2009/05/31 20:28
わー。。。かすみさんてすごいひとだったのねー^^;;;

アバター
2009/05/31 19:46
ヽ(@◇@;)ノ グルグル
アバター
2009/05/31 18:46
(*゚Д゚)
アバター
2009/05/31 13:09
何と!そういう事だったのですね!
かすみさんかっけー!
アバター
2009/05/31 13:01
ひやぁぁぁ!
すごぃwwww



Copyright © 2026 SMILE-LAB Co., Ltd. All Rights Reserved.