08/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:デフォルトの名無しさん
08/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:デフォルトの名無しさん
08/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:デフォルトの名無しさん
08/09/26 18:39:16
誰か綺麗な花火のプログラム作ってくれ・・・・
授業聞いてなかったから/(^o^)\
学校ではN88互換BASICとかいうの使ってた
325:デフォルトの名無しさん
08/09/26 23:29:19
だれか頼むぜ・・・・・・・・・・・・やはり無理なのだろうか
326:デフォルトの名無しさん
08/09/27 07:57:53
>>325
まずは自分で作ってうpしてね!
327:デフォルトの名無しさん
08/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
まあ何だ。以下を参考に自分で作った方がよさげですよ。
URLリンク(www.geocities.co.jp)
328:デフォルトの名無しさん
08/12/24 06:29:24
>>327
ちなみにそれを実行するのに必要なのはどれですか?
Tiny Basicと仮称(十進)Basicじゃエラーになるけど・・・
329:デフォルトの名無しさん
08/12/24 08:17:35
>>329
N88-BASICか、99BASICならいくんじゃない?
試してないけど
330:デフォルトの名無しさん
08/12/24 08:50:16
>>327
スクリーンモードはいったいいくつなのよ
331:デフォルトの名無しさん
08/12/24 21:18:11
>>330
すいません。質問の意味すらわかりません。
BASIC面白そうだって思って始めようとしたのですがネット上に入門がほとんどない。
C言語の入門はネット上にいくらでもあるのに。
高校でやるならネット上に入門があってもいいような気もするけど。
で、何も知らないのにこのスレを見てロードしてみたと。
>>329
N88互換BASIC for Windowsでやっとこいった。
99BASICはコピペができなかったんで未確認。
たった13行であのグラフィックはすごいですね。
入門書探したけどJustBASICのチュートリアルぐらいしか見つからない。
英語だけど我慢してやってみる・・・
332:デフォルトの名無しさん
09/01/15 06:14:14
サイコロを二つを10000回振って出た
合計の数(2~12)を配列に記憶して、
最後に2~12が何回出たか合計を表示するプログラム
basicで作ってください
提出今日までです…
サイコロ二つはa=rnd(6)+1:b=rnd(6)+1で作れって書いてあります
さっぱりわからないです…お願いします。。
333:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/01/21 15:37:21
3×3行列ABの成分を入力し、それらの和の行列C、差の行列D、積の行列E
を計算するプログラムを作成せよ。
※DIM文、FOR~NEXT文を使うこと。
※行列成分の入力にはFOR~NEXT、とINPUT文(READ文)を組み
合わせること。
全くわからん・・・誰か・・・
335:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/01/21 17:59:15
>>334-338
ありがとうございます神様
341:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/01/21 19:16:42
勝手に仕様を変更しないでくださいw
344:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/01/22 11:38:14
v$(k)の有効な要素数ってsize(v$(k))みたいな方法で取れないのかな
347:デフォルトの名無しさん
09/01/22 13:38:12
>>344
上書きして情報減ってるような
348:デフォルトの名無しさん
09/01/22 14:28:32
>>344
>>347の言う通り
直すなら
10 if k => 1 and k <= k_hit then v$(k) = v$(k) + "(";m;",";n;") "
とでもすべきだな
349:デフォルトの名無しさん
09/01/22 20:22:42
お願いします。
標準体重と実際の体重に対するコメントを表示するプログラムを作成する。
入力情報:名前name、身長(cm)h、体重(kg)w
出力情報:標準体重sw、コメント
プログラムの終了:名前が"end"のとき終了
標準体重:身長(m)^2*22
(コメント)
-20%未満:やせすぎ
-20%以上-10%未満:やややせている
-10%以上10%未満:正常
10%以上20%未満:やや太っている
20%以上:太りすぎ
350:デフォルトの名無しさん
09/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についての参考資料
URLリンク(ja.wikipedia.org)
URLリンク(www.e-na.co.jp)
URLリンク(www11.plala.or.jp)
351:デフォルトの名無しさん
09/01/25 14:59:37
349です。
>>350
ありがとうございました。
352:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/02/12 18:45:39
f(x)=x^4-2.03790x^3-15.4245x^2+15.6696x+35.4936=0
の最大解をニュートン法で求めよ。 という課題が出て困ってます。
誰か教えてください。 無理ならニュートン法での4次方程式の解き方
だけでもいいので教えてください。
354:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/02/15 12:19:52
>>354
ありがとうございました しかし110行で「Eをここに書けません」と出たので110行目を消したできたんですけど
110行目を消しても問題ないですかね?
356:デフォルトの名無しさん
09/02/15 12:23:39
>>354
あと一応結果は4.・・・というのが左に7個と右にいろいろ出ました
357:デフォルトの名無しさん
09/02/15 19:01:31
それは本気で言ってるのか?
計算ループの終了条件に使われてるんだから、消して良いわけないだろ。
358:デフォルトの名無しさん
09/02/15 20:03:39
でも消さないと実行できなかったんですけど・・・
ちなみに十進ベーシックです
359:デフォルトの名無しさん
09/02/15 20:08:46
すみません今、実行できました。
LET E=1 E-5
^ここにスペースを入れてしまったので実行できなかったんですね
ありがとうございました
360:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/02/15 20:23:04
すみません
359の「ここ」というのはE=1とE-5の間のことです
362:デフォルトの名無しさん
09/02/16 15:08:53
いまだに BASIC の宿題ってポケコン?
363:デフォルトの名無しさん
09/02/17 01:00:09
>>360
長いのでC宿題スレのロダに上げといた。結果が科学的表記法で表示されるのは
有効数字8桁で表示するため、7.5102566E-02=7.5102566*10^-2=0.075102566
URLリンク(kansai2channeler.hp.infoseek.co.jp)
364:デフォルトの名無しさん
09/02/17 18:45:53
>>362
高校の選択学習とかいう留年にかかわる面倒な課題ですわ
365:デフォルトの名無しさん
09/02/17 18:47:24
>>363
ありがとうございます
一通り終わってまたわからなかったら聞きに来ますね
366:デフォルトの名無しさん
09/02/17 21:37:40
>>362
今時ポケコンは無いだろ、N88互換BASICとか十進数BASIC辺りじゃね。
367:デフォルトの名無しさん
09/02/20 22:16:10
ファイルに文字列で CHAR$(00) を混ぜて出力しようとしたけど無理だった。
BASICじゃー &h00 をファイルに出力するって出来なかったのかぁ。
368:デフォルトの名無しさん
09/02/21 18:26:55
ファイルに文字列で CHA$(00) を混ぜて出力できた。
369:デフォルトの名無しさん
09/02/23 16:34:13
CHR$ のことを言ってるんだろうか…。
370:デフォルトの名無しさん
09/04/28 07:15:12
>>360
答え出ますた
a= 0.051810637
b= -0.014019252
c= 0.067333510
d= 0.223948590
です。
371:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/07/19 10:44:39
低脳
373:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/07/26 20:26:02
すみません
問3. M個のデータのうち、その2番目の小さいデータと同じデータの個数を求めるアルゴリズムの流れ図を示せ。
という問題なんですが、だれか簡単に説明してくれませんか(´・ω・`)
375:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/07/27 01:46:25
↑スレタイ読めバカ
377:デフォルトの名無しさん
09/07/27 06:55:43
BASIC最近さわってねーから
「M個のデータのうち、その2番目の小さいデータと同じデータの個数を求める」関数って無かったっけ?
それがあれば f=「 M個のデータのうち、その2番目の小さいデータと同じデータの個数を求める」 っておいて
M個のデータ→f→2番目の小さいデータと同じデータの個数
になるんだけど
378:デフォルトの名無しさん
09/07/27 09:31:29
①M個のデータの全部を検索して一番小さいデータの値を求める。
②M個のデータの全部を検索して二番目に小さいデータの値を求める。
③M個のデータの全部を検索して二番目に小さいデータの個数を求める。
もっと効率の良いアルゴリズムがあるのかもしれん
379:デフォルトの名無しさん
09/07/30 12:41:36
basicって今時文法を覚えてる人いないよね
380:デフォルトの名無しさん
09/07/30 13:09:51
BASICの文法っても、10個ほどのコマンドを覚えるだけだから....
関数なんかはそのつど取説を参照するし
381:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/08/03 00:59:59
>>384
>>382-383です
回答ありがとうございます!
不能解や多重解を適当に作ればいいんですね!
あと、4元の連立方程式を解いてみよということは、270のdataに何か値を適当に入れるんですか?
386:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/08/25 11:11:37
str は 古き懐かし BASIC (VisualじゃないBASIC) のころからあった関数だよな。
過去との互換性のために残してある、ってのが本音なんじゃないかな。
Str と Cstr の違いは、ヒント:先頭1文字目に違いがある。あとはマニュアルを読めカス!
390:デフォルトの名無しさん
09/08/25 11:16:41
マルチポスト報告スレ
スレリンク(tech板)
スレリンク(tech板:688番)
スレリンク(tech板:183番)
スレリンク(tech板:793番)
スレリンク(tech板:388番)
スレリンク(tech板:601番)
スレリンク(tech板:408番)
スレリンク(tech板:711番)
スレリンク(tech板:279番)
スレリンク(tech板:60番)
スレリンク(tech板:937番)
スレリンク(tech板:963番)
スレリンク(tech板:547番)
スレリンク(tech板:861番)
スレリンク(tech板:420番)
391:デフォルトの名無しさん
09/08/25 11:19:29
DEF FNCSTR$(A!) = MID$(STR$(A!), 2+(A!<0))
こんな感じだっけ・・・うろ覚え
392:デフォルトの名無しさん
09/08/25 12:29:06
>>388
マルチすんな
393:デフォルトの名無しさん
09/08/26 21:19:54
十進BASICでのコンビネーションの計算をお願いします!!
394:デフォルトの名無しさん
09/09/03 10:47:52
BASIC繁栄時代があったらしい
395:デフォルトの名無しさん
09/09/04 18:54:18
変数名.N$ って、何を指したっけ?
396:デフォルトの名無しさん
09/09/04 19:42:33
$は文字変数を意味する。
397:デフォルトの名無しさん
09/09/05 19:40:10
>>393
つ COMB(n,r)
398:デフォルトの名無しさん
09/09/23 12:28:54
なあ、セーブ機能付きレジ打ちのプログラム打ちたいんだが
お前らならどんなプログラム打つ?
399:デフォルトの名無しさん
09/09/23 12:42:45
お前はプログラミングに向いてない
400:デフォルトの名無しさん
09/09/23 16:38:53
できたらやってあげたいがな…
401:デフォルトの名無しさん
09/09/26 18:41:31
>>398
テストの前日になって質問ですかw
とりあえず学校こなくていいよ
402:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/03 16:39:57
①subを用いて2つの分母の異なった(2/3+5/7など)分数の和を計算するプログラムを作成せよ。
実行結果は約分すること
②
Functionを用いてヘロンの公式を実装せよ。
三辺の長さから3角形の面積を求める
ただし、3編の長さより三角形が成立しない場合は、除外する仕様とせよ
404:デフォルトの名無しさん
09/10/03 17:34:27
age
405:デフォルトの名無しさん
09/10/03 17:56:38
subとかFunctionなんてBASICにあったっけ
VBならしね
406:デフォルトの名無しさん
09/10/03 18:21:41
>>403
BASICは方言が多いから環境を明示すべきだぜ。②はこんな感じで(十進数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:デフォルトの名無しさん
09/10/03 20:17:34
面積0なら三角形じゃないだろうという本質ではないとこに突っ込んでみる
408:デフォルトの名無しさん
09/10/03 22:48:57
そうっすね
409:デフォルトの名無しさん
09/10/04 00:19:56
本質的なところを突っ込んでください。
>>406だと変な値を入れても除外せずに面積計算しちゃう事があるのよね。
410:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/06 18:37:56
. 4. Forth. Wwwww
412:デフォルトの名無しさん
09/10/06 18:47:27
懐かしくてMindのサイト行ってみたけど
4番人気にしては寂しい状態だなw
正確にはForthじゃないけどw
413:デフォルトの名無しさん
09/10/06 19:16:10
URLリンク(pc.watch.impress.co.jp)
414:デフォルトの名無しさん
09/10/06 19:17:21
URLリンク(pc.watch.impress.co.jp)
415:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/07 16:48:34
ステップ実行しろ
417:デフォルトの名無しさん
09/10/07 17:54:29
>>416
ステップの実行って…?
418:デフォルトの名無しさん
09/10/07 18:42:17
URLリンク(homepage1.nifty.com)
419:デフォルトの名無しさん
09/10/07 18:51:15
BASIC以前の問題だな
420:デフォルトの名無しさん
09/10/07 19:59:00
VBってホント、ソースが醜いねぇ~w
421:デフォルトの名無しさん
09/10/07 20:27:51
↑
{ } 中カッコが無いとプログラミングできないひと?
422:デフォルトの名無しさん
09/10/07 20:39:56
いいえ、行番号が無いとプログラミングできないひとです。
423:デフォルトの名無しさん
09/10/07 22:37:16
いいえ、APIがないとプログラミングができないイキモノです(大爆笑)
424:デフォルトの名無しさん
09/10/07 23:29:02
(核)
425:デフォルトの名無しさん
09/10/08 09:27:39
お前ら解答出来ないなら喋んなよ
426:デフォルトの名無しさん
09/10/08 09:40:37
なんだ回答でてんじゃん
427:デフォルトの名無しさん
09/10/09 09:17:19
>>425
そこまでロジック組めるなら、今度はデバックの仕方を学ぶべきだ
つか、>>415な汚いソースなんか誰も追う気にはなれない
428:デフォルトの名無しさん
09/10/13 06:00:51
URLリンク(pc.watch.impress.co.jp)
429:デフォルトの名無しさん
09/10/13 18:49:14
>>415
> プログラムは以下の通りなんだけど、周期の長さが80以上になるような場合だと正常に動作してくれない…
"期待する正常動作、実際の動作"が不明だが、エスパーしてみると、数列の数値が大きすぎてオーバーフローしてると思われ。
周期80なら連続する2数値は、↓のはず。
8670007398507948658051921, 14028366653498915298923761
430:デフォルトの名無しさん
09/10/15 15:43:14
URLリンク(pc.watch.impress.co.jp)
431:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/16 09:24:07
だから何だと?
433:デフォルトの名無しさん
09/10/16 10:13:47
少数派では不安と考えるか、多数いると買い叩かれると考えるかで変わってくるんでは?
434:デフォルトの名無しさん
09/12/15 16:20:20
50人のクラス(男子35人)から5人の委員をランダムに選ぶ。このとき選ばれた委員の中に男3人、女2人が入る確率をBASICで求めよ。
すいません、さっぱりわからないので教えてください。
435:デフォルトの名無しさん
09/12/16 13:43:37
>>431
疑問なんだがなぜ今FORTHなんだ?
436:デフォルトの名無しさん
09/12/27 21:43:34
>>434
まず、数学で問題をときます。
次にPC8801を起動してディスクを入れてリセットします。
BASICが起動したらautoと打ってリターン。
あとはBASICでプログラムを入力し
F5を押します
437:デフォルトの名無しさん
10/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:デフォルトの名無しさん
10/01/05 09:38:21
普通に公式使って解けばいいじゃん