1 名前:BASIC mailto:fh [2006/01/09(月) 15:35:00 ] N人分のデータ(氏名、体重、身長、年齢)がDATA文で入力されているプログラムが ある。これを用いて次のプログラムをBASICで作成しなさい 身長が160CM以上で170cm未満の人の名前を表示する
38 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 06:40:35 ] >>37 テキストで打ち込め。 画像なんか一々見ていられるか。 お前の手下のいるスレじゃないんだ。 力を貸してくれる人に対して、閲覧の手間くらいは省こうという 気はないのか? 何でもかんでも、人任せにするんじゃない。
39 名前:デフォルトの名無しさん [2006/01/23(月) 09:35:36 ] 他力本願もここまでくると天晴れだなw
40 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 10:54:16 ] >>38 Basic課題9 (2005/11/24) 1.配列に以下の値を代入して以下の計算をしなさい。 111+112+113+114+115+116+117+118+119+120+121=? 配列に代入した値も表示する。プログラムと結果を提出する。 2.配列に適当な値(15〜19個ぐらい)を代入(読み込む)しその値を出力 する。総和、平均、標準偏差を求め出力しなさい。配列内の値を小さい 順に並べて出力しなさい。
41 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 11:02:03 ] Basic課題11(2005/12/08) 1.5行5列の行列[A]を作成し、値を表示しなさい。 行列に見えるように表示する。 データは「read文」を使用して代入する。 5行5列の行列[A]の転置行列を表示しなさい。 プログラムと結果を提出する。 2.2次元配列を使用して以下の計算をしなさい。 プログラムと結果を提出する。 (図は元の図を参照してください) ――――――――――――――→ 01 02 03 04 05 06 07 08 09 10|055 | 11 12 13 14 15 16 17 18 19 20|155 ↓ 21 : : 91 --------------------------- 460 470 ・・・ 550|5050↓
42 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 11:03:28 ] 課題11図省略 ttp://www.imgup.org/iup151447.gif ttp://www.imgup.org/iup151450.gif を参照(全部で3つ)
43 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 11:06:38 ] Basic課題12(2005/1/11) 問 以下の処理を1つのプログラムで記述します。プログラムは1つです。 1.5行5列の行列[A]にデータを入力し、表示しなさい。 データは不規則な値とする。 2.行列[A]の転置行列を行列[B]に代入し表示しなさい。 3.行列[A]+行列[B]の計算をして表示しなさい。 4.行列[A]−行列[B]の計算をして表示しなさい。 5.行列[A]*行列[B]の計算をして表示しなさい。 プログラムと結果を提出します。
44 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 11:08:13 ] 秋田。あとよろしく
45 名前:デフォルトの名無しさん [2006/01/23(月) 11:44:35 ] せめて どこまでできたのか、何が分からないのか、 を書けよ。 ほんとに全部まる投げか?
46 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 15:07:27 ] >>40 1 5 dim a$(1) 10 a$(0)=" 111+112+113+114+115+116+117+118+119+120+121=?" 20 print a$(0) 30 print 111+112+113+114+115+116+117+118+119+120+121 2 5 dim a$(1) 10 a$(0)="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0" 20 print a$(0) 30 print 0 40 print 0 50 print 0 60 print a$(0)
47 名前:デフォルトの名無しさん mailto:sage [2006/01/23(月) 19:33:09 ] ごめんなさい・・・(;ω;) 全然わからないんです・・・orz (・ー・)オワッタナ・・・ 皆さん、ご迷惑をおかけして申し訳ございませんでした・・・(´つω-`)
48 名前:BASIC mailto:fh [2006/01/23(月) 22:05:08 ] N人分のデータ(氏名、住所、電話番号)がDATA文で入力されているプログラムが ある。 氏名を入力すると、住所と電話番号が表示されるプログラムをBASICで作成 しなさい
49 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 00:16:13 ] 良スレハケーン Microsoft Visual Studio .NETなんですが よくある3×3マスの○×ゲームのソースをお願いできないでしょうか
50 名前:デフォルトの名無しさん mailto:sage [2006/01/24(火) 01:11:58 ] >>49 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Debug.WriteLine("×|○|○") Debug.WriteLine("--+--+--") Debug.WriteLine("○|×| ") Debug.WriteLine("--+--+--") Debug.WriteLine(" | |×") Debug.WriteLine("俺の勝ち") End End Sub
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 こんな感じ
152 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 15:11:30 ] 同じ様なデータに番号つけて扱うのが配列。 例えば a という配列があったとしたら a の 1 番目の要素は a(1) a の 2 番目の要素は a(2) a の 3 番目の要素は a(3) って感じ。 で、ここからポイント。 ★配列の何番目を使いたいかを示す番号(添字という)★ ★には、変数を使うことが出来る。。。★ 例えば a1, a2, a3 という変数を作って d 番目の変数を使いたいからって ad なんてやってもそれは別の変数になってしまう。 ところが配列の場合は a(d) と書けば「a という配列の d 番目」を使える。 dim 命令はそんな配列を使うために使うのさ。
153 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 15:43:52 ] >>151 サンクス!そのままだと構文エラー出まくるんで何とか意味理解してみる… >>152 なるほど…配列からバラバラに引き出せるとはなんと便利な…
154 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 16:03:15 ] >>151-152 出来ました! 配列使うとホントに無駄が無いんですね…ありがとうございました!
155 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 16:09:36 ] >>154 考え方が逆でして、今回は無駄があるところを配列を使って纏められただけです なので有効性を考えずに配列を使うのはバカの一つ覚えになりますぉ
156 名前:句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx. mailto:sage [2006/09/30(土) 16:35:45 ] >>155
157 名前:デフォルトの名無しさん [2006/10/23(月) 10:10:56 ] ファイルダイアログみたいなのでファイル指定して、読み込みたいのですが だれか御教授ください。 n=FreeFile() i=0 FileOpen(n,"data.dat",OpenMode.Input) Do While Not EOF(n) input(n,a(i)) i +=1 loop FileClose(n) としたとき、ファイルを指定("data.dat")するのではなくて、ファイルダイアログで指定したいのです。 おねがいします。 vb.netです。
158 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 10:14:20 ] dobon.net/vb/dotnet/index.html で色々探してみて
159 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 08:59:57 ] ↑ ありがとうありがとうありがとう ほんまありがとう めちゃ助かった!!!
160 名前:デフォルトの名無しさん mailto:age [2006/10/30(月) 20:48:24 ] VB.netについてです。 ボタン1を押すと”別ウィンドウに”グラフが描画されるようにしたいのですが、どなたか御教授ください。 Form1にはボタンがあって、それを押すと別のフォームが出現して、そこにあるpictureBoxにグラフが出力できるようにしたいのです。
161 名前:デフォルトの名無しさん [2006/11/10(金) 16:01:33 ] F-BASICのエラーなんですが ビルド方法が指定されていません。 て出るんですけどどうすれば解決されるんでしょうか
162 名前:なぽ [2006/11/29(水) 04:55:15 ] 4行4列の行列AとBの積の計算のプログラムをおそえてくださーーーい
163 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 23:45:00 ] >>162 MAT C = A * B
164 名前:デフォルトの名無しさん [2006/11/30(木) 19:26:32 ] 問.2次元配列を使用して以下の計算をしなさい。 行の和→ 01 02 03 04 05 06 07 08 09 10 55 列 11 12 13 14 15 16 17 18 19 20 155 ←和は出せたのですが、 の ・ ここに表示させる方法が 和 ・ 分かりません。 ↓ ・ 91 92 93 94 95 96 97 98 99 100 955 460 470 ・・・・・ 5050 01 02 03 04 05 06 07 08 09 10 0 11 12 13 14 15 16 17 18 19 20 10 ・ 29 ←これは全然分かりません。 ・ 81 ・ 91 92 93 94 95 96 97 98 99 100 414 0 91 173 ・・・・・ 505 ↑右斜め下方向の和 どうかお願いしますm(_ _)m
165 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 15:48:01 ] >>164 いやもう帰っていいよ ほんとに
166 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 01:39:48 ] >>164 10 DIM A(11,11):N=10:FOR I=1TO N:FOR J=1TO N: A(I,J)=(I-1)*N+J:NEXT:NEXT:Z=0:FOR I=1TO N:X=0:Y=0: 20 FOR J=1TO N:X=X+A(I,J):Y=Y+A(J,I):NEXT:A(I,N+1)=X:A(N+1,I)=Y:Z=Z+X:NEXT:A(N+1,N+1)=Z:FOR I=1TO N+1: 30 FOR J=1TO N+1:PRINT USING" ####";A(I,J);:NEXT:PRINT:NEXT:FOR I=1 TO N+1:X=0:Y=0:FOR J=I TO N: 40 X=X+A(J,J-I+1):Y=Y+A(J-I+1,J):NEXT:A(N+1,N-I+2)=X:A(N-I+2,N+1)=Y:NEXT:FOR I=1TO N+1:FOR J=1TO N+1: 50 PRINT USING" ####";A(I,J);:NEXT:PRINT:NEXT
167 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 00:10:16 ] >>166 ありがとうございます! 助かりました。
168 名前:何卒よろしくお願いします [2006/12/06(水) 09:32:13 ] 標準正規分布を使った仕入れ最適問題です。(Windows板N88BASIC) 1個40円で仕入れ100円で売る。売れ残った物は1個15円で引き取ってもらう。 統計によれば1日に売れる物は平均800標準偏差120の正規分布に従っている。 1日にいくつ仕入れれば利益が最大になるか。 プログラムの一部を下に書きます。何処か写し間違えがあるかもしれませんがよろしくお願いします。 (s:仕入れtotal:粗利計k:客数a:余りの部数) for s=600 to 1000 step 20 total=0 for day=1 to 500 gosub *nomal(所定の正規分布乱数を作ってrに入れて戻る) k=int(120*r+80) if s<=k then (何処かの行番号) arari=100*s-40*s else a=s-k arari=100*k-40*s+15*a tatal=total+arari next day
169 名前:デフォルトの名無しさん mailto:sage [2006/12/06(水) 10:34:52 ] >>168 tatalとはなでふおどろおどろしきこと哉
170 名前:デフォルトの名無しさん [2006/12/06(水) 12:54:45 ] >>169 すいません、言ってる事がわかりません><
171 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 07:33:16 ] > 何処か写し間違えがあるかもしれませんが > tatal=total+arari > tatal=total+arari > tatal=total+arari
172 名前:デフォルトの名無しさん [2006/12/07(木) 09:53:38 ] >>171 その通りです。誰か助けてください><
173 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 01:47:00 ] >>168 XT=0:XS=0 FOR S=600 TO 1000 STEP 20 TOTAL=0: KT=0 FOR DAY=1 TO 500 GOSUB *NOMAL K=INT(120*R+800) IF S<=K THEN ARARI=100*S-40*S ELSE A=S-K ARARI=100*K-40*S+15*A END IF TOTAL=TOTAL+ARARI: KT=KT+K NEXT DAY IF TOTAL>XT THEN XT=TOTAL:XS=S PRINT "仕入れ/日: ";S,"粗利計:";TOTAL,"客数平均:";KT/500 NEXT S PRINT "利益が最大になったのは";XS;"個仕入れたとき" END *NOMAL R=(RND+RND+RND+RND+RND+RND+RND+RND+RND+RND+RND+RND)-6 RETURN
174 名前:デフォルトの名無しさん [2006/12/08(金) 01:53:23 ] プログラミング自体全然分かってないです(>_<) それでも課題はやらなきゃいけない・・・・ 誰か助けてください その@ 『入力された3桁の自然数aに対し、aの一の位、十の位、 百の位の和Sと、Sを3で割ったときの余りを表示する プログラムを作れ』 そのA 『自然数nに対し、n以外の正の約数の和がnに等しいと き、nを完全数という。10,000以下の全ての完全数を、 プログラムを作って求めよ』 教えてくださいお願いします!!
175 名前:Nw [2006/12/08(金) 02:15:02 ] BASICで書いて頂けませんか? 10: 20: ってな感じで・・ 1.数A,B,Cを入力してA>BかつB>CならA*B*Cの計算を、A>BかつB≦Cなら A+B+Cの値を、A≦BならA/B+Cの値を求めるプログラム。 2.1+2+3+・・・・+X の合計が初めて200を超える X の値を表示するプログラム。 3.1,3,5,7,9,・・・・, X までの和を求め、和が1000を超えない X の最大値を表示するプログラム。 4.X,Yを入力し、X=1でY=2なら"A"と、X=3でY=4なら"B"と、X=5でY=6なら"C"と表示し、 上記以外の数字の組み合わせを入れたときはプログラムの最初に戻るプログラム。 5.2つの数XとYを入力し、両方マイナスのときは√(X*Y)を、どちらか一方がプラスのときはX*Yを、 両方プラスのときはX/Yのそれぞれの値を表示するプログラム。 6.自然数MからNmでの和と平均を求めるプログラム。(NとMの値は入力するものとし、M<Nとする) S=M+・・・・+N 7.Y=3X^3 +2X^2 +X +15 において、Xの値を-10から10まで、0.5刻みで変化させてYの値を求めるプログラム。 8.AAB+BB=BAA つまり、(100×A+10×A+B)+(10×B×B)=(100×B+10×A+A)となるAとBを 求めるプログラム。(A,Bは一桁の整数) 9.ABA×B=BCBつまり(100×A+10×B+A)×B=(100×B+10×C+B)となるA,B,Cを求めるプログラム。 10.三角形の辺A,B,Cにおいて、それぞれを1から20まで変化させたとき、直角三角形となる組み合わせをすべて 求めるプログラム。 11.Y=6X^2 - 5X - 9 の式において、-10≦X≦10 の範囲でYの最大値を求めるプログラム。 (Xは、0.2刻みとする) 自分でやるべきなのですが、分からなくて・・ 早急に解答が欲しいのですが、教えて頂ける方がおられましたら どうか宜しくお願いします
176 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 02:56:23 ] >>174 >>174 >その@ 100 INPUT "N";N 110 W=(N MOD 10)+(INT(N/10) MOD 10)+(INT(N/100) MOD 10) 120 PRINT W, W MOD 3 >そのA 100 FOR A=1 TO 10000 110 C=0 120 FOR B=1 TO A-1 130 IF ((A MOD B) = 0) THEN C=C+B 140 NEXT 150 IF C=A THEN PRINT A 160 NEXT
177 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 02:58:25 ] >>175 10 PRINT "糞して寝ろ"
178 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 04:21:21 ] >>175 11 INPUT A,B,C:IF A>B AND B>C THEN PRINT A*B*C ELSE IF A>B AND B<=C THEN PRINT A+B+C ELSE PRINT A/B+C 21 X=X+1:T=T+X:IF T>200 THEN PRINT X ELSE 21 31 FOR I=1 TO 500 STEP 2:T=T+I:IF T>1000 THEN PRINT I-2 ELSE NEXT 41 INPUT X,Y:IF X=1 AND Y=2 THEN PRINT "A" ELSE IF X=3 AND Y=4 THEN PRINT "B" ELSE IF X=5 AND Y=6 THEN PRINT "C" ELSE 10 51 INPUT X,Y:IF X<0 AND Y<0 THEN PRINT SQR(X*Y) ELSE IF X>=0 AND Y>=0 THEN PRINT X*Y ELSE PRINT X/Y 61 INPUT M,N:IF M<N THEN PRINT (N^2-M^2+M+N)/2,(N+M)/2 71 FOR I=-100 TO 100 STEP 5:X=I/10:PRINT 3*X^3+2*X^2+X+15:NEXT 81 FOR A=1 TO 9:FOR B=1 TO 9:IF A*99=B*88 THEN PRINT A,B 82 NEXT:NEXT 91 FOR A=1 TO 9:FOR B=1 TO 9:FOR C=1 TO 9:IF (A*101+B*10-101)*B=C*10 THEN PRINT A,B,C 92 NEXT:NEXT:NEXT 101 FOR A=1 TO 20:FOR B=1 TO 20:FOR C=1 TO 20:IF A*A+B*B=C*C OR B*B+C*C=A*A OR C*C+A*A=B*B THEN PRINT A,B,C 102 NEXT:NEXT:NEXT 111 YM=-1.E23:FOR I=-100 TO 100 STEP 2:X=I/10:Y=6*X^2-5*X-9:IF Y>YM THEN YM=Y 112 NEXT: PRINT YM
179 名前:デフォルトの名無しさん [2006/12/10(日) 00:07:39 ] xの値が-2〜2変化したときの、関数f(x)=sin(1/x)のグラフと、 xの値が0〜4変化したときの、関数f(x)=cos(x^2)のグラフを描く プログラムを教えてください。どうかお願いします。
180 名前:デフォルトの名無しさん mailto:sage [2006/12/10(日) 01:54:40 ] >>179 ! f(x) = sin(1/x) DEF f(x) = SIN(1/x) SET WINDOW -2,2,-2,2 DRAW GRID(0.5,0.5) FOR x=-2 TO 2 STEP 0.01 WHEN EXCEPTION IN PLOT LINES: x, f(x); USE PLOT LINES END WHEN NEXT x END ! f(x) = cos(x^2) DEF f(x) = COS(x^2) SET WINDOW -0.1,4,-2.05,2.05 DRAW GRID(0.5,0.5) FOR x=0 TO 4 STEP 0.01 WHEN EXCEPTION IN PLOT LINES: x, f(x); USE PLOT LINES END WHEN NEXT x END
181 名前:デフォルトの名無しさん [2006/12/10(日) 15:14:22 ] >>180 やってもらった後で大変申し訳無いんですが、 N88互換BASICで出来るものをお願いします。 書き忘れててすいません。
182 名前:デフォルトの名無しさん mailto:sage [2006/12/10(日) 16:09:45 ] >>181 100 DIM A$(21):ON ERROR GOTO 130 110 FOR I=1 TO 41:A$(I)=SPACE$(20)+"|"+SPACE$(20):NEXT:A$(11)=STRING$(20,"-")+"+"+STRING$(20,"-") 120 FOR I=-20 TO 20:J=INT(SIN(10/I)*10):MID$(A$(11-J),I+21,1)="*":NEXT:FOR I=1 TO 21:PRINT A$(I):NEXT:END 130 RESUME NEXT 100 DIM A$(21):ON ERROR GOTO 130 110 FOR I=1 TO 41:A$(I)="|"+SPACE$(40):NEXT:A$(11)="+"+STRING$(40,"-") 120 FOR I=0 TO 40:J=INT(COS(I*I/100)*10):MID$(A$(11-J),I+1,1)="*":NEXT:FOR I=1 TO 21:PRINT A$(I):NEXT:END 130 RESUME NEXT
183 名前:デフォルトの名無しさん [2006/12/10(日) 18:00:28 ] >>182 psetやlineを使わないといけないみたいなんです。 たびたびで本当に申し訳無いんですが、 どうかお願いします。
184 名前:デフォルトの名無しさん mailto:sage [2006/12/10(日) 19:09:21 ] >>183 条件は最初に全部書け て言うかもう問題文全部そのまま晒せ
185 名前:デフォルトの名無しさん [2006/12/10(日) 20:16:49 ] >>184 本当に申し訳無いです・・・ 問題文は、 1.xの値を-2〜2変化したときの、関数f(x)=sin(1/x)のグラフを作成しなさい。 2.xの値を0〜4変化したときの、関数f(x)=cos(x^2)のグラフを作成しなさい。 です。 この課題が出される前に説明されたことは、 locate、line、pset、circleについてです。
186 名前:デフォルトの名無しさん mailto:sage [2006/12/10(日) 22:31:19 ] >>185 >1.xの値を-2〜2変化したときの、関数f(x)=sin(1/x)のグラフを作成しなさい。 100 cls:line(0,0)-(400,200),7,b:line(0,100)-(400,100),7:line(200,0)-(200,200),7 120 locate 25,7:print"0":locate 0,7:print"-2":locate 50,7:print"2": 123 locate 25,0:print"1":locate 25,13:print"-1" 136 for x=-2 to 2 step 0.001:if x<>0 then pset(x*100+200,100-sin(1/x)*100) 140 next:end >2.xの値を0〜4変化したときの、関数f(x)=cos(x^2)のグラフを作成しなさい。 100 cls:line(0,0)-(400,200),7,b:line(0,100)-(400,100),7: 122 locate 1,7:print"0":locate 50,7:print"4" 126 locate 1,0:print"1":locate 0,13:print"-1" 137 for x=0 to 4 step 0.001:if x<>0 then pset(x*100,cos(x^2)*100+100) 140 next:end
187 名前:デフォルトの名無しさん mailto:sage [2006/12/11(月) 19:56:50 ] >>186 何度もご迷惑をおかけしました・・・ ありがとうございます。
188 名前:デフォルトの名無しさん [2006/12/25(月) 02:16:06 ] 1.次の連立一次方程式を解きなさい。 2x+ y+ z=2 { 2x+2y+ z=4 x+ y+3z=1 処理は以下の手順で行なう。 @ 2 1 1 2 A 2 3 1 4 B 1 1 3 -1 処理方法 処理順 ------------------------------------------------------- C 1 0.5 0.5 1 @を2(=a11)で割る 1 D 0 2 0 2 Cを2(=a21)倍し、Aから引く 2 E 0 0.5 2.5 -2 Cを1(=a31)倍し、Bから引く 3 ------------------------------------------------------- F 1 0 0.5 0.5 Gを0.5(=a12)倍し、Cから引く 2 G 0 1 0 1 Dを2(=a22)で割る 1 H 0 0 2.5 -2.5 Gを0.5(=a32)倍し、Eから引く 3 ------------------------------------------------------- I 1 0 0 1 Kを0.5(=a13)倍し、Fから引く 2 J 0 1 0 1 Kを0(=a23)倍し、Gから引く 3 K 0 0 1 -1 Hを2.5(=a33)で割る 1 2.作成したプログラムの一部を変更して6元連立1次方程式を解きなさい。 値は自作する。 どうかよろしくお願いします!
189 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 03:17:41 ] 1. 100 N=3 110 DIM A(N,N+1) 120 ' 130 FOR J=1 TO N: FOR K=1 TO N+1: READ A(J,K): NEXT K: NEXT J 140 FOR J=1 TO N: FOR K=1 TO N+1: PRINT A(J,K);:NEXT K: PRINT: NEXT J:PRINT 150 ' 160 FOR I=1 TO N 170 T = A(I,I): FOR K=1 TO N+1: A(I,K) = A(I,K) / T: NEXT K 180 FOR J=1 TO N 190 IF J<>I THEN T = A(J,I): FOR K=1 TO N+1: A(J,K) = A(J,K) - T*A(I,K):NEXT K 200 NEXT J 210 FOR J=1 TO N: FOR K=1 TO N+1: PRINT A(J,K);:NEXT K: PRINT: NEXT J:PRINT 220 NEXT I 230 ' 240 FOR I=1 TO N: PRINT A(I,N+1): NEXT I 250 ' 260 DATA 2, 1, 1, 2 270 DATA 2, 3, 1, 4 280 DATA 1, 1, 3, -1 2. 100 N=3 → N=6
190 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 16:00:53 ] >>189 ありがとうございます!
191 名前:デフォルトの名無しさん [2006/12/25(月) 22:32:47 ] 問.整数n(49以下の奇数とする)を入力し、寸法nの魔方陣を作成し表示しなさい。 魔方陣とは1からn^2までの整数n×nの正方行列の形にならべたもので、 それぞれの行要素、列要素の和、および対角線の和が等しいものをいう。 プログラムは寸法nが奇数の場合、ド・ラ・ルーブルの方法を用いる。 その方法は以下である。 結果は、n=3、n=7、「適当な次元」の3つを提出する。 ○1 ○ ○1 ○ ○1 ○ 1.第1行中央列に1を書く。 ○○○ → ○○○ → 3○○ 2.次の数字を右斜め上に書く。 ○○○ ○○2 ○○2 2.を適用できない場合は、以下の規則に従う。 3.右斜め上にすでに数字がある場合と、 ○1○ ○1 6 ○1 6 右斜め上が右上隅の角である場合、 → 3○○ → 3 5○ → 3 5 7 今書いた数字の真下に書く。 4○2 4○2 4○ 2 4.右斜め上が上側に出る場合、 1つ右の列の最下段に書く。 8 1 6 8 1 6 15 5.右斜め上が右側に出る場合、 → 3 5 7 → 3 5 7 15 ←行の和 1つ上の行の最左端に書く。 4 ○2 4 9 2 15 15 15 15 15 ←対角線の和 ↑ 列の和 どうしてもわかりません・・・ どうか宜しくお願いします。
192 名前:デフォルトの名無しさん mailto:sage [2006/12/25(月) 23:17:33 ] >>191 >>34
193 名前:デフォルトの名無しさん [2006/12/26(火) 17:22:44 ] >>192 >>34 を参考にして繰り返し内の文を簡単にしようと 自分でやってみたんですが、このように表示されてしまいます→ 0 1 0 おかしい所の訂正をお願いします。 0 0 0 0 0 0 100 color 0,7:cls 110 dim a(99,99) 120 input "n";n 130 if n mod 2=0 then print "( ´,_ゝ`)プッ":end 140 x=n\2+1:y=1 150 for i=1 to n*n 160 a(y,x)=i 170 if i mod n=0 then y=y+1 else goto 180 180 if y=1 then y=n and x=x+1 else goto 190 190 if x=n then y=y-1 and x=1 else goto 200 200 if y<>1 and x<>n then y=y-1 and x=x+1 210 next i 220 for i=1 to n 230 for j=1 to n 240 print a(i,j); 250 next j 260 print 270 next i 280 end
194 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 19:30:22 ] >>193 170〜200行 何もせずに次の行に行くときは「else goto NNN」は不要。 複数の文を続けて書くときは「:」で区切ること。 and は論理演算子なので、例えば180行目の「y=n and x=x+1」は y に n を代入し、x に x+1 を代入する ではなく y に n と 「x と x+1が等しいかどうかの結果(常に偽=0)」との論理積 を代入する という意味になる。 x, y の移動先の判別も少々怪しい。 まずx, yを次の位置に移動させておいて、その位置が n×n のマス目から外れていれば 補正するようにした方が良い。
195 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 21:41:34 ] >>194 できました! アドバイスありがとうございます。
196 名前:デフォルトの名無しさん [2006/12/27(水) 15:07:46 ] 明日までの宿題ができなくて困ってます。 どなたかBASICに詳しい方教えていただけないでしょうか。 電卓のプログラミングなんですが、 一応1+2=3や5×3=15のような簡単な計算はできるようになりました。 しかし、=のあとに数字を打って新しく計算を始めたり (例えば1+2=7−8=という計算をしたとき、37−8=というようになってしまう) 1+2+3=という計算をするときに、1+2+と打った時点で電卓に3が表示されなくて、 3+3=6という計算結果にすることができません。 どなたかお願いします。
197 名前:デフォルトの名無しさん mailto:sage [2006/12/27(水) 15:43:43 ] >196 =を選んだ時点でStringに入れていて そのまま計算を続行してるからですよ 計算処理時は計算対象が何の変数に入っているのか 解るようにしておきましょう
198 名前:デフォルトの名無しさん [2006/12/27(水) 16:15:19 ] >>197 出来ました! これで提出できます。 本当にありがとうございました!!
199 名前:デフォルトの名無しさん [2007/01/04(木) 19:46:43 ] ヨーグレット
200 名前:デフォルトの名無しさん [2007/01/06(土) 21:16:30 ] どなたか助けてください。 簡単なことなようなのに、どうしてもできないのです。 ”tanX=c/X”を求めようとして調べている間に「高校数学の窓」というページを見つけ、 質問「1126」で下記のようなプログラムを見つけましたが、 このプログラムは”tanX=c/X”ではなくて”tanX=X”を求めるプログラムなのです。 自分で”tanX=c/X”用にアレンジしようとしたのですが、どうして良いのかわかりません。 Basicに詳しいどなたか、どういう風に書き換えればよいのか教えてください。 どうぞよろしくお願いします。 DEF f(x)=x-tan(x) DEF g(x)=-(tan(x))^2 ! g(x)=f'(x) INPUT a LET x=a LET E=0.000001 DO LET x1=x-f(x)/g(x) PRINT x1 IF ABS(x1-x)<E THEN EXIT DO LET x=x1 LOOP END
201 名前:200 [2007/01/06(土) 22:04:49 ] 計算法的なやりかたとしては、f(x) = tan(x)-c/xとおいて,f(x)を微分し,f'(x)=g(x) = 1/cos(x)2+c/x2とお くと思います。 よろしくおねがいします。
202 名前:デフォルトの名無しさん mailto:sage [2007/01/06(土) 22:24:11 ] >>200-201 そこまで考えたのなら、そのまま書いて試してみればいいじゃない。 DEF f(x)=TAN(x)-c/x DEF g(x)=COS(x)^(-2)+c*x^(-2) ! g(x)=f'(x) INPUT c, a LET x=a LET E=0.000001 DO LET x1=x-f(x)/g(x) PRINT x1 IF ABS(x1-x)<E THEN EXIT DO LET x=x1 LOOP END
203 名前:200 [2007/01/06(土) 22:58:42 ] >>202 ありがとうございます!!。 できてるっぽいです!!。 Basicの言語がわからないので、とても困っていました。 私は「1/cos(x)2+c/x2」をそのままプログラムへ入れました。 やはり表記法が変でしたか・・・?。 ずうずうしくて恐縮なのですが、もう一つ教えてください。 f(x) = tan(x)-c/xとおいた場合の、f(x)の微分「f'(x)=g(x) = 1/(cos(x))^2+c/x^2」と書くのでしょうか?。
204 名前:200 [2007/01/06(土) 23:30:06 ] ごめんなさい。最後の行だけ訂正します f(x) =c/x-tan(x)おくと,f(x)の微分は,f'(x)=g(x) = -c/x^2-1/(cos(x))^2で正しいのでしょうか?。
205 名前:デフォルトの名無しさん mailto:sage [2007/01/07(日) 00:00:29 ] つ ja.wikipedia.org/wiki/%E5%BE%AE%E5%88%86
206 名前:デフォルトの名無しさん [2007/01/17(水) 05:11:57 ] 正月早々に近所の創価学会員一家が夜逃げしたことがわかりました。この夜逃げは私の住む地域で騒ぎになりました。 創価学会の人たちが「あの一家は信心が無かった」と宣伝して回っていますが真っ赤な嘘です。近所ではよく知られた熱心な信者でした。 羽振りの良い時期にはおだて上げて散々使いまわして、いざ破綻になれば他人事で切り捨てる。 創価学会というのは冷酷な組織だということがつくづくわかりました。 追記 アムウェイやスリムドカン等の代理店をやっていた時期もあったそうです。 money4.2ch.net/test/read.cgi/manage/1158633593/
207 名前:デフォルトの名無しさん mailto:sage [2007/01/18(木) 13:27:41 ] c-docomo.2ch.net/test/-/tech/1165167516/162
208 名前:デフォルトの名無しさん [2007/01/23(火) 23:44:57 ] xの値を0度〜360度、刻み10度で変化したときの、 関数f(x)=sin(x)、f(x)=cos(x)のグラフを作成しなさい。 (1つの画面に2つのグラフを描く、演算子はlocate、line、circle、psetのみ) よろしくお願いします!!><
209 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 00:03:35 ] >演算子はlocate、line、circle、psetのみ 難しすぎて出来ません!!><
210 名前:208 mailto:sage [2007/01/24(水) 00:28:59 ] >>209 あっ!図形を描くために使う演算子がlocate、line、circle、psetのみであって for文とか四則演算子も使えます!よろしくお願いします!!
211 名前:デフォルトの名無しさん [2007/01/24(水) 01:14:01 ] >図形を描くために使う演算子がlocate、line、circle、psetのみ 難しすぎて出来ません!!><
212 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 16:20:38 ] 漸化式の計算ってどうすんの?
213 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 22:26:06 ] >>212 つ for
214 名前:デフォルトの名無しさん [2007/01/25(木) 05:54:54 ] 計算したいものがありまして、 見よう見まねでプログラムを作っていますが、どうしてもコンパイルできません。 また、式の最初のπ以降のカッコ内は元の式では、1/n^2exp(-(t*n^2*PI()^2/R/C/L^2))となっています。 For文をうまく組み込めばこの部分ももっと級数を増やして計算できるのかもしれませんが、 組み方もわからないので、非常に困っています。 どなたか手直し等をしてくださいませんか?。 よろしくお願いいたします。 Let I=1.33 Let L=1 Let E=0.0008 Input "Cを入力してください。",C Input "Rを入力してください。",R For t=1 to 2500 V=E+/1000*(I*(t/C*L+R*L/3-2*R*l/PI()^2*(1/1^2/EXP(1^2*PI()^2*t/R/C/L^2)+1/2^2/EXP(2^2*PI()^2*s/R/C/L^2)+1/3^2/EXP(3^2*PI()^2*t/R/C/L^2))))) Print V Next t
215 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 17:04:45 ] >>214 E+/1000 ←ここがおかしい
216 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 17:08:03 ] 十進BASICはこれで動いた。意図する式かどうかは Let I=1.33 Let L=1 Let E=0.0008 Input PROMPT "Cを入力してください。":C Input PROMPT "Rを入力してください。":R For t=1 to 2500 LET V=E/1000*(I*(t/C*L+R*L/3-2*R*l/PI^2*(1/1^2/EXP(1^2*PI))))^2*t/R/C/L^2+1/2^2/EXP(2^2*PI^2*s/R/C/L^2)+1/3^2/EXP(3^2*PI^2*t/R/C/L^2) Print V NEXT t END
217 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 21:05:55 ] >>213 遅かったがサンクスw
218 名前:デフォルトの名無しさん [2007/01/27(土) 00:07:17 ] >>215 あっそうでした。ありがとうございました。 >>216 これで良さそうです。ありがとうございました。
219 名前:デフォルトの名無しさん [2007/01/27(土) 00:13:47 ] 度々すみません。 前のプログラムを応用して、別のプログラムを作ったのですが、 tanx=c/xを計算する部分の組み込みがうまくいかず、どうしても計算結果が違ってしまいます。 お願いするばかりで恐縮なのですが、どうぞよろしくご教授ください。
220 名前:219 [2007/01/27(土) 00:15:47 ] こちらが自作のプログラムです。 Let Iapp=1.33 Let Ei=0 Let Cs=1 Let Rs=0.001 Input "Cを入力してください。",CtL Input "Rを入力してください。",RtL For t = 1 to 1300 For n=1 to 100 Let a=n*PI() Let c=Cs/CtL DEF f(x)=TAN(x)-c/x DEF g(x)=COS(x)^(-2)+c*x^(-2) LET x=a LET E=0.000001 DO LET x1=x-f(x)/g(x) IF ABS(x1-x)<E THEN EXIT DO LET x=x1 LOOP S=0 S=S+cos(X1)*EXP(-t*X1^2/RtL/CtL)/(X1*((CtL+Cs)*sin(X1)+X1*CtL*cos(X1))) Next n V=Ei+1/1000*(Iapp*(Rs+2*t/(2*CtL+Cs)+RtL*CtL^2*(8*CtL+5*Cs)/(6*(2*CtL+Cs)^2)-2*RtL^2*S)) Print V Next t END
221 名前:217 [2007/01/27(土) 01:57:24 ] 問題点がわかりました。 級数の数を決定するステップでFor文を使用してしまった為に、 tanx=c/xがちゃんと計算できてないだけでした。 しかし、For文の他に何度も計算させるコマンドがわかりません。 どうしたら良いでしょうか?。
222 名前:デフォルトの名無しさん [2007/01/27(土) 01:59:14 ] IF と GOTO 使え。 それが基本(w
223 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 02:03:14 ] DO LOOP DO WHILE LOOP WHILE LOOP UNTIL などたくさんある
224 名前:217 [2007/01/27(土) 02:25:51 ] >>222 >>223 アドバイスありがとうございました。 自分で調べてやってみましたが、どうもまだ違うようです。 どこを間違えたのでしょうか?。 また手直しをしてください。お願いします。 ↓
225 名前:217 [2007/01/27(土) 02:26:36 ] Print"Rs(単位 Ω)=(=γ*RtL)=",Rs Print"Cs(単位 F)=(=θ*CtL)=",Cs Input "CtLを入力してください(単位 F).",CtL Input "RtLを入力してください(単位 Ω).",RtL Print "Emeas/V" For t = 1 to 1300 n=0 While n <=100 n=n+1 Let a=n*PI() Let c=Cs/CtL DEF f(x)=TAN(x)-c/x DEF g(x)=COS(x)^(-2)+c*x^(-2) LET x=a LET E=0.000001 DO LET x1=x-f(x)/g(x) IF ABS(x1-x)<E THEN EXIT DO LET x=x1 LOOP S=0 S=S+cos(x1)*EXP(-t*X1^2/RtL/CtL)/(x1*((CtL+Cs)*sin(x1)+x1*CtL*cos(x1))) Wend Emeas=Ei+1/1000*(Iapp*(Rs+2*t/(2*CtL+Cs)+RtL*CtL^2*(8*CtL+5*Cs)/(6*(2*CtL+Cs)^2)-2*RtL^2*S)) Print a Next t END
226 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 03:05:34 ] >>225 何をしたいのかよくわからんな。 ニュートン法か? 計算の元になる文献かPDFへのリンクを貼ってくれないか? こういうエラーは文法エラーではなく論理エラーと言う物で、 文法的には誤りがないため、元の文献を参照できないと どこが間違っているのかわからない。
227 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 03:07:05 ] まあ多分 S=0 S=S+cos(x1)*EXP(-t*X1^2/RtL/CtL)/(x1*((CtL+Cs)*sin(x1)+x1*CtL*cos(x1))) の所で、S=0を別の所に置かないとだめなんだろうぐらいは予想できるけど。
228 名前:217 [2007/01/27(土) 04:37:29 ] >>226 ニュートン法の部分に関しましては、 高校数学の窓というページの質問番号1126を参照して作りました。 他の部分につきましては、申し訳ないのですが、リンクがありません。
229 名前:217 [2007/01/27(土) 05:27:18 ] >>226 その部分もこちらで教えていただきました。 >>200-202 を参照してください。
230 名前:217 [2007/01/27(土) 05:40:41 ] >>227 それは、どうしてなのでしょうか?。
231 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 07:59:44 ] そうじゃなくって、>>225 のどこが間違ってるのかって こっちが聞きたいって意味。式の意味が全然把握できないから。 それがわからない以上、誰も答えられないでしょう。
232 名前:217 [2007/01/27(土) 12:08:48 ] >>231 大変失礼いたしました。 最初のFor文は、秒数に関する設定です。 問題は次のWhile文にあるようなのですが、 ここではtanX=c/x (a=n*PI()、c=Cs/CtL )を計算してから、級数部分(s) を計算させるつもりで作りました。 最後の行に「Print a」とありますが、これは 「Print Emeas」の間違いです。 色々な計算途中の値を表示させてみましたら、 十行目に「Let a=n*PI()」のところで n=?の回数だけ級数の計算が為されているようなのですが、 n(n=1,2,3となってほしい。) がきちんとnがPI()にかけられてないみたいなのです。 どこを間違えてしまったのか、この説明でわかるでしょうか?。 教えてください。 よろしくお願いします。
233 名前:217 [2007/01/28(日) 14:27:05 ] tanx=c/xの部分は、カウンターを組み込むことでクリアできました。 しかし、Sの計算でつまづいてしまいました。 t=1から1000までの間、Sの値が変化しないのです。 何故でしょうか?。 どなたか教えてください。
234 名前:デフォルトの名無しさん [2007/01/30(火) 12:01:21 ] ニュートン法を教えてください
235 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 21:09:54 ] >>234 DEF f(x) = x^2 - 2 DEF df(x) = 2*x LET EPS = 0.000001 LET IMAX = 1000 LET x = 2 FOR i=1 TO IMAX LET x1 = x - f(x) / df(x) IF ABS(x1 - x) < EPS THEN EXIT FOR LET x = x1 NEXT i IF i < IMAX THEN PRINT x1 END
236 名前:デフォルトの名無しさん [2007/02/02(金) 23:51:26 ] 10CLEAR :CLS 20DIM A(2),B(2) 30FOR J=0 TO 2 40A(J)= RND 6-1 50NEXT 60*MAIN 70LOCATE 0,0 80FOR J=0 TO 2 90IF B(J)=0 LET A(J)=(A(J)+1) MOD 6 100PRINT MID$ ("$*\7+&",A(J)+1,1); 110NEXT 120C= ASC INKEY$ -49 130IF C>-1 AND C<3 IF B(C)=0 LET D=D+1,B(C)=1 140IF D<3 GOTO *MAIN 150IF A(0)=A(1) AND A(1)=A(2) PRINT " GOOD" 160CALL 48381 170GOTO 10 このプログラムはどのような物か教えてください。 どの命令がどのような意味を持っているのか分からないのでお願いします。
237 名前:デフォルトの名無しさん mailto:sage [2007/02/09(金) 10:49:57 ] >>236 スロット
238 名前:デフォルトの名無しさん [2007/02/18(日) 11:52:37 ] サイコロをK回振ったとする。100回振ったとき、それぞれの目が出た回数をコンピュータでシュミレーションせよ。横軸に出た目、縦軸に出た回数をプロットし、折れ線グラフをかけ。 どうやって解けばいいでしようか どなたかお願いします
239 名前:デフォルトの名無しさん mailto:sage [2007/02/18(日) 15:51:52 ] >>238 100 CLS 3:DIM D(6):FOR I=1 TO 6:D(I)=0:NEXT I:RANDOMIZE 10 110 FOR I=1 TO 100:N=INT(RND*6)+1:D(N) = D(N) + 1:NEXT I 120 LINE (100,10)-(100,300),7:LINE(100,300)-(580,300),7 130 FOR I=1 TO 6:LOCATE 11+10*I,19:PRINT I;:NEXT I 140 FOR I=0 TO 6:LOCATE 9,18-I*3:PRINT I*5;:NEXT I 150 PSET(180,300-D(1)*10),7 160 FOR I=1 TO 6 170 LINE-(I*80+100,300-D(I)*10),7 180 LOCATE I*10+10,18-INT(D(I)*3/5):PRINT D(I); 190 NEXT I 200 LOCATE 0,20
240 名前:デフォルトの名無しさん [2007/02/18(日) 17:41:25 ] >>239 遅くなりました!有り難うございます
241 名前:デフォルトの名無しさん [2007/02/25(日) 18:31:08 ] 簡単な自分の好きなゲームを2つ作りなさい。 ただし数当てゲームは無しとする。 どうしたらいいか全くわかりません! どなたか助けていただけないでしょうか? 今週の水曜日までなので…
242 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 19:24:41 ] >>241 10 REM TAIPINGU GE-MU 20 A$ = "RENSYUU SHITAI MOZIRETSU" 30 PRINT A$ 40 INPUT B$ 50 IF A$ = B$ THEN 80 60 PRINT "TIGAIMASU" 70 GOTO 30 80 PRINT "OWARI" 90 END 100 'NOURYOKU TORE-NINGU 110 SCREEN 0,1:CONSOLE ,,0,1:CLS 3:DEFINT A-Z 130 SIZ = 9:MAX = 100 : WAITCOUNT =10000 140 RANDOMIZE VAL(RIGHT$(TIME$,2)) 150 FOR I=0 TO SIZ 160 Q(I) = RND(MAX):ANS = ANS + Q(I) 170 NEXT 180 FOR I=0 TO SIZ 190 PRINT Q(I) 200 GOSUB *SWAIT 210 CLS 220 NEXT 230 INPUT "GOUKEI";G$ 240 IF VAL(G$) = ANS THEN PRINT "SEIKAI!":END 250 PRINT "ZANNEN!":END 300 *SWAIT 310 FOR S=0 TO WAITCOUNT :NEXT 320 RETURN
243 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 20:43:42 ] >>241 10 REM 4,6で左右移動 20 CONSOLE 0,14,0,1:CLS 3:X=320:Y=199:K=0:W=0 30 A$=INKEY$ 40 IF A$="4" THEN X=X-1:IF X<0 THEN X=0 50 IF A$="6" THEN X=X+1:IF X>639 THEN X=639 60 FOR I=1 TO 10:PSET(RND(1)*640,399),3:NEXT 70 ROLL 1 'ActiveBasicの場合は ROLL 0,-1 80 IF POINT(X,Y)=3 THEN PRINT "走行距離";K;"m":END ELSE K=K+1 90 PSET(X,Y),1:FOR I=1 TO W:NEXT:GOTO 30 100 REM じゃんけんゲーム 110 CLEAR:DIM A$(3),B$(3),H(3,3),S(3) 120 A$(1)="グー":A$(2)="チョキ":A$(3)="パー":S(1)=0:S(2)=0:S(3)=0 130 B$(1)="あいこ":B$(2)="あんたの勝ち":B$(3)="あんたの負け" 140 H(1,1)=1:H(1,2)=2:H(1,3)=3:H(2,1)=3:H(2,2)=1:H(2,3)=2:H(3,1)=2:H(3,2)=3:H(3,3)=1 150 CLS:PRINT "じゃんけんゲーム" 160 INPUT "(1:グー, 2:チョキ, 3:パー, 0:やめる)"; N1 170 IF N1=0 THEN GOTO 220 ELSE IF N1>=1 AND N1<=3 THEN GOTO 190 180 GOTO 160 190 N2=INT(RND(1)*3)*Z+N1-1:IF N2<1 THEN N2=3 200 K=H(N1,N2):S(K)=S(K)+1 210 PRINT "あんた:";A$(N1), "俺:"A$(N2)," ";B$(K):PRINT:GOTO 160 220 PRINT S(2);"勝", S(3);"敗", S(1);"引き分け":END
244 名前:デフォルトの名無しさん [2007/02/28(水) 00:14:40 ] ありがとうございます! おかげさまでとても助かりました!
245 名前:デフォルトの名無しさん mailto:sage [2007/03/22(木) 23:32:51 ] 統計の平均と標準偏差をポケコン(PC-G850)で計算したいんだけど、 プログラムをすっかり忘れたので教えて。 変数は D データ M 平均 S 標準偏差 SUM 総和 V 分散 N サンプル数 こんな感じで、 10 INPUT D 20 N=N+1 30 SUM=SUM+D 40 M=SUM/N 50 PRINT M 60 GOTO 10 みたいなプログラムを作りたいんだけど、初めからN数が分かっていない場合に、 分散ってどうやって計算したらよい? 出来ればデータを入力するたびに平均、標準偏差を出力したい。 エレガントな必要は全く無いので、よろしく頼みます。
246 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 06:34:10 ] 分散は平均値がわからないと出せないんじゃないの? だから各データを配列変数とかにこっそりしまっておくのがいいとおもう
247 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 07:45:35 ] それについては 各データの自乗の総和から平均の自乗のN倍を引けば良いんじゃないかと・・・? (Di-M)^2を変形して出来ない?
248 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 08:48:39 ] >出来ればデータを入力するたびに平均、標準偏差を出力したい。 これをどう解釈するかだな
249 名前:デフォルトの名無しさん mailto:sage [2007/03/23(金) 20:30:21 ] Dの自乗の総和を変数SUM2(?)としといて 35 SUM2=SUM2+D^2 45 V=(SUM2-M^2)/N 46 S=SQR V 55 PRINT S ダメ?
250 名前:245 mailto:sage [2007/03/24(土) 10:56:42 ] >>246 配列のプログラム書けないんだ _ ミ ∠_) / / \\ ウイーン Γ/了 | | ウイーン |.@| | | ガッガッガッ | / | . 人 |/ | < >_Λ∩ >>245 _/ | //. V`Д´)/ (_フ彡 /
251 名前:デフォルトの名無しさん mailto:sage [2007/03/24(土) 17:03:50 ] >>250 書く気が無いの?それとも実現できないの?
252 名前:デフォルトの名無しさん mailto:sage [2007/03/27(火) 01:01:13 ] ポケコンってSUMみたいな名前は変数に使えないっけ? 10 INPUT X 20 N=N+1 30 S=S+X 40 R=Q+X^2 45 IF N=1 THEN 10 50 M=S/N 60 V=R/N-M^2 70 D=SQR V 80 PRINT "標本数",N 90 PRINT "平均",M 100 PRINT "分散",V 110 PRINT "標準偏差",D 120 GOTO 10 >>251 配列の構文を知らない
253 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 19:57:53 ] 40行目間違ってた。
254 名前:デフォルトの名無しさん [2007/06/04(月) 21:32:17 ] 10 N=0 20 T=0 30 S=0 40 INPUT X 50 N=N+1 60 T=T+X 70 S=S+X^2 80 IF N=1 THEN 10 90 M=T/N 100 V=(S-T^2/N)/(N-1) 110 D= SQR V 120 PRINT "標本数",N 130 PRINT "平均",M 140 PRINT "分散",V 150 PRINT "標準偏差",D 160 GOTO 10 170 END
255 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 21:36:12 ] N = 標本数 T = 総和 S = 平方和 X = 変数 M = 平均 V = 分散 D = 標準偏差
256 名前:デフォルトの名無しさん mailto:age [2007/09/02(日) 00:20:12 ] あげ
257 名前:デフォルトの名無しさん [2007/09/18(火) 15:28:04 ] age
258 名前:デフォルトの名無しさん [2007/10/03(水) 19:57:36 ] 寿司食いたいフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフ
259 名前:某高専生 mailto:Help [2007/12/07(金) 15:01:08 ] えーとDIMとFOR~NEXTで繰り返しのたびに順々に数値を読んでくやつ教えてくれ。 テストに出たが忘れた・・・
260 名前:デフォルトの名無しさん mailto:sage [2007/12/07(金) 19:24:22 ] 10 DIM A(10) 20 FOR I=1 TO 10:READ A(I):NEXT 30 NEW 40 DATA 1,2,3,4,5,6,7,8,9,10
261 名前:デフォルトの名無しさん [2008/01/21(月) 15:50:37 ] 問 以下の処理を1つのプログラムで記述します。プログラムは1つです。 1.5行5列の行列[A]にデータを入力し、表示しなさい。 データは不規則な値とする。 2.行列[A]の転置行列を行列[B]に代入し表示しなさい。 3.行列[A]+行列[B]の計算をして表示しなさい。 4.行列[A]−行列[B]の計算をして表示しなさい。 5.行列[A]*行列[B]の計算をして表示しなさい。 プログラムと結果を提出します どうしてもわかりません… お願いします。
262 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 15:07:13 ] 10 OPTION BASE 1 20 FOR I=1 TO 5 30 FOR K=1 TO 5 40 READ A(I,K) 50 NEXT:NEXT 60 GOTO 0
263 名前:デフォルトの名無しさん [2008/01/24(木) 19:05:09 ] VISUAL BASIC で学生人数の平均を出す プログラムを作りたいのですが、どういうようなコードを 書けばいいかわかりません・・・・・。 コマンドボタンを押すと、Text欄に社員が10人の平均が出力されるような・・・ものです。 自分何とかで調べたのですが、演算(+, /, * )を使うまではわかりました。
264 名前:デフォルトの名無しさん [2008/01/24(木) 19:05:41 ] 訂正 社員でなく学生です
265 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 21:04:14 ] 問題12 xの値を0〜360度、10度刻みで変化したときの、関数f(x)=sin(x)、f(x)=cos(x)のグラフを同画面上に描きなさい。 N88互換BASICでよろしくお願いします。
266 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 23:02:23 ] >>265 10 CLS 20 YS1=INT(-100*SIN(0)+200) 30 YC1=INT(-100*COS(0)+200) 40 X=0 50 FOR I=10 TO 360 STEP 10 60 S=3.14159/180*I 70 YS2=INT(-100*SIN(S)+200) 80 YC2=INT(-100*COS(S)+200) 90 LINE(X,YS1)-(I,YS2),2 100 LINE(X,YC1)-(I,YC2),3 110 YS1=YS2 120 YC1=YC2 130 X=I 140 NEXT I 150 LINE(0,200)-(360,200),1 160 END
267 名前:デフォルトの名無しさん mailto:sage [2008/01/25(金) 07:10:38 ] >>266 ありがとう御座いました。
268 名前:デフォルトの名無しさん [2008/01/29(火) 15:53:57 ] これ最短でゴールするようにプログラムつくってくれませんか? できればゴール後パフォーマンスもお願いします imepita.jp/20080129/564990
269 名前:デフォルトの名無しさん [2008/01/29(火) 23:57:59 ] 国旗(何でもよし。でもちょっとだけ手間かかるほうがいいかも)2つ書くプログラミングと、 簡単なゲームのプログラミング(それか実行押すと絵が変わるのとかの)どなたかお願いします!! 単位かかってて切実です・・・ お願いします!
270 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 01:18:44 ] >>269 フランスとチェコの国旗(N88互換BASIC用) 10 CLS 20 LINE(15,100)-(115,300),1,BF 30 LINE(115,100)-(215,300),7,BF 40 LINE(215,100)-(315,300),2,BF 50 FOR Y=100 TO 200 60 XM=225+Y 70 LINE(325,Y)-(XM,Y),1 80 LINE(XM,Y)-(625,Y),7 90 NEXT Y 100 FOR Y=200 TO 300 120 XM=625-Y 120 LINE(325,Y)-(XM,Y),1 130 LINE(XM,Y)-(625,Y),2 140 NEXT Y 150 END
271 名前:デフォルトの名無しさん [2008/01/30(水) 08:49:06 ] 268 はライントレーサーです お願いします
272 名前:デフォルトの名無しさん mailto:sage [2008/01/31(木) 04:53:44 ] >>268 は、ライントレーサーでハードウェアの仕様もAPIもわからずに、 どうやって解けとwwwww 丸投げにもほどがあるwwww
273 名前:デフォルトの名無しさん [2008/02/07(木) 04:53:46 ] TINY Basic について a1=√(1/2) a2=√(1/2)×√((1/2)+(1/2)√(1/2)) a3=√(1/2)×√((1/2)+(1/2)√(1/2)) ×√((1/2)+(1/2)((1/2)+(1/2)√(1/2))) … とするとき、 nを入力すればanが出力されるプログラムってどう書くのですか?
274 名前:デフォルトの名無しさん [2008/02/07(木) 09:32:12 ] WAITってw
275 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 12:09:57 ] >>272 式を生成するんじゃなくて数値を計算するんだよね? こんな感じでどうかな。 n = 1 Do Until n = 0 Input "n (0で終了)"; n If n<> 0 Then Print A(n) Loop End Function A(n) If n = 1 Then A = Sqr(1/2) Else A = A(n-1) * Sqr(B(n)) End If End Function Function B(n) If n = 1 Then B = Sqr(1/2) Else B = 1/2 + 1/2 * B(n-1) End If End Function
276 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 12:19:38 ] >>272 じゃなくて>>273 だった。
277 名前:273 [2008/02/07(木) 12:41:36 ] >>275 ご協力ありがとうございます。 申し訳ありません… "2/an を出力" でした。 "print 2/A(n)"と書きかえればよろしいでしょうか。 2/anの極限はπ(=3.1415…)になるそうですが…
278 名前:273 [2008/02/07(木) 12:47:33 ] たびたびすみません。 a3=√(1/2)×√((1/2)+(1/2)√(1/2)) ×√((1/2)+(1/2)√((1/2)+(1/2)√(1/2))) です。すみません
279 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:46:29 ] 3行直せば大丈夫。 If n<> 0 Then Print A(n) → If n > 0 Then Print 2/A(n) B = Sqr(1/2) → B = 1/2 B = 1/2 + 1/2 * B(n-1) → 1/2 + 1/2 * Sqr(B(n-1))
280 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:49:25 ] おっとっと、最後のが間違ってる。 B = 1/2 + 1/2 * B(n-1) → B = 1/2 + 1/2 * Sqr(B(n-1))
281 名前:デフォルトの名無しさん [2008/02/08(金) 05:38:39 ] Basicプログラム science6.2ch.net/test/read.cgi/math/1202327409/ 1 :暇人:2008/02/07(木) 04:50:09 TINY Basic について a1=√(1/2) a2=√(1/2)×√((1/2)+(1/2)√(1/2)) a3=√(1/2)×√((1/2)+(1/2)√(1/2)) ×√((1/2)+(1/2)((1/2)+(1/2)√(1/2))) … とするとき、 nを入力すればanが出力されるプログラムってどう書くのですか? 2 :132人目の素数さん:2008/02/07(木) 04:54:15 >>1 pc11.2ch.net/test/read.cgi/tech/1136788500/ よって終了。
282 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 13:04:32 ] いや、このスレは漏れが課題を貰うためのスレだし。
283 名前:273 [2008/02/09(土) 00:47:20 ] ありがとうございました。 解決しました。
284 名前:N88互換 [2008/02/15(金) 00:48:30 ] 25 input n 35 if n=1 then goto 25 40 x=n MOD 2 50 if x=1 then 70 60 if x=0 then 90 70 n=n*3+1 75 print n; 80 goto 35 90 n=n/2 95 print n; 100 goto 35 この処理でどの数字も最後は1になるのですが、この処理を上手く使って 五桁の整数で1になるまで、計算処理回数が最も多い値を求めるにはどう すれば良いのでしょうか? 分からなくて困ってしまってます・・・ お願いします。
285 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 08:20:16 ] >>284 昔それの一般解出そうとして死んだなぁ 素朴な方法としては,5桁の数値を総当りする方法だな maxcnt=0 theninit=0 for init=1 to 99999 n=init cnt=0 *loop if n=1 goto *out reminder=n mod 2: cnt=cnt+1 if reminder=1 then n=n*3+1: cnt=cnt+1: print n: goto *loop if reminder=0 then n=n/2: cnt=cnt+1: print n: goto *loop *out if maxcnt<cnt then maxcnt=cnt: theninit=init next print "計算処理回数がもっとも多い値="; theninit
286 名前:N88互換 [2008/02/19(火) 21:07:14 ] 返信遅くなりました! かなり参考になりました。 ありがとうございました!!
287 名前:デフォルトの名無しさん [2008/02/20(水) 21:07:56 ] 文字列変数に[,]が入れたときに動作不良を起こさないのってどうすればいいの?
288 名前:デフォルトの名無しさん [2008/03/06(木) 11:03:29 ] 次のフローチャートに入るものがなにか わからないので、解答をどなたかお願いします; 問1 uproda11.2ch-library.com/src/1169912.jpg 問2 uproda11.2ch-library.com/src/1169913.jpg 見にくくて申し訳ありませんが よろしくお願いします。
289 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 11:21:22 ] >>288 問1 (1)D(M) (2)80 (3)C1+1 -> C1 (4)C2+1 -> C2 (5)C3+1 -> C3 問2 (1)D -> S (2)N > 0 (3)D > B (4)D < S
290 名前:デフォルトの名無しさん [2008/06/21(土) 05:20:35 ] 長さが2cm、5cm、7cmの竹ひごがそれぞれたくさんあります。 いま、これらの竹ひごを合計30本使って、1本の長い棒を作ることにします。(1本も使わない長さの竹ひごがあっても構いません)(※) では、 長い棒の長さとして考えられる数は何通りあるでしょうか。 ※・・・例えば、「2cmを30本、5cmを0本、7cmを0本」なら60cm、「2cmを2本、5cmを10本、7cmを18本」なら180cmの長い棒ができますね。 この問題を解くためのプログラムを教えてください。お願いします。
291 名前:デフォルトの名無しさん [2008/06/21(土) 06:10:06 ] 充足問題を解くのか 動的計画法でいいんかな 微妙に単調増加っぽいけど忘れた
292 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 00:55:42 ] 質問しつれいします。 素数のリストを、有限の自然数N以下に限定しないで次々に書き出す プログラムを書きたいのですが、どのようにすればいいのでしょうか? Nを限定した時はDIMを使えば出来たのですが、上のような時はどうすればいいのか。 記憶容量は無視していいそうです。 どなたか回答お願いします。
293 名前:デフォルトの名無しさん mailto:sage [2008/06/27(金) 16:28:08 ] >>292 100 ' SOSUU PRINT 110 N=1 120 'SOSUU TYEKKU 130 FOR M=2 TO N-1 140 IF (N MOD M) = 0 THEN GOTO 170 150 NEXT 160 PRINT N; 170 N=N+1 180 GOTO 120 300 END
294 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 00:43:23 ] メッセージの定義されていないエラーです。 行番号:130 と出て、71までの素数しか表示されないのですが・・・ せっかく答えていただいたのに文句言ってすいません。 どこを改良すればいいのでしょうか?
295 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 08:19:43 ] >>292 >記憶容量は無視していいそうです。 無限に大きい配列を用意すればいい。
296 名前:デフォルトの名無しさん mailto:sage [2008/06/28(土) 23:17:12 ] >無限に大きい配列を用意すればいい。 どうすればいいんでしょうか?
297 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 00:52:56 ] >>292 100 PRINT 2 110 PRINT 3 120 N=5 130 IF (N MOD 3)=0 THEN GOTO 190 140 I=6 :M=INT(SQR(N))+1 150 IF I>M THEN PRINT N :GOTO 190 160 IF (N MOD (I-1))=0 THEN GOTO 190 170 IF (N MOD (I+1))=0 THEN GOTO 190 180 I=I+6 :GOTO 150 190 N=N+2 :GOTO 130
298 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 01:09:48 ] できました! これで単位落とさなくてすみそうです。 本当にありがとうございました。
299 名前:デフォルトの名無しさん mailto:sage [2008/06/29(日) 08:36:57 ] できた、じゃなくてやってもらった、だろ。
300 名前:学生 [2008/07/02(水) 14:07:14 ] プログラミングの授業でsin30°の値を出したときに0.499999616987256という値が出てきたのですが・・・ 普通だったら0.5だがなぜこの値になったのか理由を示せといわれました。 自分には全然わからなかったので是非教えていただきたいのですが、 よろしいでしょうか?
301 名前:デフォルトの名無しさん mailto:sage [2008/07/02(水) 18:13:21 ] 大卒ニートによる回答 結論から言うと、計算時に誤差が発生しているから。 おそらくπが3.14159と定義されている。 三角関数(SINとか)は確か引数にラジアン単位で指定したような気がした。 ラジアンと度数の変換は「度数×円周率(π)÷180」で出来る。 円周率は無限小数だから、コンピュータ上でそのままの値を扱うのは困難。 なので、πはπそのものではなく、近い数値が割り当てられている。 10 p1=3.1415 : p2=3.14159 : p3=3.1415926535897 20 print sin(30*p1/180) : print sin(30*p2/180) : print sin(30*p3/180) これの実行結果で発生する誤差を確認の事
302 名前:学生 [2008/07/03(木) 00:49:58 ] 本当にありがとうございます! もしよければ、まだ他にsin(30)=0.499999616987256(なぜ0.5でないのか?) 可能性があるとしたら何かありませんか?
303 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 10:50:15 ] 誤差以外に思い当たることはないなぁ。 処理系によって実装の仕方が違うと思うし、どのBASICなのか明示されてないから、これ以上詳しくはわからない。 パソコン上のBASICだと三角関数の引数にはラジアンで指定してやるのが普通。(だった気がする) ポケコン上のBASICなら度数で指定してやれるものもあった気がする。使った事無いけど。 度数からラジアンに変換して計算する限り、誤差が発生する。 計算結果が小数点以下15位まで求められるのに、それよりもずっと低い精度でπが定義されてるとか。 十分な精度でπが定義されていれば、計算結果を修正して表示する処理系もある。(ような気がする) もし、sin(30)と指定できて、0.49999616987256が帰って処理系があるとすれば、次のような感じではないだろうか。 ・内部的には30°をラジアンに変換している ・変換に使用するπは3.14159と定義されている ・求まる答えは0.49999961698725570...である ・有効桁は小数点以下15位までなので、16位で四捨五入し、0.49999616987256が返ってくる。 もし、有効桁数が小数点以下5位あたりまでであれば、四捨五入されて0.5が返ってきたんじゃないかと。
304 名前:学生 [2008/07/03(木) 12:00:30 ] 本当にありがとうございます!
305 名前:デフォルトの名無しさん [2008/07/04(金) 14:10:01 ] BASICを勉強しているのは工業系の高校ですか? 普通科高校卒の僕はBASICの宿題がある事を今知りました
306 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 15:33:42 ] コラコラ、普通科でも数学でBASICやるぞ。
307 名前:デフォルトの名無しさん [2008/07/13(日) 16:34:53 ] 質問です。次のようなプログラムを組むにはどうしたらいいのでしょうか? どれか1つでもいいので分かる方お願いします。 1.八十八夜の月日を求めるプログラムをWHILE繰り返し分を使って作成し、実行しなさい 結果は次のように出力すること この問題の八十八夜は 月 日となります 2.2の平方根を出力しなさい(二分法による平方根の計算) δ=0.0001とする 3.2の平方根を出力しなさい(ニュートン・ラプソン法による平方根の計算) δ=0.0001とする
308 名前:デフォルトの名無しさん [2008/07/14(月) 00:43:52 ] 宿題してるんですけど質問させてください 10 for x=&h61 to &h7A 20 print chr$(x); 30 next x 40 end run abcdefghijklmnopqrstuvwxyz になるんですけど これを逆順に表示する方法ありますかね 10 for x=0 to 25 20 print chr$(122-x); 30 next x 40 end な感じでもできるっちゃできるんですけど アスキーコード?使ってできないですかね。 さっきベーシックはじめて触って苦戦してます。 教えていただきたいです。お願いいたします〜。
309 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 00:47:04 ] >>308 for x=&f7a to &h61 step -1 ってできなかったっけ?
310 名前:デフォルトの名無しさん [2008/07/14(月) 01:06:15 ] >>309 あ、できましたっ ありがとうございました!w
311 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 16:57:54 ] 等差数列のプログラムがうまくいかないので、御伝授下さい。 100 REM 等差数列 110INPUT N, A, D 120 S=N{2A+(N-1)*D}/2 130 PRINT "項数=" ; N 140 PRINT "初項=" ; A 150 PRINT "公差=" ; D 160 PRINT "総和=" ; S 170 END
312 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 17:26:19 ] >>311 > 110INPUT N, A, D # 110 INPUT N, A, D > 120 S=N{2A+(N-1)*D}/2 # S=N*(2*A+(N-1)*D)/2
313 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 18:33:58 ] >>312 ありがとうございます。 助かりました。
314 名前:デフォルトの名無しさん [2008/07/24(木) 16:28:20 ] C言語をBASICに翻訳するソフトをどこで手に入るか教えてください
315 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 22:24:59 ] >>314 www.google.co.jp/
316 名前:デフォルトの名無しさん mailto:sage [2008/07/24(木) 22:33:52 ] いやいや、まずないと思うし 万が一あったとしてもBASICとして読んでもわからないプログラムに変換されてるだろ
317 名前:デフォルトの名無しさん mailto:sage [2008/07/25(金) 00:22:26 ] まあ今時BASICなんて方言だらけだし Cと互換性のあるBASICを自分で作っちゃえばいいんじゃね?
318 名前:デフォルトの名無しさん mailto:sage [2008/07/25(金) 03:23:53 ] >>314 脳内。手作業でやる以外ないよ。
319 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 08:23:31 ] Cでマクロを使え #define if(x) IF (x) THEN #fefine for(x) FOR _Bas=1 TO x とか
320 名前:デフォルトの名無しさん mailto:sage [2008/07/27(日) 11:03:50 ] むしろアセンブラからBASICのpeek pokeに変換すればいいんでね?
321 名前:245 mailto:sage [2008/08/05(火) 18:51:42 ] 今日見たら間違えてたことに気が付いた 10 N=0 20 T=0 30 S=0 40 INPUT X 50 N=N+1 60 T=T+X 70 S=S+X^2 80 IF N=1 THEN 40 90 M=T/N 100 V=(S-T^2/N)/(N-1) 110 D= SQR V 120 PRINT "標本数",N 130 PRINT "平均",M 140 PRINT "分散",V 150 PRINT "標準偏差",D 160 GOTO 40 170 END N = 標本数, T = 総和, S = 平方和, X = 変数 M = 平均, V = 分散, D = 標準偏差
322 名前:デフォルトの名無しさん [2008/09/16(火) 06:31:43 ] 半径1の円に内接する正6・2^n角形の1辺の長さをa(n)とすると a(n)+1=√2-√4-a^2(n) である、この式を用いると、2から2に極めて近い値を引くことになり 計算の精度が失われる、そこでこの形を採用しないで a(n)+1=a(n)/√2+√4-a^2(n) を用いて計算する。 Q・この考え方にしたがってプログラムを作成し、πの近似値を計算せよ。 丸投げで悪いと思ってるんだ…でも自分じゃチンプンカンプンでさっぱりでした。 誰かわかる人頼みます。。。
323 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 02:35:56 ] >>322 10 A=1:FOR I=1 TO 10:A=A/SQR(2+SQR(4-A*A)):NEXT:PRINT "PI=";A*3072
324 名前:デフォルトの名無しさん [2008/09/26(金) 18:39:16 ] 誰か綺麗な花火のプログラム作ってくれ・・・・ 授業聞いてなかったから/(^o^)\ 学校ではN88互換BASICとかいうの使ってた
325 名前:デフォルトの名無しさん [2008/09/26(金) 23:29:19 ] だれか頼むぜ・・・・・・・・・・・・やはり無理なのだろうか
326 名前:デフォルトの名無しさん [2008/09/27(土) 07:57:53 ] >>325 まずは自分で作ってうpしてね!
327 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 01:59:15 ] >>324 打ち上げ花火のつもり、縦線はヒューと花火が上がっていくところを表現し その先端を中心に広がる3つの円はぱっと咲いた花火を表現 10 CLS 20 FOR I = 64 TO 576 STEP 64 30 X=I+12-24*RND : H = 50+RND(1)*100 : R = 50+RND(1)*50 40 CL = 1+RND(1)*7 80 LINE (X,400)-(X,H),CL 90 DR = R/3: R = DR : CF = 1+RND(1)*7 110 CIRCLE (X,H),R,CF 120 R = R + DR : CF = 1+RND(1)*7 130 CIRCLE (X,H),R,CF 150 R = R + DR : CF = 1+RND(1)*7 160 CIRCLE (X,H),R,CF 170 NEXT I 180 END まあ何だ。以下を参考に自分で作った方がよさげですよ。 ttp://www.geocities.co.jp/Bookend-Kenji/7741/kesayume/photo/fireworks_basic.htm
328 名前:デフォルトの名無しさん mailto:sage [2008/12/24(水) 06:29:24 ] >>327 ちなみにそれを実行するのに必要なのはどれですか? Tiny Basicと仮称(十進)Basicじゃエラーになるけど・・・
329 名前:デフォルトの名無しさん mailto:sage [2008/12/24(水) 08:17:35 ] >>329 N88-BASICか、99BASICならいくんじゃない? 試してないけど
330 名前:デフォルトの名無しさん mailto:sage [2008/12/24(水) 08:50:16 ] >>327 スクリーンモードはいったいいくつなのよ
331 名前:デフォルトの名無しさん mailto:sage [2008/12/24(水) 21:18:11 ] >>330 すいません。質問の意味すらわかりません。 BASIC面白そうだって思って始めようとしたのですがネット上に入門がほとんどない。 C言語の入門はネット上にいくらでもあるのに。 高校でやるならネット上に入門があってもいいような気もするけど。 で、何も知らないのにこのスレを見てロードしてみたと。 >>329 N88互換BASIC for Windowsでやっとこいった。 99BASICはコピペができなかったんで未確認。 たった13行であのグラフィックはすごいですね。 入門書探したけどJustBASICのチュートリアルぐらいしか見つからない。 英語だけど我慢してやってみる・・・
332 名前:デフォルトの名無しさん [2009/01/15(木) 06:14:14 ] サイコロを二つを10000回振って出た 合計の数(2〜12)を配列に記憶して、 最後に2〜12が何回出たか合計を表示するプログラム basicで作ってください 提出今日までです… サイコロ二つはa=rnd(6)+1:b=rnd(6)+1で作れって書いてあります さっぱりわからないです…お願いします。。
333 名前:デフォルトの名無しさん mailto:sage [2009/01/16(金) 08:21:34 ] >>332 10 DIM AR(10000) 20 FOR N=1 TO 10000 30 30 A=RND(6)+1:B=RND(6)+1 40 AR(N)=A+B 50 IF AR(N) >= 2 AND AR(N) <=12 THEN J=J+1 60 NEXT 70 PRINT J 80 END
334 名前:デフォルトの名無しさん [2009/01/21(水) 15:37:21 ] 3×3行列ABの成分を入力し、それらの和の行列C、差の行列D、積の行列E を計算するプログラムを作成せよ。 ※DIM文、FOR〜NEXT文を使うこと。 ※行列成分の入力にはFOR〜NEXT、とINPUT文(READ文)を組み 合わせること。 全くわからん・・・誰か・・・
335 名前:デフォルトの名無しさん [2009/01/21(水) 16:41:27 ] >>334 こういうことかな 1 rem 行列変数準備 2 dim a(3,3) 3 dim b(3,3) 4 dim c(3,3) 5 dim d(3,3) 6 dim e(3,3) 7 rem 行列A読み込み 8 for i = 1 to 3 9 for j = 1 to 3 10 read a(i,j) 11 next j 12 next i 13 rem 行列B読み込み 14 for i = 1 to 3 15 for j = 1 to 3 16 read b(i,j) 17 next j 18 next i 長いので続く
336 名前:デフォルトの名無しさん [2009/01/21(水) 16:42:21 ] >>335 続き 19 rem 行列計算 20 for i = 1 to 3 21 for j = 1 to 3 22 c(i,j) = a(i,j) + b(i,j) 23 d(i,j) = a(i,j) - b(i,j) 24 e(i,j) = a(i,j) * b(i,j) 25 next j 26 next i 50 rem 行列A-data 51 data 1,2,3 52 data 4,5,6 53 data 7,8,9 60 rem 行列B-data 61 data 1,2,3 62 data 4,5,6 63 data 7,8,9
337 名前:デフォルトの名無しさん [2009/01/21(水) 16:53:09 ] >>336 続き input文を使うなら 10 read a(i,j) を 10 input "行列A(";i;",";j;")=",a(i,j) 16 read b(i,j) を 16 input "行列B(";i;",";j;")=",b(i,j) にして 50 以下のdataを削除
338 名前:デフォルトの名無しさん [2009/01/21(水) 17:27:01 ] >>336 積の計算間違えた 19〜26をこちらに修正 19 rem 行列計算 20 for i = 1 to 3 21 for j = 1 to 3 22 c(i,j) = a(i,j) + b(i,j) 23 d(i,j) = a(i,j) - b(i,j) 24 for k = 1 to 3 25 e(i,j) = e(i,j) + a(i,k) * b(k,j) 26 next k 27 next j 28 next i
339 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 17:36:00 ] 自然数k,p,qについて k=mp+nq(m,nは「0以上の整数」)を満たす(m,n)の組の数をv(k)とするとき p=3, q=7, kが1から100までのときの結果vの一覧を出力したいです どのように書いたらいいですか?
340 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 17:59:15 ] >>334-338 ありがとうございます神様
341 名前:デフォルトの名無しさん [2009/01/21(水) 18:27:01 ] >>339 v(k)に複数のn,mがある可能性があるので 条件に一致した時に常時表示していくって感じで こんなのは? 1 p = 3 2 q = 3 3 k_hit = 100 4 m_max = 100 5 n_max = 100 6 for m = 0 to m_max 7 for n = 0 to n_max 8 k = m * p + n * q 9 if k <= k_hit then print "k=";k;" m=";m;" n=";n 10 next n 11 next m
342 名前:デフォルトの名無しさん [2009/01/21(水) 18:35:13 ] >>341 微修正 2 q=7 9 if k=> 1 and k <= k_hit then print "k=";k;" m=";m;" n=";n
343 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 19:16:42 ] 勝手に仕様を変更しないでくださいw
344 名前:デフォルトの名無しさん [2009/01/21(水) 19:29:26 ] 表示されてるのがv(k)の一覧になってるんじゃないの? 1 p = 3 2 q = 7 3 k_hit = 100 4 m_max = 100 5 n_max = 100 6 dim v$(100) 7 for m = 0 to m_max 8 for n = 0 to n_max 9 k = m * p + n * q 10 if k => 1 and k <= k_hit then v$(k) = "(";m;",";n;") " 11 next n 12 next m 13 for k = 1 to k_hit 14 print "k=";k;" ";v$(k) 15 next
345 名前:デフォルトの名無しさん [2009/01/21(水) 19:35:34 ] >>344 6 dim v(100) 10 if k => 1 and k <= k_hit then v(k) = v(k) + 1 14 print "k=";k;" ";v(k) 組み合わせの個数だけが知りたいのなら上記3ヶ所をこのように変更するだけ
346 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 11:38:14 ] v$(k)の有効な要素数ってsize(v$(k))みたいな方法で取れないのかな
347 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 13:38:12 ] >>344 上書きして情報減ってるような
348 名前:デフォルトの名無しさん [2009/01/22(木) 14:28:32 ] >>344 >>347 の言う通り 直すなら 10 if k => 1 and k <= k_hit then v$(k) = v$(k) + "(";m;",";n;") " とでもすべきだな
349 名前:デフォルトの名無しさん [2009/01/22(木) 20:22:42 ] お願いします。 標準体重と実際の体重に対するコメントを表示するプログラムを作成する。 入力情報:名前name、身長(cm)h、体重(kg)w 出力情報:標準体重sw、コメント プログラムの終了:名前が"end"のとき終了 標準体重:身長(m)^2*22 (コメント) −20%未満:やせすぎ −20%以上−10%未満:やややせている −10%以上10%未満:正常 10%以上20%未満:やや太っている 20%以上:太りすぎ
350 名前:デフォルトの名無しさん [2009/01/23(金) 14:58:25 ] 10 REM 標準体重計算 20 INPUT "名前=";NAME$ 30 INPUT "身長(cm)=";H 40 INPUT "体重(kg)=";W 50 DEF_W = (H/100)^2 * 22 60 PRINT "標準体重=";DEF_W 70 CH_W = ((W / DEF_W) - 1) * 100 80 IF CH_W < -20 THEN PRINT "やせすぎ" 90 IF CH_W => -20 AND CH_W < -10 THEN PRINT "やややせている" 100 IF CH_W => -10 AND CH_W < 10 THEN PRINT "正常" 110 IF CH_W => 10 AND CH_W < 20 THEN PRINT "やや太っている" 120 IF CH_W => 20 THEN PRINT "太りすぎ" 130 IF NAME$ <> "end" THEN 20 もしかしたら 出題者の意図によっては 70 CH_W = W - DEF_W なのかもしれないが、コメントの判断基準が%(割合)なので このようにしてある 何かと疑問の残る問題文ではあったがたぶんこんな感じだと思う ↓↓↓疑問点↓↓↓ ・コメントを出力するための値(BMI)が指定されていない コメント出力には BMI=体重(kg)/身長(m)^2 がよく用いられる BMIについての参考資料 ja.wikipedia.org/wiki/%E6%A8%99%E6%BA%96%E4%BD%93%E9%87%8D www.e-na.co.jp/passage/chek/ www11.plala.or.jp/jitensya-tuukin/diet/diet13_1.htm
351 名前:デフォルトの名無しさん [2009/01/25(日) 14:59:37 ] 349です。 >>350 ありがとうございました。
352 名前:デフォルトの名無しさん [2009/01/31(土) 14:13:27 ] A B C 合計 平均 1 80 90 85 2 75 87 54 3 95 78 45 4 58 98 85 合計 平均 この、縦横の合計平均を十進BASICで誰かお願いできないでしょうか? 月曜にテストあるんで・・・
353 名前:デフォルトの名無しさん [2009/02/12(木) 18:45:39 ] f(x)=x^4-2.03790x^3-15.4245x^2+15.6696x+35.4936=0 の最大解をニュートン法で求めよ。 という課題が出て困ってます。 誰か教えてください。 無理ならニュートン法での4次方程式の解き方 だけでもいいので教えてください。
354 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:44:16 ] >>353 十進数BASIC用 100 LET X=5 110 LET E=1E-5 120 DO 130 LET X0=X 140 LET FX0=X^4-2.03790*X^3-15.4245*X^2+15.6696*X+35.4936 150 LET FDX=4*X^3+3*( -2.03790) *X^2+2*( -15.4245) *X+15.6696 160 LET X=X0-FX0/FDX 170 LET FX=X^4-2.03790*X^3-15.4245*X^2+15.6696*X+35.4936 180 PRINT X ;FX 190 LET DFX = ABS(FX-FX0) 200 LOOP WHILE DFX > E 210 END
355 名前:デフォルトの名無しさん [2009/02/15(日) 12:19:52 ] >>354 ありがとうございました しかし110行で「Eをここに書けません」と出たので110行目を消したできたんですけど 110行目を消しても問題ないですかね?
356 名前:デフォルトの名無しさん [2009/02/15(日) 12:23:39 ] >>354 あと一応結果は4.・・・というのが左に7個と右にいろいろ出ました
357 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 19:01:31 ] それは本気で言ってるのか? 計算ループの終了条件に使われてるんだから、消して良いわけないだろ。
358 名前:デフォルトの名無しさん [2009/02/15(日) 20:03:39 ] でも消さないと実行できなかったんですけど・・・ ちなみに十進ベーシックです
359 名前:デフォルトの名無しさん [2009/02/15(日) 20:08:46 ] すみません今、実行できました。 LET E=1 E-5 ^ここにスペースを入れてしまったので実行できなかったんですね ありがとうございました
360 名前:デフォルトの名無しさん [2009/02/15(日) 20:21:10 ] 次の連立一次方程式の解をGaussの消去法で求めよ。(有効数字8桁) 3421a+1234b+736c+124d=365 1202a+3575b+874c+210d=256 422a+543b+3428c+428d=444 116a+256b+488c+3627d=868 というのもあるのですが、よかったら教えてくれませんか?
361 名前:デフォルトの名無しさん [2009/02/15(日) 20:23:04 ] すみません 359の「ここ」というのはE=1とE-5の間のことです
362 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 15:08:53 ] いまだに BASIC の宿題ってポケコン?
363 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:00:09 ] >>360 長いのでC宿題スレのロダに上げといた。結果が科学的表記法で表示されるのは 有効数字8桁で表示するため、7.5102566E-02=7.5102566*10^-2=0.075102566 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8891.txt
364 名前:デフォルトの名無しさん [2009/02/17(火) 18:45:53 ] >>362 高校の選択学習とかいう留年にかかわる面倒な課題ですわ
365 名前:デフォルトの名無しさん [2009/02/17(火) 18:47:24 ] >>363 ありがとうございます 一通り終わってまたわからなかったら聞きに来ますね
366 名前:デフォルトの名無しさん [2009/02/17(火) 21:37:40 ] >>362 今時ポケコンは無いだろ、N88互換BASICとか十進数BASIC辺りじゃね。
367 名前:デフォルトの名無しさん [2009/02/20(金) 22:16:10 ] ファイルに文字列で CHAR$(00) を混ぜて出力しようとしたけど無理だった。 BASICじゃー &h00 をファイルに出力するって出来なかったのかぁ。
368 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 18:26:55 ] ファイルに文字列で CHA$(00) を混ぜて出力できた。
369 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 16:34:13 ] CHR$ のことを言ってるんだろうか…。
370 名前:デフォルトの名無しさん [2009/04/28(火) 07:15:12 ] >>360 答え出ますた a= 0.051810637 b= -0.014019252 c= 0.067333510 d= 0.223948590 です。
371 名前:デフォルトの名無しさん [2009/07/19(日) 01:02:31 ] 10 input "n,b";n,b 20 x=1 30 f=x^n-b 40 d1=n*x^(n-1) 50 x1=x-f/d1 60 e=1*10^(-6) 70 if abs(f)<e then goto 100 80 x=x1 85 print x 90 goto 30 100 end ニュートン法でbのn乗根を求めるプログラム。 これを、bを与えたときx/(x^2+1)=bとなるxを求めるプログラムに書き換えなさい。 また、そのように改変した理由も述べよ。 この問題、わかる人いますか?;;
372 名前:デフォルトの名無しさん mailto:sage [2009/07/19(日) 10:44:39 ] 低脳
373 名前:デフォルトの名無しさん [2009/07/19(日) 13:11:42 ] f(x) = x^n - b を f(x) = x/(x^2 + 1) - b に d1(x) = n*x^(n - 1) を d1(x) = 1/(x^2 + 1) - 2*x^2*/((x^2 + 1)^2)に 変えたらいいんじゃね? でも b > 0.5 や b < -0.5 では 解けないかもな
374 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 20:26:02 ] すみません 問3. M個のデータのうち、その2番目の小さいデータと同じデータの個数を求めるアルゴリズムの流れ図を示せ。 という問題なんですが、だれか簡単に説明してくれませんか(´・ω・`)
375 名前:デフォルトの名無しさん [2009/07/27(月) 01:24:57 ] >>374 プログラムでいうと ↓ な具合です (defun countm (l) (let ((n (car (remove (car (sort l #'<)) l)))) (length (remove-if #'(lambda (x) (/= x n)) l)))) 仮に >(defvar d '(3 9 8 0 8 0 6 6 8 2 6 6 1 4 0 9 1 5 1 8 9 7 1 8 8 1 5 5 8 5)) >(countm d) とすると 5 > となります。
376 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 01:46:25 ] ↑スレタイ読めバカ
377 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 06:55:43 ] BASIC最近さわってねーから 「M個のデータのうち、その2番目の小さいデータと同じデータの個数を求める」関数って無かったっけ? それがあれば f=「 M個のデータのうち、その2番目の小さいデータと同じデータの個数を求める」 っておいて M個のデータ→f→2番目の小さいデータと同じデータの個数 になるんだけど
378 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 09:31:29 ] @M個のデータの全部を検索して一番小さいデータの値を求める。 AM個のデータの全部を検索して二番目に小さいデータの値を求める。 BM個のデータの全部を検索して二番目に小さいデータの個数を求める。 もっと効率の良いアルゴリズムがあるのかもしれん
379 名前:デフォルトの名無しさん [2009/07/30(木) 12:41:36 ] basicって今時文法を覚えてる人いないよね
380 名前:デフォルトの名無しさん mailto:sage [2009/07/30(木) 13:09:51 ] BASICの文法っても、10個ほどのコマンドを覚えるだけだから.... 関数なんかはそのつど取説を参照するし
381 名前:デフォルトの名無しさん mailto:sage [2009/07/30(木) 13:13:53 ] max1=a(1) : max2 = a(1) : temp for i=2 to m if a(i) > max1 then temp = max1 : max1 = a(i) : max2 = temp if a(i) > max2 and a(i) < max1 then max2 = a(i) next i
382 名前:デフォルトの名無しさん [2009/08/02(日) 02:01:54 ] 10 dim a(10,11) 20 m=3 30 n=m+1 40 for i=1 to m 50 for j=1 to n 60 read d 70 a(i,j)=d 80 next j 90 next i 100 for k=1 to m 110 p=a(k,k) 120 for j=k to n 130 a(k,j)=a(k,j)/p 続く…
383 名前:デフォルトの名無しさん [2009/08/02(日) 02:02:55 ] >>382 続き 140 next j 150 for i=1 to m 160 if (i-k)=0 then goto 210 170 a1=a(i,k) 180 for j=k to n 190 a(i,j)=a(i,j)-a1*a(k,j) 200 next j 210 next i 220 next k 230 for i=1 to m 240 print "x(";i;")=",a(i,n) 250 next i 260 end 270 data 2,1,-3,1,4,1,-2,4,3,2,-1,6 問:4元の連立方程式を実際に解いてみよ。 またこのプログラムで計算できない連立方程式の例を与え,その理由を述べよ。 わかる方、お願いします!!
384 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 13:36:42 ] とりあえず解けるかどうかは実行してみればいいとして 不能解か多重解か作ればいいの? x+y+z+w=1 2x+2y+2z+2w=2 3x+3y+3z+3w=3 4x+4y+4z+4w=4 とか?
385 名前:デフォルトの名無しさん [2009/08/03(月) 00:59:59 ] >>384 >>382-383 です 回答ありがとうございます! 不能解や多重解を適当に作ればいいんですね! あと、4元の連立方程式を解いてみよということは、270のdataに何か値を適当に入れるんですか?
386 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 15:36:56 ] >>374 亀レスだが、処理方法案。 数値を一つずつ取り出し、その時点までで判っている、小さい方の3つの数値セットを持つ。 入力が '(3 9 8 0 8 0 6 6 8 2 6 6 1 4 0 9 1 5 1 8 9 7 1 8 8 1 5 5 8 5)なら、 3 <--- 3 3 9 <--- 9 3 8 9 <--- 8 0 3 8 <--- 0 直後の8,0は数値セットを入替不要 0 3 6 <--- 6 以下同様 0 2 3 <--- 2 0 1 2 <--- 1 上記より小さい方から2番目の数値は「1」と判る。 上記操作中に、小さい方3つの出現回数を都度数えておけば良い。 メリットは自分で考えてくれ。
387 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:08:37 ] >>385 最近basic触ってないからうろ覚えだけど read文はdata文を順番に読んでいくだけのハズだったし,readした値をa(i,j)に直接代入している(60-70行)し, 40-90行を見るとa(行数,列数)になっているので, ... 20 m=4 ... 270 data 1,1,1,1, 1 280 data 2,2,2,2, 2 290 data 3,3,3,3, 3 300 data 4,4,4,4, 4 とか書けばいいのでは
388 名前:デフォルトの名無しさん [2009/08/25(火) 10:31:14 ] Visual Basic の課題で困っております。 誰かお答えください。本当に助けてください。 1.Visual Basicの関数で数値を文字に直すCStr()とStr()の違いについて 2.戻り値の違いが確認できる方法を考え、戻り値の違いについて実際に確認し、 その確認方法と違いを具体的に述べよ。 注意:実際にやったことと、確認した違いを簡潔かつ具体的に書くこと。 3.下記の計算結果などから、Visual Basicで計算できる数値の桁数について考察をまとめ、 何故そのような制限があるかについて理由を答えよ 1) 48 x 100 - 81 2) 12 ÷ 9.3 x 247 3) 0.2 - 12 ÷ 69 4) -12 ÷ 100 + 100
389 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:11:37 ] str は 古き懐かし BASIC (VisualじゃないBASIC) のころからあった関数だよな。 過去との互換性のために残してある、ってのが本音なんじゃないかな。 Str と Cstr の違いは、ヒント:先頭1文字目に違いがある。あとはマニュアルを読めカス!
390 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:16:41 ] マルチポスト報告スレ pc12.2ch.net/test/read.cgi/tech/1251165265/ ttp://pc12.2ch.net/test/read.cgi/tech/1225268851/688 ttp://pc12.2ch.net/test/read.cgi/tech/1158410544/183 ttp://pc12.2ch.net/test/read.cgi/tech/1245309571/793 ttp://pc12.2ch.net/test/read.cgi/tech/1136788500/388 ttp://pc12.2ch.net/test/read.cgi/tech/1200175247/601 ttp://pc12.2ch.net/test/read.cgi/tech/1249687283/408 ttp://pc12.2ch.net/test/read.cgi/tech/1239996587/711 ttp://pc12.2ch.net/test/read.cgi/tech/1248487404/279 ttp://pc12.2ch.net/test/read.cgi/tech/1193667819/60 ttp://pc12.2ch.net/test/read.cgi/tech/1164783092/937 ttp://pc12.2ch.net/test/read.cgi/tech/1206835319/963 ttp://pc12.2ch.net/test/read.cgi/tech/1247937958/547 ttp://pc12.2ch.net/test/read.cgi/tech/1247636661/861 ttp://pc12.2ch.net/test/read.cgi/tech/1249140049/420
391 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 11:19:29 ] DEF FNCSTR$(A!) = MID$(STR$(A!), 2+(A!<0)) こんな感じだっけ・・・うろ覚え
392 名前:デフォルトの名無しさん mailto:sage [2009/08/25(火) 12:29:06 ] >>388 マルチすんな
393 名前:デフォルトの名無しさん [2009/08/26(水) 21:19:54 ] 十進BASICでのコンビネーションの計算をお願いします!!
394 名前:デフォルトの名無しさん [2009/09/03(木) 10:47:52 ] BASIC繁栄時代があったらしい
395 名前:デフォルトの名無しさん [2009/09/04(金) 18:54:18 ] 変数名.N$ って、何を指したっけ?
396 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 19:42:33 ] $は文字変数を意味する。
397 名前:デフォルトの名無しさん [2009/09/05(土) 19:40:10 ] >>393 つ COMB(n,r)
398 名前:デフォルトの名無しさん [2009/09/23(水) 12:28:54 ] なあ、セーブ機能付きレジ打ちのプログラム打ちたいんだが お前らならどんなプログラム打つ?
399 名前:デフォルトの名無しさん mailto:sage [2009/09/23(水) 12:42:45 ] お前はプログラミングに向いてない
400 名前:デフォルトの名無しさん [2009/09/23(水) 16:38:53 ] できたらやってあげたいがな…
401 名前:デフォルトの名無しさん mailto:sage [2009/09/26(土) 18:41:31 ] >>398 テストの前日になって質問ですかw とりあえず学校こなくていいよ
402 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 17:37:29 ] 覆面算 ルール1 文字はそれぞれの桁の文字を表す ルール2 異なる文字は異なる数字を表し、同じ文字は同じ数字を表す ルール3 左端の数字は0ではない ルール4 (パズルとしては)答えが一つとなる 下のプログラムはルール2を完全に考慮していない。 個々の文字は互いに異なるという条件があるからである。 この条件を取り入れるにはこのプログラムをどのように 直したらよいか。該当箇所の変更前と変更後を答えよ。 Option Explicit Sub ex3() Dim a As Integer, b As Integer, c As Integer, d As Integer Dim x As Integer, y As Integer, z As Integer For a = 1 To 9 For b = 0 To 9 For c = 0 To 9 For d = 1 To 9 x = a * 100 + b * 10 + b y = d * 100 + d * 10 + c z = a * 1000 + a * 100 + a * 10 + d If x + y = z Then MsgBox "a=" & a & ", b = " & b & ", c = " & c & ", d = " & d End If Next d Next c Next b Next a End Sub
403 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 16:39:57 ] @subを用いて2つの分母の異なった(2/3+5/7など)分数の和を計算するプログラムを作成せよ。 実行結果は約分すること A Functionを用いてヘロンの公式を実装せよ。 三辺の長さから3角形の面積を求める ただし、3編の長さより三角形が成立しない場合は、除外する仕様とせよ
404 名前:デフォルトの名無しさん [2009/10/03(土) 17:34:27 ] age
405 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 17:56:38 ] subとかFunctionなんてBASICにあったっけ VBならしね
406 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 18:21:41 ] >>403 BASICは方言が多いから環境を明示すべきだぜ。Aはこんな感じで(十進数BASIC用) 100 !問題2 ヘロンの公式 110 FUNCTION HERON(A,B,C) 120 LET S=(A+B+C)/2 130 LET S=S*(S-A)*(S-B)*(S-C) 140 IF S<0 THEN !三角形で無いなら-1を返す 150 LET HERON=-1 160 ELSE !三角形なら面積を返す 170 LET HERON=SQR(S) 180 END IF 190 END FUNCTION 200 PRINT "3辺の長さ(例 3,4,5):" 210 INPUT A,B,C 220 LET S=HERON(A,B,C) 230 IF S >=0 THEN 240 PRINT "面積:"; S 250 ELSE 260 PRINT "三角形ではない" 270 END IF 280 END
407 名前:デフォルトの名無しさん mailto:sage [2009/10/03(土) 20:17:34 ] 面積0なら三角形じゃないだろうという本質ではないとこに突っ込んでみる
408 名前:デフォルトの名無しさん [2009/10/03(土) 22:48:57 ] そうっすね
409 名前:デフォルトの名無しさん mailto:sage [2009/10/04(日) 00:19:56 ] 本質的なところを突っ込んでください。 >>406 だと変な値を入れても除外せずに面積計算しちゃう事があるのよね。
410 名前:デフォルトの名無しさん [2009/10/06(火) 11:17:08 ] . 1. HTML で検索した結果 1〜10件目 / 約5,040,000,000件 . 2. PHP で検索した結果 1〜10件目 / 約2,970,000,000件 . 3. Java...... で検索した結果 1〜10件目 / 約 835,000,000件 . 4. Forth. で検索した結果 1〜10件目 / 約 323,000,000件 . 5. Ruby.. で検索した結果 1〜10件目 / 約 275,000,000件 . 6. perl..... で検索した結果 1〜10件目 / 約 245,000,000件 . 7. Python... で検索した結果 1〜10件目 / 約 204,000,000件 . 8. pascal... で検索した結果 1〜10件目 / 約 170,000,000件 . 9. Delphi で検索した結果 1〜10件目 / 約 127,000,000件 10. VisualBasic...で検索した結果 1〜10件目 / 約 121,000,000件 11. lisp... で検索した結果 1〜10件目 / 約. 26,700,000件 12. fortran で検索した結果 1〜10件目 / 約. 21,300,000件 13. COBOL で検索した結果 1〜10件目 / 約. 18,500,000件 14. HSP で検索した結果 1〜10件目 / 約. 12,300,000件 15. FreeBasic.. で検索した結果 1〜10件目 / 約 6,320,000件 16. Tcl/Tk. で検索した結果 1〜10件目 / 約 4,940,000件 17. QBasic で検索した結果 1〜10件目 / 約 4,190,000件 18. VisualC.... で検索した結果 1〜10件目 / 約 1,360,000件 19. DarkBASIC. で検索した結果 1〜10件目 / 約 1,320,000件 ← ここ 20. BasicStudio で検索した結果 1〜10件目 / 約 304,000件 21. N88basic. で検索した結果 1〜10件目 / 約 215,000件 22. f-basic で検索した結果 1〜10件目 / 約 109,000件 23. ActiveBasic で検索した結果 1〜10件目 / 約. 89,800件 24. 99BASIC.... で検索した結果 1〜10件目 / 約. 11,500件 3Dprogramming で検索した結果 1〜10件目 / 約794,000件 2Dprogramming で検索した結果 1〜10件目 / 約. 57,400件 intel で検索した結果 1〜10件目 / 約729,000,000件 amd で検索した結果 1〜10件目 / 約355,000,000件
411 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 18:37:56 ] . 4. Forth. Wwwww
412 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 18:47:27 ] 懐かしくてMindのサイト行ってみたけど 4番人気にしては寂しい状態だなw 正確にはForthじゃないけどw
413 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 19:16:10 ] pc.watch.impress.co.jp/img/pcw/docs/319/824/html/328.jpg.html
414 名前:デフォルトの名無しさん mailto:sage [2009/10/06(火) 19:17:21 ] pc.watch.impress.co.jp/img/pcw/docs/319/824/html/333.jpg.html
415 名前:デフォルトの名無しさん [2009/10/07(水) 14:59:15 ] すみません、プログラム超素人なんですけど、VisualBasicの質問もここでいいのでしょうか…? VisualBasic2008ExpressEditionで、フィボナッチ数列の剰余の周期性の長さを求めるプログラムを組んだんですが、 一部正常に動作してくれない。詳しい方がいたら、修正点を教えてもらえないでしょうか。 プログラムは以下の通りなんだけど、周期の長さが80以上になるような場合だと正常に動作してくれない… どうか修正点の指摘よろしくです。。 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim a(1000), b(1000), c, n, x a(1) = 1 : a(2) = 1 : n = 2 x = Val(TextBox1.Text) Do n = n + 1 Label1.Text = n a(n) = a(n - 2) + a(n - 1) Label2.Text = a(n) b(n) = a(n) Mod x Label3.Text = b(n) a(n + 1) = a(n - 1) + a(n) Label4.Text = a(n + 1) b(n + 1) = a(n + 1) Mod x Label5.Text = b(n + 1) If b(n) * b(n + 1) = 1 Then c = n - 1 Exit Do End If Loop Label6.Text = c End Sub End Class
416 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 16:48:34 ] ステップ実行しろ
417 名前:デフォルトの名無しさん [2009/10/07(水) 17:54:29 ] >>416 ステップの実行って…?
418 名前:デフォルトの名無しさん [2009/10/07(水) 18:42:17 ] homepage1.nifty.com/rucio/main/dotnet/shokyu/standard41.htm
419 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 18:51:15 ] BASIC以前の問題だな
420 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 19:59:00 ] VBってホント、ソースが醜いねぇ〜w
421 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 20:27:51 ] ↑ { } 中カッコが無いとプログラミングできないひと?
422 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 20:39:56 ] いいえ、行番号が無いとプログラミングできないひとです。
423 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 22:37:16 ] いいえ、APIがないとプログラミングができないイキモノです(大爆笑)
424 名前:デフォルトの名無しさん mailto:sage [2009/10/07(水) 23:29:02 ] (核)
425 名前:デフォルトの名無しさん [2009/10/08(木) 09:27:39 ] お前ら解答出来ないなら喋んなよ
426 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 09:40:37 ] なんだ回答でてんじゃん
427 名前:デフォルトの名無しさん mailto:sage [2009/10/09(金) 09:17:19 ] >>425 そこまでロジック組めるなら、今度はデバックの仕方を学ぶべきだ つか、>>415 な汚いソースなんか誰も追う気にはなれない
428 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 06:00:51 ] pc.watch.impress.co.jp/docs/column/nishikawa/20091013_320336.html
429 名前:デフォルトの名無しさん mailto:sage [2009/10/13(火) 18:49:14 ] >>415 > プログラムは以下の通りなんだけど、周期の長さが80以上になるような場合だと正常に動作してくれない… "期待する正常動作、実際の動作"が不明だが、エスパーしてみると、数列の数値が大きすぎてオーバーフローしてると思われ。 周期80なら連続する2数値は、↓のはず。 8670007398507948658051921, 14028366653498915298923761
430 名前:デフォルトの名無しさん mailto:sage [2009/10/15(木) 15:43:14 ] pc.watch.impress.co.jp/docs/news/20091015_321777.html
431 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 05:05:08 ] Yahoo!プログラミング言語検索ランキング(今回2009/10/16、前回2009/10/12) 《一般カテゴリ》 . 1(. 1) HTML..... 約5,030,000,000件(約5,020,000,000件)+ . 2(. 2) PHP... 約2,980,000,000件(約3,000,000,000件)-- . 3(--) BASIC.. 約1,580,000,000件(....------------- )0 . 4(. 3) JAVA.. 約 822,000,000件(約 832,000,000件)-- . 5(--) CGI. 約 551,000,000件(....------------- )0 . 6(--) C言語(*1). 約 399,000,000件(....------------- )0 (*1)C/C++とC#の検索件数の合計 . 7(. 4) FORTH.. 約 323,000,000件(約 324,000,000件)- . 8(. 6) PERL.. 約 245,000,000件(約 245,000,000件)0 . 9(. 7) PYTHON.. 約 213,000,000件(約 209,000,000件)++ 10(. 8) PASCAL.. 約 168,000,000件(約 168,000,000件)0 11(. 9) DELPHI. 約 128,000,000件(約 128,000,000件)0 12(11) LISP 約. 26,000,000件(約. 26,600,000件)-- 13(12) FORTRAN. 約. 21,200,000件(約. 21,300,000件)- 14(13) COBOL..... 約. 16,800,000件(約. 17,100,000件)-- 15(--) PROLOG 約. 13,800,000件(....------------- )0 16(14) HSP 約. 12,300,000件(約. 12,400,000件)- 《BASIC言語カテゴリ》 . 1(--) VisualBasic... 約 120,000,000件(約 121,000,000件)- . 2(--) Hu-BASIC.. 約. 15,000,000件(....------------- )0 . 3(--) QBASIC.. 約 4,140,000件(約 4,160,000件)-- . 4(--) MSX-BASIC.....約 1,430,000件(....------------- )0 . 5(--) DarkBASIC . 約 1,310,000件(約 1,330,000件)-- . 6(--) CBM-BASIC. 約 944,000件(....------------- )0 . 7(--) BasicStudio 約 303,000件(約 302,000件)+ . 8(--) N88BASIC.. 約 219,000件(約 218,000件)+ . 9(--) X-BASIC... 約. 40,400件(....------------- )0 10(--) 99BASIC.... 約. 11,400件(約. 11,300件)+
432 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 09:24:07 ] だから何だと?
433 名前:デフォルトの名無しさん mailto:sage [2009/10/16(金) 10:13:47 ] 少数派では不安と考えるか、多数いると買い叩かれると考えるかで変わってくるんでは?
434 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 16:20:20 ] 50人のクラス(男子35人)から5人の委員をランダムに選ぶ。このとき選ばれた委員の中に男3人、女2人が入る確率をBASICで求めよ。 すいません、さっぱりわからないので教えてください。
435 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:43:37 ] >>431 疑問なんだがなぜ今FORTHなんだ?
436 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 21:43:34 ] >>434 まず、数学で問題をときます。 次にPC8801を起動してディスクを入れてリセットします。 BASICが起動したらautoと打ってリターン。 あとはBASICでプログラムを入力し F5を押します
437 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 17:10:24 ] >>434 Dim n(5) Randmize(Left$(Time$,2)) For i=0 To 10000 m=0 f=0 For j=1 To 5 n(j) = Int(Rnd()*50)+1 If n(j) > 36 Then f=f+1 Else m=m+1 Next j If m=3 And f=2 Then c=c+1 Print c*100/i Next
438 名前:デフォルトの名無しさん [2010/01/05(火) 09:38:21 ] 普通に公式使って解けばいいじゃん