1 名前:BASIC mailto:fh [2006/01/09(月) 15:35:00 ] N人分のデータ(氏名、体重、身長、年齢)がDATA文で入力されているプログラムが ある。これを用いて次のプログラムをBASICで作成しなさい 身長が160CM以上で170cm未満の人の名前を表示する
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 ありがとうございます 一通り終わってまたわからなかったら聞きに来ますね