投稿
ゆず#あつあく miyu-03-12-22
IF地獄
9そうだね
プレイ済み
返信[1]
親投稿
i7 2630QM 634218
MID$使おうよ、、、
0そうだね
プレイ済み
返信[2]
親投稿
データ文と連動させてFOR-NEXTで符合するまで繰り返し検索させるか何かいい方法はあると思われます。 あとそのスクショだけだと例えば「G」と「A」を分けた方が短くなる気も。 色々とシェイプアップ出来そうなプログラムに見えますよ。
0そうだね
プレイ済み
返信[3]
親投稿
あ、違う何がしたいのか分かった。 INPUT ANGO$ FOR I=0 TO LEN(ANGO$)-1 ?ASC(MID$(ANGO$,I,1))-64;" "; NEXT これだけで近しい事は出来るかと思われます。
0そうだね
プレイ済み
返信[4]
親投稿
ゆず#あつあく miyu-03-12-22
????? 能無しにはよくわからない…
0そうだね
プレイ済み
返信[5]
親投稿
打ってみれば分かりますよ。 ASCは1文字分の文字を文字コードとして返します。 MID$は文字列から指定した文字を抜きだす。この場合はFOR-NEXTで0(1文字目)からLEN(ANGO$)-1(何文字あるのかを返す関数から1を引く→最後の文字)まで繰り返します。 64を引いてるのは「A」が65を返すのでそこから64を引いて1を出すようにしています。 まぁやってみりゃ分かりますよ。
1そうだね
プレイ済み
返信[6]
親投稿
reji Satoshi.1103
皆さん気づいていると思いますが、その文字列をMID$とASC関数を使ってアスキーコードを求めると一瞬ですよ。アスキーコードというのはそれこそ文字の暗号みたいなやつです。 'まず試しに ? ASC("A") ? ASC("B") 'この調子で・・・ ? ASC("あ")  'とかやってみるといろいろと楽しいですよ。 これの反対呪文でCHR$というのも存在しますよ♪♪♪♪♪♪♪♪♪♪♪
2そうだね
プレイ済み
返信[7]
親投稿
Godot orz_127
>みけらんジェロさん INPUT文で一文字分の音をローマ字で表した文字列として受けて「A」→「1」~「Z」→「26」に、かつ入力が複数文字の場合は間に空白を入れた文字列にして元の文字列変数に代入し直したい様です。 単に英字入力を数値に変換して文字化するのではなく、ローマ字として正しいかとしてのチェックも必要な様です。 >ゆずさん それより、まず、一文字毎に同じIF文を並べるのではなく、サブルーチン化してその処理を呼ぶようにしましょう^^;
1そうだね
プレイ済み
返信[8]
親投稿
>gobotさん 解説どうもです。ローマ字として正しいかどうかは文字列に "AIUEO"と"KSTNHMYRWGZDBP"これが入ってるかどうかをチェックすればよろしいかと。 先にチェックを行って、検索に当たるのならばコード変換して結果として表示する。これだけでかなり短く出来るかと。
1そうだね
プレイ済み
返信[9]
親投稿
Godot orz_127
>みけらんジェロさん それだと「ZZ」も「WW」も正しくなってしまうのでは? と言っても御本人が入力の正当性のチェック迄考慮しているのかは不明です。 それでもOKかも。 とりあえず、ヘボン式の対応は、後での予定とのことです。 今は、日本式の対応のみの様です。 訓令式も対応するのかな? 色々入力チェックや文字列操作のやり方はありますが、余りややこしいとわからなくなってしまいそうな^^; とりあえず、なん文字迄の入力になるのか判りませんが、一文字目でIF文が一式続いて、二文字目で同じIF文が続く、IF文地獄となっているようなのでまずそれを何とかしたいと老婆心。 作りたいものや、やろうとしていることの経緯は前の投稿からの流れをみるとわかるかと。
0そうだね
プレイ済み
返信[10]
親投稿
MIKI ifconfig
連想配列が実装されると簡単になる案件ですね。 ANGO${"A"}="1" ANGO${"BA"}="2 1" ANGO${"BI"}="2 9" 連想配列は「要望リスト」には入っているそうです。
1そうだね
プレイ済み
返信[11]
親投稿
今は連想配列は無理でも変換テーブル式にした方がいいかもですね。 もしくはきちんとした法則性を定義すれば少ない条件文と計算で求められそうですね。
0そうだね
プレイ済み
返信[12]
親投稿
マギー M191246
これまでのみなさんの説明で、 ぼんやりと気付いたかとは思いますけど、 プチコンで扱う文字には、 すべて番号が付けられています。 それが文字コードです。 アルファベットの大文字は、Aから順に 65,66,67…となっています。
0そうだね
プレイ済み
返信[13]
親投稿
れい rei-nntnd
このままでもいいんじゃないかなー コード使うのは汎用性なくなるうえにわかりづらい ヘボン式にも対応するなら例外ばかりになるので、部分文字列使うのも醜くなるし せいぜいDATA命令で配列に読んでループ回す程度までしかやらないほうがいいし、それならif大量にあってもたいして変わらない
1そうだね
プレイ済み
返信[14]
親投稿
ish owlis1
ふとパターン分の「IF文を作る」コードを書いて、別スロットに吐くほうが楽なんではと思ってみたり。それならDATA文にしたほうがいいでしょうかね。
0そうだね
プレイ済み
返信[15]
親投稿
スー thanks_0u0
IFたくさんあってかっこいい!強そう!( `・ω・´ ) プログラムができる皆様が色々難しい話をしていますけれど、結局出来るものはゆずさんのやってるのと大体同じになるので気にしなくても大丈夫です( ´ ▽ ` )ノ
2そうだね
プレイ済み
返信[16]
親投稿
れい rei-nntnd
え?強そう…なのか?? わからん… 俺の知らない裏プチコン界ではソースコード中のifの数でバトルするプログラム対戦ゲーとかあるのかもしれない。
1そうだね
プレイ済み
返信[17]
親投稿
Godot orz_127
よくわからないけど 確かに壁見たいで防御力高そう。
1そうだね
プレイ済み
返信[18]
親投稿
ゆず#あつあく miyu-03-12-22
防御力…wwww
1そうだね
プレイ済み
返信[19]
親投稿
ish owlis1
スカウターで測るのですね。 「私のIF力は53万です」
0そうだね
プレイ済み