1 名前:BASIC mailto:fh [2006/01/09(月) 15:35:00 ] N人分のデータ(氏名、体重、身長、年齢)がDATA文で入力されているプログラムが ある。これを用いて次のプログラムをBASICで作成しなさい 身長が160CM以上で170cm未満の人の名前を表示する
51 名前:49 mailto:sage [2006/01/24(火) 01:29:11 ] >>50 サンクス 助かりました
52 名前:デフォルトの名無しさん [2006/01/24(火) 11:32:45 ] 宿題スレだろ?いじわるなやつばっかだなwってか、おまえらわからないんだろ?あ?俺はしらね
53 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 11:42:55 ] 宿題ってのは自分でやるもんだ。
54 名前:BASI mailto:fh [2006/01/25(水) 11:01:03 ] N人分のデータ(氏名、住所、電話番号)がDATA文で入力されているプログラムが ある。 氏名を入力すると、住所と電話番号が表示されるプログラムをBASICで作成 しなさい 期日が迫っているので、だれか早くこたえてくれ!!
55 名前:デフォルトの名無しさん mailto:sage [2006/01/25(水) 11:17:34 ] 問題は DATA 文が65536 行あるって点だな。
56 名前:デフォルトの名無しさん mailto:sage [2006/01/26(木) 18:29:37 ] >>54 110 N=5 120 INPUT "氏名:";S$ 130 FOR I=1 TO N 140 READ A$,B$,C$ 150 IF S$="氏名" THEN PRINT "住所と電話番号":END 160 NEXT 170 END 180 DATA "鈴木","北海道","AAAA-BB-CCCC" 190 DATA "佐藤","埼玉県","DDD-EEE-FFFF" 200 DATA "伊藤","奈良県","GGG-HHH-IIII" 210 DATA "田中","福岡県","JJJJ-KK-LLLL" 220 DATA "山田","沖縄県","MMMM-NN-OOOO"
57 名前:BASIC mailto:fh [2006/02/04(土) 13:46:27 ] 三角関数の値を0度から180度まで計算するプログラム を作成しなさい(FORーNEXTを用いて) ただし、R=3.14159/180とすると、sin(R*30)でsin30度の 値を求めることができる。 値を
58 名前:デフォルトの名無しさん mailto:sage [2006/02/04(土) 13:59:11 ] >値を sin(R*30) = 0.499999616987256
59 名前:デフォルトの名無しさん [2006/02/04(土) 19:21:23 ] プログラミングの勉強をしようと思って、インターネットを使っていろいろ試してみた。 それで最終的にTinyBASICに落ち着いた。 他にもVB.NET・ActiveBasic・REALbasicがあるのを知っている。 その中からTinyBASICを選んだ俺の選択は正しかったですか?
60 名前:デフォルトの名無しさん mailto:sage [2006/02/05(日) 06:54:57 ] >>57 10 goto 20 20 for i=0 to 180:print sin(3.1415926535897932384626433832795028841971693993751/180*i):next 30 rem sin関数ってラジアンなんですか?
61 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 18:42:41 ] お願いします。 1.SQR(N)を用いて、2から10までの自然数について、 Nとその平方根を表示するプログラムつくれ ヒント:fo 〜 next 2.自然数Nを入力すると、 1+2+3・・・+Nを計算するプログラムつくれ 3.関数sin(X)とsin(180-x)の値を0度から180度まで 表示するプログラムつくれ
62 名前:デフォルトの名無しさん mailto:sage [2006/02/07(火) 19:28:57 ] >>61 仕様の不明な部分については俺のエスパー能力で補完しといてやった。 100 ' 1. 110 FOR N=2 TO 10: PRINT N, SQR(N): NEXT 120 ' 2. 130 INPUT "N=";N: S=0: FOR I=1 TO N: S=S+I: NEXT: PRINT S, N*(N+1)/2 140 ' 3. 150 S=10: FOR D=0 TO 180 STEP S: PRINT D, SIN(D*3.14/180), SIN((180-D)*3.14/180): NEXT
63 名前:61 mailto:sage [2006/02/07(火) 19:53:48 ] >>62 ありがとうございました。
64 名前:デフォルトの名無しさん mailto:sage [2006/02/08(水) 14:39:42 ] >>59 There are a lot of roads that can be chosen. However, the aimed top is one.
65 名前:デフォルトの名無しさん mailto:sage [2006/02/10(金) 02:05:17 ] ぬるぽ
66 名前:デフォルトの名無しさん mailto:sage [2006/02/14(火) 02:02:30 ] _ ┌――─┴┴─――┐ │ セルフサービス .│ └―――┬┬─――┘ ││ ./ ゛゛'゛'゛ / / | \/ \ \ \ノ ガッ はセルフサービスになりました。 使用方法は以下のようになります ∧ ガッ< >_∧ = ()二)V`Д´)<ぬるぽ \ヽ ノ ) ノ(○´ノ (_ノ(__) 尚、使用方法を誤ると、最悪の場合、命を落とす危険性がございますので、 初めてご使用される方は、各都道府県に設置してある専門の窓口に相談下さい。 財団法人 全日本 ぬるぽガッ セルフ振興会
67 名前:BASIC mailto:fh [2006/03/14(火) 20:50:41 ] 予約語ってなんですか?
68 名前:デフォルトの名無しさん mailto:sage [2006/03/14(火) 22:15:10 ] 使用が予約された言葉
69 名前:http://www.vector.co.jp/soft/win95/util/se072729.html mailto:http://msdn2.microsoft.com/ja-jp/library/h2k70f3s.aspx [2006/03/18(土) 20:25:48 ] TextSS のWindowsXP(Professional)64bit化おながいします もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
70 名前:デフォルトの名無しさん [2006/05/16(火) 23:29:02 ] Visual Basicで3つの数の最小公倍数を表示するプログラムをお願いします。
71 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 00:10:27 ] >>70 MsgBox "2, 3, 4の最小公倍数は12です。"
72 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 00:19:36 ] 「3つの数の最小公倍数」のような数を列挙する時、 3 つの数が全て等しい場合なども考慮して良ければ自然数全体になるから、 1 から始めて 1 ずつ増やしながらコンピュータの限界まで数を表示し続ければ 良いでしょう。 もし異なるとすると厄介ですね。 一つの数が 1 でよいなら素数と素数の二乗を除いた全ての数になりますが、 これはちょっと難しいかも。 1 を許さないとするとかなり複雑になりますね。
73 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 21:54:45 ] 四則演算の電卓を作るプログラムなんですけど、ここからわかりません。 ご指摘お願いします。 Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim e As Integer Dim f As Integer Dim g As Integer Dim h As Integer Dim i As Integer Dim j As Integer Dim tasu As Integer Dim hiku As Integer Dim kakeru As Integer Dim waru As Integer
74 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 21:55:41 ] -------------------------- Private Sub Command1_Click() Text1.Text = "0 End Sub -------------------------- Private Sub Command10_Click() Text1.Text = "9" End Sub -------------------------- Private Sub Command11_Click() a = Val(Text1.Text) b = Val(Text1.Text) c = Val(Text1.Text) d = Val(Text1.Text) e = Val(Text1.Text) f = Val(Text1.Text) g = Val(Text1.Text h = Val(Text1.Text i = Val(Text1.Text) j = Val(Text1.Text) Text1.Text = "" End Sub
75 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 21:56:43 ] -------------------------- Private Sub Command12_Click() tasu = Val(Text1.Text) hiku = Val(Text1.Text) kakeru = Val(Text1.Text) waru = Val(Text1.Text) Select Case Val(Text1.Text) Case 1 Select Case Val(Text1.Text) Case 1 tasu = tasu + a Text1.Text = tasu Case 2 tasu = tasu + b Text1.Text = tasu Case 3 tasu = tasu + c Text1.Text = tasu Case 4 tasu = tasu + d Text1.Text = tasu Case 5 tasu = tasu + e Text1.Text = tasu
76 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 21:57:22 ] Case 6 tasu = tasu + f Text1.Text = tasu Case 7 tasu = tasu + g Text1.Text = tasu Case 8 tasu = tasu + h Text1.Text = tasu Case Else tasu = tasu + i Text1.Text = tasu
77 名前:70 [2006/05/19(金) 00:56:45 ] やはり難しいのでしょうかね 弟の高校の課題っぽいんですが、Cで作ったら全然違うとのこと 資料を送ってもらったらBASICっぽいのですが、BASICなんて分からないです… gcmとかlcmで一発で動いてくれるようなコマンドはないのでしょうかね…
78 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 03:36:37 ] >>77 なあなあ、お前完全に>>72 に騙されてるんだが。
79 名前:デフォルトの名無しさん [2006/05/20(土) 11:13:57 ] >>78 誰も書いてくれないので難しいものなのかなと思いましたが そんなわけないですよね。 まあ>>72 は読んですぐスルーしましたけど。
80 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 11:23:59 ] 一応Cで書くとこんな感じになると思うのですが これをVisualBasicに書き直すのがうまくいきません。 #include <stdio.h> int lcm(int x,int y,int z); main() { int a,b,c,d; printf("整数aを入力 "); scanf("%d",&a); printf("整数bを入力 "); scanf("%d",&b); printf("整数cを入力 "); scanf("%d",&c); d = lcm(a,b,c); printf("%d と %d と %d の最小公倍数は %d です。\n",a,b ,c,d); } int lcm(int x,int y,int z) { int answer; answer = x; while(1){ if(answer % y == 0 && answer % z == 0) break; answer += x; } return answer; }
81 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 12:39:42 ] >>80 残りのUI関係は自分でやっとくれ。 Function lcm(ByVal x As Integer, ByVal y As Integer, ByVal z As Integer) As Integer Dim answer As Integer answer = x Do If ((answer Mod y = 0) And (answer Mod z = 0)) Then Exit Do answer = answer + x Loop lcm = answer End Function
82 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 12:43:19 ] おまけ: ユークリッドの互除法を使った場合 Function gcd(ByVal a As Integer, ByVal b As Integer) As Integer Dim c As Integer Do While b <> 0 c = a Mod b a = b b = c Loop gcd = a End Function Function lcm(ByVal a As Integer, ByVal b As Integer) As Integer lcm = a * b / gcd(a, b) End Function Function lcm3(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer) As Integer Dim d As Integer d = lcm(a, b) lcm3 = lcm(c, d) End Function
83 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 15:41:02 ] >>81-82 ありがとうございました。
84 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 23:18:38 ] ピクチャーボックスにrgbを使って上から順に明るい色から暗い色の グラディエーションを表示するプログラムの作成お願いします。
85 名前:デフォルトの名無しさん mailto:sage [2006/05/25(木) 23:59:32 ] 嫌です。
86 名前:デフォルトの名無しさん [2006/05/29(月) 20:32:36 ] 好きな数字を入力して、その1部や全体が連続して居ないか調べて、 もしあればその部分を知らせるプログラムお願いしますm_ _m たとえば、
87 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 20:33:49 ] 「2112」なら、1が連続してるので1を 「19529523」なら952が連続してるので952をといった風です すみません。切れましたorz
88 名前:デフォルトの名無しさん mailto:sage [2006/05/29(月) 21:12:46 ] >>86 (仮称)十進BASIC INPUT s$ LET m=LEN(s$) FOR n=1 TO INT(m/2) FOR i=1 TO m-n+1 IF s$(i:i+n-1) = s$(i+n:i+2*n-1) THEN PRINT s$(i:i+n-1) END IF NEXT i NEXT n END
89 名前:86 mailto:sage [2006/05/29(月) 23:02:07 ] >>88 ありがとうございます
90 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 15:39:03 ] >>50 腹抱えてワロタ
91 名前:デフォルトの名無しさん mailto:sage [2006/06/15(木) 22:56:25 ] プログラムに時間の間を与えるにはどうすればいいんでしょうか? たとえば実行してから1秒後に"1秒経過しました"と表示させる場合とか。
92 名前:デフォルトの名無しさん mailto:sage [2006/06/16(金) 00:20:11 ] >>91 つ TIME$
93 名前:デフォルトの名無しさん mailto:sage [2006/06/16(金) 18:00:01 ] >>91 1 sleep(1000) 2 print "1秒経過しました"
94 名前:91 mailto:sage [2006/06/17(土) 00:14:03 ] >>93 サーンクス!!
95 名前:デフォルトの名無しさん mailto:sage [2006/06/18(日) 16:40:09 ] beep音て変えれないの?
96 名前:デフォルトの名無しさん mailto:sage [2006/06/18(日) 16:52:14 ] >>95 つ play
97 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 00:32:40 ] BEEP音でPCM再生とか昔あったなぁ
98 名前:デフォルトの名無しさん [2006/06/19(月) 01:55:56 ] a=FIX(RND(1)*10):b=FIX(RND(1)*10) c=a+b PRINT c のときのcの一桁目の数だけPRINTするにはどうすればいいんでしょうか? 文字列じゃないんでRIGHT$ではエラーになってしまいます・・・
99 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 20:06:10 ] >>98 PRINT (c MOD 10) で出来るはず。
100 名前:デフォルトの名無しさん [2006/06/21(水) 09:03:00 ] 乱数を使用し、サイコロを千回振り、1から6までの出現率を求めるプログラムの作成 十進BASICで頼む10時まで…
101 名前:デフォルトの名無しさん [2006/06/21(水) 09:11:18 ] 180から470の範囲に入る乱数を発生させ、 250が発生したときに乱数の発生を止め、 範囲に入ったものの数、合計、平均、最大値、最小値を求めるプログラムの作成 これも頼む…
102 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 10:56:57 ] >>100-101 もう答えても遅いのか? でも100はなんとなくわかるが、101の「180から470の乱数を発生」 がわからんかもしれん。 1000までの乱数で180〜470以外を無視する感じでいいんだろうか。
103 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 12:13:45 ] >>102 もう終わった… 中途半端な感じで提出してしまったが… ちなみに>>100 は DIM A(6) RANDOMIZE FOR J=1 TO 1000 LET S=INT(RND*6)+1 IF S=1 THEN LET A(1)=A(1)+1 IF S=2 THEN LET A(2)=A(2)+1 IF S=3 THEN LET A(3)=A(3)+1 IF S=4 THEN LET A(4)=A(4)+1 IF S=5 THEN LET A(5)=A(5)+1 IF S=6 THEN LET A(6)=A(6)+1 NEXT J FOR J=1 TO 6 PRINT J;" ";A(J) NEXT J END で
104 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 12:16:13 ] >>101 は DIM A(500) LET N=1 RANDOMIZE DO LET P=INT(RND*500) IF P=250 THEN EXIT DO IF P>180 AND P<470 THEN PRINT P;" "; LET A(N)=P LET N=N+1 LET S=S+P END IF LOOP LET N=N-1 LET K=1 FOR J=2 TO N IF A(J)>A(K) THEN LET K=J NEXT J LET MAX=A(K) LET K=1 FOR J=2 TO N IF A(J)<A(K) THEN LET K=J NEXT J LET MIN=A(K) LET MEAN=S/N
105 名前:デフォルトの名無しさん mailto:sage [2006/06/21(水) 12:17:43 ] PRINT "個数";N PRINT "合計";S PRINT "最大値";MAX PRINT "最小値";MIN PRINT "平均"; PRINT USING"#####.#":MEAN END らしい…分からんてorz
106 名前:デフォルトの名無しさん mailto:sage [2006/06/24(土) 00:10:54 ] 同じ行内で文字色を変えるにはどうすればいいんですか? たとえば PRINT "赤""青" の赤を赤色、青を青色にする感じです。 あー、ホントだれか頼むよ。
107 名前:デフォルトの名無しさん mailto:sage [2006/06/24(土) 00:26:44 ] 環境がわからんが、 PRINT "赤"; 表示色を変える処理(COLOR 7とか) PRINT "青" じゃ駄目?
108 名前:デフォルトの名無しさん mailto:sage [2006/06/24(土) 10:57:26 ] >>107 それだと 赤 青 と表示されるけど、俺がしたいのは 赤青 と表示させるやつなのね…。 やっぱ無理なのかなー。 ちなみに俺の使ってるのは結構古い ActiveBasic ver2.56です。 授業で配布されたヤツだしやっぱ新しいのにしようかなぁ…。
109 名前:デフォルトの名無しさん mailto:sage [2006/06/24(土) 12:38:21 ] 100 FOR I=0 TO 7 110 COLOR I: PRINT MID$("イロイッカイズツ",I*2+1,2); 120 NEXT I 130 PRINT 140 COLOR 7
110 名前:107 mailto:sage [2006/06/24(土) 15:46:08 ] ActiveBasicってセミコロン無視されるの?"赤青"って1行にならない? ↓ココ PRINT "赤";
111 名前:デフォルトの名無しさん mailto:sage [2006/06/24(土) 21:10:06 ] なるけど>>106 が理解していないだけ。
112 名前:106 mailto:sage [2006/06/25(日) 08:22:00 ] >>110 セミコロンの正しい使い方を学んだ。 トンクス!
113 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 02:43:55 ] 改行の入った文字列はどうやって読み込ませればいいんでしょうか? 例えば A$="Λ Λ" "(゚Д゚)" といった風です。 やはり変数を2つ使って2行に分けるしかないんですか?
114 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 07:26:27 ] >>113 10 A$="Λ Λ"+CHR$(13)+CHR$(10)+"(゚Д゚)" 20 PRINT A$
115 名前:113 mailto:sage [2006/06/29(木) 17:52:39 ] >>114 ありがとうございました!助かりました!
116 名前:デフォルトの名無しさん mailto:sage [2006/07/03(月) 10:16:55 ] 変数の色の指定とかってできないんですか? A$=赤 みたいな感じです…
117 名前:デフォルトの名無しさん [2006/07/04(火) 23:05:15 ] 課題なんです。 何か動くのを作れってゆう課題なんです。 そこで、何かお願いします!
118 名前:デフォルトの名無しさん mailto:sage [2006/07/04(火) 23:08:49 ] 何で21世紀にもなってBASICの課題が存在してるの?
119 名前:デフォルトの名無しさん mailto:sage [2006/07/04(火) 23:10:39 ] >>117 10 print "ばか "; 20 goto 10 とかで大丈夫かな?
120 名前:117 [2006/07/04(火) 23:19:28 ] >>118 あるみたいです。 >>119 大丈夫じゃないですね・・・ 関数をグラフィックにして簡単な動画を。
121 名前:デフォルトの名無しさん mailto:sage [2006/07/04(火) 23:30:30 ] 処理系も指定せずに関数をグラフィックにしてなんて言われてもな
122 名前:デフォルトの名無しさん mailto:sage [2006/07/04(火) 23:39:23 ] >>121 117 は問題をあと5,6 回に分けて小出しにして来ると思うから、 しばらくは静観してた方がいいよ。
123 名前:117 [2006/07/05(水) 00:12:28 ] 処理系はおまかせするよ。 花火が打ちあがる様とかゴルフの球がカップに入るのとかを作ったりしてるヤシもいる。
124 名前:117 [2006/07/05(水) 00:20:47 ] スマソ 処理系→(仮称)十進BASIC
125 名前:117 [2006/07/05(水) 00:23:49 ] >>122 確かに小出しにしてる俺ガイル
126 名前:117 [2006/07/05(水) 18:17:17 ] 誰かおながい
127 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 20:22:55 ] あと二個くらい条件が増えるのかなぁ……
128 名前:117 [2006/07/05(水) 20:54:29 ] >>127 もう増えないです。 簡単なのでいいのでどうかおながいします・・・
129 名前:デフォルトの名無しさん mailto:sage [2006/07/05(水) 21:06:08 ] じゃあ、処理系 FBASIC ね 10 symbol(rnd*10,rnd*10),"BAKA",10,10,rnd*7 20 goto 10 もう条件は増えないからこれでおしまいだね。
130 名前:117 [2006/07/06(木) 02:36:11 ] (仮称)十進BASIC SET WINDOW 0,10,-1,10 SET POINT STYLE 4 LET t=0 LET dx=0 LET x=10 LET dt=0.0125 LET g=-9.8 LET f=1 DO WHILE t<10 LET t=t+dt LET ox=x LET odx=dx LET x=ox+odx*dt LET dx=odx+g*dt PRINT "x=";x;"dx=";dx CLEAR PLOT POINTS : t,x IF x<0 AND f=1 THEN LET f=0 LET dx=-0.6*dx END IF IF x>0 AND f=0 THEN LET f=1 loop END こんな感じのに手を加えてみてください。
131 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 03:52:12 ] >>127 の言ったとおりだな。次は「XX日までにお願いします」とかかな?
132 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 12:58:10 ] basicでクイズゲームみたいなの作りたいんですけど、 input文を使いつつ時間制限を設けるにはどうすれば? inputが入ると(入力画面になると)そこで命令がとまってしまうわけですが、 やはりbasicでは無理でしょうか?
133 名前:デフォルトの名無しさん mailto:sage [2006/07/06(木) 14:15:06 ] on time gosub が使える BASIC があると思うので、その BASIC を使いなさい。
134 名前:デフォルトの名無しさん [2006/07/09(日) 18:31:48 ] >>132 INKEY$を使えばできるよ
135 名前:デフォルトの名無しさん mailto:sage [2006/07/12(水) 13:41:26 ] >>134 あ、できました! どうもどうも
136 名前:デフォルトの名無しさん mailto:sage [2006/07/18(火) 21:43:05 ] waveファイルをリピート再生したいんですけど mcisound "open "+chr$(34)+"D:\test.wav"+chr$(34)+" type waveaudio alias test mcisound "play test notify",at Do if at=1 then mcisound "stop test":mcisound "seek test to start":mcisound "play test notify",at:at=0: Loop ではリピートに間ができてしまいます… なんとかならないでしょうか?
137 名前:名無しさん [2006/07/23(日) 13:55:30 ] 各桁の数字に、桁数乗したものの和が、 元の数字になるものを求める。こんなものをBASICで書いてもらえませんでしょうか?? 1^3+5^3+3^3=153(←こんなようなの) よろしくお願いします!!
138 名前:デフォルトの名無しさん mailto:age [2006/07/23(日) 16:40:04 ] 誰かおながい
139 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 17:38:09 ] >>137 110 I0=0:FOR I1=1 TO 9:FOR I3=1 TO 9:FOR I5=1 TO 9:FOR I2=1 TO 9 120 FOR I4=1 TO 9:FOR I8=1 TO 9 130 I6=I8^I5+I4^I3+I2^I1:I7=100*I8+10*I4+I2 140 IF I7=I6 THEN I0=I0+1:PRINT I0,I8;"^";I5;"+";I4;"^";I3;"+";I2;"^";I1;"=";I6 150 NEXT:NEXT:NEXT:NEXT:NEXT:NEXT 160 END
140 名前:名無しさん mailto:age [2006/07/23(日) 22:11:08 ] >>139 ありがとうございます! 桁数を自分で指定して計算させられるようにできませんでしょうか?? 3桁以外も計算してみたいので。。。 わがままいって申し訳ございません・・・ よろしくお願いします!
141 名前:デフォルトの名無しさん mailto:sage [2006/07/23(日) 22:39:12 ] >>140 求めたい桁数に合わせて自分で改造すれ
142 名前:名無しさん mailto:age [2006/07/23(日) 22:42:49 ] >>139 これだと、なんか余計なものまで表示されてるな。。。 >>137 の言っているのは、 370とか、407みたいな、3桁の数の時はそれぞれの桁の数を3乗するってことだろ?? 370=3^3+7^3+0^3とか。 ってことは>>139 だとちょっと余分なものまで表示されてるぞ。
143 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 00:14:24 ] ベキ乗の指数を桁数に合わせるなら DIM n(11) MAT n = ZER INPUT keta IF keta<0 OR 10<keta THEN STOP LET n(keta) = 1 DO FOR i=1 TO keta+1 LET n(i) = n(i) + 1 IF n(i) >= 10 THEN LET n(i)=0 ELSE EXIT FOR NEXT i IF n(keta+1)<>0 THEN EXIT DO LET x = 0 LET y = 0 FOR i=1 TO keta LET x = x + n(i)^keta LET y = y + n(i)*(10^(i-1)) NEXT i IF x=y THEN FOR i=keta TO 2 STEP -1 PRINT "("; n(i); "^"; keta;") + "; NEXT i PRINT "("; n(1); "^"; keta; ") ="; x END IF LOOP END 昔のM$系ではループ処理がめどいので十進BASICでやった。 つーか、質問する時はどの処理系でやるのかまで指定しろよ。 BASICったって色々あるし、処理系によって文法も違うんだから。
144 名前:名無しさん mailto:age [2006/07/24(月) 01:43:18 ] >>143 さん ありがとうございます! すみません。処理系を書くのをわすれていました。 当方は、UBASICを使用しておりまして、少し十進BASICとは異なるようです。。。 もしお時間がございましたら、そちらでも書いていただけたら幸いです。
145 名前:名無しさん mailto:age [2006/07/24(月) 15:10:40 ] >>143 さすがに桁が多くなると時間かかるなw
146 名前:デフォルトの名無しさん mailto:sage [2006/07/24(月) 22:00:55 ] >>144 さすがにあんたのためだけにソフト入れて試してる暇はない。 大して特殊なことはしてないから自分で直せ。 MAT n = ZER → FOR I=1 TO 11: N(I)=0: NEXT DO 〜 LOOP → WHILE 1 〜 WEND または GOTO を使った無限ループ EXIT FOR, EXIT DO → それぞれ FORループ, DO〜LOOPループを抜けるGOTO IF 〜 END IF → 1行の IF文にまとめる UBASICはどうか知らんが、これで大抵の処理系で実行できるだろう。
147 名前:デフォルトの名無しさん [2006/08/03(木) 18:39:50 ] Format関数で通貨記号付きで、3桁ごとのカンマ区切り、且つ小数点以下切捨てで変数を出力する、Format関数を書け VisualBasicの課題でこれだけわからないのでお願いします。
148 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 22:54:42 ] SQL文なら >>1 は、こんな感じ。 SELECT [Name] FROM DataTable WHERE [Height] >= 160 AND [Height] < 170
149 名前:デフォルトの名無しさん mailto:sage [2006/08/12(土) 11:06:43 ] あとは SQL を BASIC で実装すればおしまいだね。
150 名前:デフォルトの名無しさん [2006/09/30(土) 13:48:49 ] サイコロを何回も投げて次々出目を入力した時に各自の出た回数を表示するプログラムを作れ ただし入力終了の合図は0を入力した時とする 一晩頑張りましたがdim使えの一言で突っ返されました 習い始めで全く理解出来ません…誰かお願いします ↓これ出して突っ返されました 10 input "サイコロの目=",d 20 if d=0 goto 110 30 if d=1 then a=a+1 40 if d=2 then b=b+1 50 if d=3 then c=c+1 60 if d=4 then e=e+1 70 if d=5 then f=f+1 80 if d=6 then g=g+1 90 if d>6 then print "無効な数値" 100 goto 10 110 print "1の目",a,"回 2の目",b,"回 3の目",c,"回 4の目",e,"回 5の目",f,"回 6の目",g,"回" 120 end
151 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 14:52:12 ] basicは完全に忘れちゃったので、概要だけ dim dice(6) loop: input "サイコロの目=",d id d=0 then goto exit if 1<=d and d<=6 then dice(d)=dice(d)+1: goto loop print "無効な数値" goto loop exit: for i=1 to 6 print i;"の目=";dice(i) next こんな感じ