1 名前:BASIC mailto:fh [2006/01/09(月) 15:35:00 ] N人分のデータ(氏名、体重、身長、年齢)がDATA文で入力されているプログラムが ある。これを用いて次のプログラムをBASICで作成しなさい 身長が160CM以上で170cm未満の人の名前を表示する
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のチュートリアルぐらいしか見つからない。 英語だけど我慢してやってみる・・・