プログラム例1 10 LET R,RND(6) 20 LET R,R+1 30 IF R=1 ?" ":?" * ":? 40 IF R=2 ?"* ":?" ":?" *" 50 IF R=3 ?"* ":?" * ":?" *" 60 IF R=4 ?"* *":?" ":?"* *" 70 IF R=5 ?"* *":?" * ":?"* *" 80 IF R=6 ?"* *":?"* *":?"* *" 90 PRINT R プログラム例2 10 R=RND(6) 20 R=R+1 30 IF R>=2 ?"*"; ELSE ?" "; 35 ?" "; 40 IF R>=4 ?"*" ELSE ?" " 50 IF R=6 ?"*"; ELSE ?" "; 60 IF R%2=1 ?"*"; ELSE ?" "; 70 IF R=6 ?"*" ELSE ?" " 80 IF R>=4 ?"*"; ELSE ?" "; 85 ?" "; 90 IF R>=2 ?"* " ELSE ?" " 100 ? R プログラム例3 10 S=ASC("*"):T=ASC(" ") 20 R=RND(6)+1 30 IF R>1 A=S ELSE A=T 40 IF R>3 B=S ELSE B=T 50 IF R=6 C=S ELSE C=T 60 IF R%2 D=S ELSE D=T 70 ? CHR$(A,T,B) 80 ? CHR$(C,D,C) 90 ? CHR$(B,T,A) 100 ? R プログラム例4 10 S=#2A 20 R=RND(6)+1 30 LET A,S*(R>1) 40 LET B,S*(R>3) 50 LET C,S*(R=6) 60 LET D,S*(R%2) 70 ? CHR$(A,0,B) 80 ? CHR$(C,D,C) 90 ? CHR$(B,0,A) 100 ? R プログラム例5 20 R=RND(6)+1 70 ? CHR$(#2A*(R>1),0,#2A*(R>3)) 80 ? CHR$(#2A*(R=6),#2A*(R%2),#2A*(R=6)) 90 ? CHR$(#2A*(R>3),0,#2A*(R>1)) 100 ? R プログラム例6 10 S=ASC("*")-32 20 R=RND(6)+1 30 X="***" 40 Y="***" 50 Z="***" 60 POKE X,S*(R>1)+32,32,S*(R>3)+32 70 POKE Y,S*(R=6)+32,S*(R%2)+32,S*(R=6)+32 80 POKE Z,S*(R>3)+32,32,S*(R>1)+32 90 ?STR$(X):?STR$(Y):?STR$(Z) 100 ?R
シンプルなサイコロプログラム……から、たくさんのプログラムのパターンを考えるとは、見事! おっしゃるとおり、作るものが同じでも色々な考え方ができるので、プログラムも様々ですよね。色んなパターンを考えてみるというのは、すごく勉強になると思います!