N人分のデータ(氏名、体重、身長、年齢)がDATA文で入力されているプログラムが
ある。これを用いて次のプログラムをBASICで作成しなさい
身長が160CM以上で170cm未満の人の名前を表示する
探検
BASICの宿題はお前にまかせた
■ このスレッドは過去ログ倉庫に格納されています
2006/01/09(月) 15:35:00
169デフォルトの名無しさん
2006/12/06(水) 10:34:52 >>168
tatalとはなでふおどろおどろしきこと哉
tatalとはなでふおどろおどろしきこと哉
170デフォルトの名無しさん
2006/12/06(水) 12:54:45 >>169
すいません、言ってる事がわかりません><
すいません、言ってる事がわかりません><
171デフォルトの名無しさん
2006/12/07(木) 07:33:16 > 何処か写し間違えがあるかもしれませんが
> tatal=total+arari
> tatal=total+arari
> tatal=total+arari
> tatal=total+arari
> tatal=total+arari
> tatal=total+arari
172デフォルトの名無しさん
2006/12/07(木) 09:53:38 >>171
その通りです。誰か助けてください><
その通りです。誰か助けてください><
173デフォルトの名無しさん
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
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以下の全ての完全数を、
プログラムを作って求めよ』
教えてくださいお願いします!!
それでも課題はやらなきゃいけない・・・・
誰か助けてください
その@
『入力された3桁の自然数aに対し、aの一の位、十の位、
百の位の和Sと、Sを3で割ったときの余りを表示する
プログラムを作れ』
そのA
『自然数nに対し、n以外の正の約数の和がnに等しいと
き、nを完全数という。10,000以下の全ての完全数を、
プログラムを作って求めよ』
教えてくださいお願いします!!
175Nw
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刻みとする)
自分でやるべきなのですが、分からなくて・・
早急に解答が欲しいのですが、教えて頂ける方がおられましたら
どうか宜しくお願いします
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デフォルトの名無しさん
2006/12/08(金) 02:56:23177デフォルトの名無しさん
2006/12/08(金) 02:58:25 >>175
10 PRINT "糞して寝ろ"
10 PRINT "糞して寝ろ"
178デフォルトの名無しさん
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
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)のグラフを描く
プログラムを教えてください。どうかお願いします。
xの値が0〜4変化したときの、関数f(x)=cos(x^2)のグラフを描く
プログラムを教えてください。どうかお願いします。
180デフォルトの名無しさん
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
! 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:22182デフォルトの名無しさん
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
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:28184デフォルトの名無しさん
2006/12/10(日) 19:09:21185デフォルトの名無しさん
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についてです。
本当に申し訳無いです・・・
問題文は、
1.xの値を-2〜2変化したときの、関数f(x)=sin(1/x)のグラフを作成しなさい。
2.xの値を0〜4変化したときの、関数f(x)=cos(x^2)のグラフを作成しなさい。
です。
この課題が出される前に説明されたことは、
locate、line、pset、circleについてです。
186デフォルトの名無しさん
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
>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デフォルトの名無しさん
2006/12/11(月) 19:56:50188デフォルトの名無しさん
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次方程式を解きなさい。
値は自作する。
どうかよろしくお願いします!
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デフォルトの名無しさん
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
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デフォルトの名無しさん
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 ←対角線の和
↑
列の和
どうしてもわかりません・・・
どうか宜しくお願いします。
魔方陣とは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デフォルトの名無しさん
2006/12/25(月) 23:17:33193デフォルトの名無しさん
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
>>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デフォルトの名無しさん
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 のマス目から外れていれば
補正するようにした方が良い。
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デフォルトの名無しさん
2006/12/26(火) 21:41:34196デフォルトの名無しさん
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という計算結果にすることができません。
どなたかお願いします。
どなたかBASICに詳しい方教えていただけないでしょうか。
電卓のプログラミングなんですが、
一応1+2=3や5×3=15のような簡単な計算はできるようになりました。
しかし、=のあとに数字を打って新しく計算を始めたり
(例えば1+2=7−8=という計算をしたとき、37−8=というようになってしまう)
1+2+3=という計算をするときに、1+2+と打った時点で電卓に3が表示されなくて、
3+3=6という計算結果にすることができません。
どなたかお願いします。
197デフォルトの名無しさん
2006/12/27(水) 15:43:43 >196
=を選んだ時点でStringに入れていて
そのまま計算を続行してるからですよ
計算処理時は計算対象が何の変数に入っているのか
解るようにしておきましょう
=を選んだ時点でStringに入れていて
そのまま計算を続行してるからですよ
計算処理時は計算対象が何の変数に入っているのか
解るようにしておきましょう
198デフォルトの名無しさん
2006/12/27(水) 16:15:19199デフォルトの名無しさん
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
簡単なことなようなのに、どうしてもできないのです。
”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
201200
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デフォルトの名無しさん
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
そこまで考えたのなら、そのまま書いて試してみればいいじゃない。
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
203200
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」と書くのでしょうか?。
ありがとうございます!!。
できてるっぽいです!!。
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」と書くのでしょうか?。
204200
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で正しいのでしょうか?。
f(x) =c/x-tan(x)おくと,f(x)の微分は,f'(x)=g(x) = -c/x^2-1/(cos(x))^2で正しいのでしょうか?。
205デフォルトの名無しさん
2007/01/07(日) 00:00:29206デフォルトの名無しさん
2007/01/17(水) 05:11:57 正月早々に近所の創価学会員一家が夜逃げしたことがわかりました。この夜逃げは私の住む地域で騒ぎになりました。
創価学会の人たちが「あの一家は信心が無かった」と宣伝して回っていますが真っ赤な嘘です。近所ではよく知られた熱心な信者でした。
羽振りの良い時期にはおだて上げて散々使いまわして、いざ破綻になれば他人事で切り捨てる。
創価学会というのは冷酷な組織だということがつくづくわかりました。
追記 アムウェイやスリムドカン等の代理店をやっていた時期もあったそうです。
http://money4.2ch.net/test/read.cgi/manage/1158633593/
創価学会の人たちが「あの一家は信心が無かった」と宣伝して回っていますが真っ赤な嘘です。近所ではよく知られた熱心な信者でした。
羽振りの良い時期にはおだて上げて散々使いまわして、いざ破綻になれば他人事で切り捨てる。
創価学会というのは冷酷な組織だということがつくづくわかりました。
追記 アムウェイやスリムドカン等の代理店をやっていた時期もあったそうです。
http://money4.2ch.net/test/read.cgi/manage/1158633593/
207デフォルトの名無しさん
2007/01/18(木) 13:27:41208デフォルトの名無しさん
2007/01/23(火) 23:44:57 xの値を0度〜360度、刻み10度で変化したときの、
関数f(x)=sin(x)、f(x)=cos(x)のグラフを作成しなさい。
(1つの画面に2つのグラフを描く、演算子はlocate、line、circle、psetのみ)
よろしくお願いします!!><
関数f(x)=sin(x)、f(x)=cos(x)のグラフを作成しなさい。
(1つの画面に2つのグラフを描く、演算子はlocate、line、circle、psetのみ)
よろしくお願いします!!><
209デフォルトの名無しさん
2007/01/24(水) 00:03:35 >演算子はlocate、line、circle、psetのみ
難しすぎて出来ません!!><
難しすぎて出来ません!!><
210208
2007/01/24(水) 00:28:59211デフォルトの名無しさん
2007/01/24(水) 01:14:01 >図形を描くために使う演算子がlocate、line、circle、psetのみ
難しすぎて出来ません!!><
難しすぎて出来ません!!><
212デフォルトの名無しさん
2007/01/24(水) 16:20:38 漸化式の計算ってどうすんの?
213デフォルトの名無しさん
2007/01/24(水) 22:26:06 >>212
つ for
つ 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
見よう見まねでプログラムを作っていますが、どうしてもコンパイルできません。
また、式の最初のπ以降のカッコ内は元の式では、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デフォルトの名無しさん
2007/01/25(木) 17:04:45216デフォルトの名無しさん
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
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デフォルトの名無しさん
2007/01/25(木) 21:05:55 >>213
遅かったがサンクスw
遅かったがサンクスw
219デフォルトの名無しさん
2007/01/27(土) 00:13:47 度々すみません。
前のプログラムを応用して、別のプログラムを作ったのですが、
tanx=c/xを計算する部分の組み込みがうまくいかず、どうしても計算結果が違ってしまいます。
お願いするばかりで恐縮なのですが、どうぞよろしくご教授ください。
前のプログラムを応用して、別のプログラムを作ったのですが、
tanx=c/xを計算する部分の組み込みがうまくいかず、どうしても計算結果が違ってしまいます。
お願いするばかりで恐縮なのですが、どうぞよろしくご教授ください。
220219
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
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
221217
2007/01/27(土) 01:57:24 問題点がわかりました。
級数の数を決定するステップでFor文を使用してしまった為に、
tanx=c/xがちゃんと計算できてないだけでした。
しかし、For文の他に何度も計算させるコマンドがわかりません。
どうしたら良いでしょうか?。
級数の数を決定するステップでFor文を使用してしまった為に、
tanx=c/xがちゃんと計算できてないだけでした。
しかし、For文の他に何度も計算させるコマンドがわかりません。
どうしたら良いでしょうか?。
222デフォルトの名無しさん
2007/01/27(土) 01:59:14 IF と GOTO 使え。
それが基本(w
それが基本(w
223デフォルトの名無しさん
2007/01/27(土) 02:03:14 DO LOOP
DO WHILE
LOOP WHILE
LOOP UNTIL
などたくさんある
DO WHILE
LOOP WHILE
LOOP UNTIL
などたくさんある
224217
2007/01/27(土) 02:25:51225217
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
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デフォルトの名無しさん
2007/01/27(土) 03:05:34 >>225
何をしたいのかよくわからんな。
ニュートン法か?
計算の元になる文献かPDFへのリンクを貼ってくれないか?
こういうエラーは文法エラーではなく論理エラーと言う物で、
文法的には誤りがないため、元の文献を参照できないと
どこが間違っているのかわからない。
何をしたいのかよくわからんな。
ニュートン法か?
計算の元になる文献かPDFへのリンクを貼ってくれないか?
こういうエラーは文法エラーではなく論理エラーと言う物で、
文法的には誤りがないため、元の文献を参照できないと
どこが間違っているのかわからない。
227デフォルトの名無しさん
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を別の所に置かないとだめなんだろうぐらいは予想できるけど。
S=0
S=S+cos(x1)*EXP(-t*X1^2/RtL/CtL)/(x1*((CtL+Cs)*sin(x1)+x1*CtL*cos(x1)))
の所で、S=0を別の所に置かないとだめなんだろうぐらいは予想できるけど。
228217
2007/01/27(土) 04:37:29230217
2007/01/27(土) 05:40:41 >>227
それは、どうしてなのでしょうか?。
それは、どうしてなのでしょうか?。
231デフォルトの名無しさん
2007/01/27(土) 07:59:44232217
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()にかけられてないみたいなのです。
どこを間違えてしまったのか、この説明でわかるでしょうか?。
教えてください。
よろしくお願いします。
大変失礼いたしました。
最初の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()にかけられてないみたいなのです。
どこを間違えてしまったのか、この説明でわかるでしょうか?。
教えてください。
よろしくお願いします。
233217
2007/01/28(日) 14:27:05 tanx=c/xの部分は、カウンターを組み込むことでクリアできました。
しかし、Sの計算でつまづいてしまいました。
t=1から1000までの間、Sの値が変化しないのです。
何故でしょうか?。
どなたか教えてください。
しかし、Sの計算でつまづいてしまいました。
t=1から1000までの間、Sの値が変化しないのです。
何故でしょうか?。
どなたか教えてください。
234デフォルトの名無しさん
2007/01/30(火) 12:01:21 ニュートン法を教えてください
235デフォルトの名無しさん
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
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
このプログラムはどのような物か教えてください。
どの命令がどのような意味を持っているのか分からないのでお願いします。
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デフォルトの名無しさん
2007/02/09(金) 10:49:57 >>236
スロット
スロット
238デフォルトの名無しさん
2007/02/18(日) 11:52:37 サイコロをK回振ったとする。100回振ったとき、それぞれの目が出た回数をコンピュータでシュミレーションせよ。横軸に出た目、縦軸に出た回数をプロットし、折れ線グラフをかけ。
どうやって解けばいいでしようか
どなたかお願いします
どうやって解けばいいでしようか
どなたかお願いします
239デフォルトの名無しさん
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
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:25241デフォルトの名無しさん
2007/02/25(日) 18:31:08 簡単な自分の好きなゲームを2つ作りなさい。
ただし数当てゲームは無しとする。
どうしたらいいか全くわかりません!
どなたか助けていただけないでしょうか?
今週の水曜日までなので…
ただし数当てゲームは無しとする。
どうしたらいいか全くわかりません!
どなたか助けていただけないでしょうか?
今週の水曜日までなので…
242デフォルトの名無しさん
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
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デフォルトの名無しさん
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
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デフォルトの名無しさん
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数が分かっていない場合に、
分散ってどうやって計算したらよい?
出来ればデータを入力するたびに平均、標準偏差を出力したい。
エレガントな必要は全く無いので、よろしく頼みます。
プログラムをすっかり忘れたので教えて。
変数は
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デフォルトの名無しさん
2007/03/23(金) 06:34:10 分散は平均値がわからないと出せないんじゃないの?
だから各データを配列変数とかにこっそりしまっておくのがいいとおもう
だから各データを配列変数とかにこっそりしまっておくのがいいとおもう
247デフォルトの名無しさん
2007/03/23(金) 07:45:35 それについては
各データの自乗の総和から平均の自乗のN倍を引けば良いんじゃないかと・・・?
(Di-M)^2を変形して出来ない?
各データの自乗の総和から平均の自乗のN倍を引けば良いんじゃないかと・・・?
(Di-M)^2を変形して出来ない?
248デフォルトの名無しさん
2007/03/23(金) 08:48:39 >出来ればデータを入力するたびに平均、標準偏差を出力したい。
これをどう解釈するかだな
これをどう解釈するかだな
249デフォルトの名無しさん
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
ダメ?
35 SUM2=SUM2+D^2
45 V=(SUM2-M^2)/N
46 S=SQR V
55 PRINT S
ダメ?
250245
2007/03/24(土) 10:56:42251デフォルトの名無しさん
2007/03/24(土) 17:03:50 >>250
書く気が無いの?それとも実現できないの?
書く気が無いの?それとも実現できないの?
252デフォルトの名無しさん
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
配列の構文を知らない
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デフォルトの名無しさん
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
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デフォルトの名無しさん
2007/06/04(月) 21:36:12 N = 標本数
T = 総和
S = 平方和
X = 変数
M = 平均
V = 分散
D = 標準偏差
T = 総和
S = 平方和
X = 変数
M = 平均
V = 分散
D = 標準偏差
256デフォルトの名無しさん
2007/09/02(日) 00:20:12 あげ
257デフォルトの名無しさん
2007/09/18(火) 15:28:04 age
258デフォルトの名無しさん
2007/10/03(水) 19:57:36 寿司食いたいフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフ
259某高専生
2007/12/07(金) 15:01:08 えーとDIMとFOR~NEXTで繰り返しのたびに順々に数値を読んでくやつ教えてくれ。
テストに出たが忘れた・・・
テストに出たが忘れた・・・
260デフォルトの名無しさん
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
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デフォルトの名無しさん
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
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人の平均が出力されるような・・・ものです。
自分何とかで調べたのですが、演算(+, /, * )を使うまではわかりました。
プログラムを作りたいのですが、どういうようなコードを
書けばいいかわかりません・・・・・。
コマンドボタンを押すと、Text欄に社員が10人の平均が出力されるような・・・ものです。
自分何とかで調べたのですが、演算(+, /, * )を使うまではわかりました。
264デフォルトの名無しさん
2008/01/24(木) 19:05:41 訂正
社員でなく学生です
社員でなく学生です
265デフォルトの名無しさん
2008/01/24(木) 21:04:14 問題12
xの値を0〜360度、10度刻みで変化したときの、関数f(x)=sin(x)、f(x)=cos(x)のグラフを同画面上に描きなさい。
N88互換BASICでよろしくお願いします。
xの値を0〜360度、10度刻みで変化したときの、関数f(x)=sin(x)、f(x)=cos(x)のグラフを同画面上に描きなさい。
N88互換BASICでよろしくお願いします。
266デフォルトの名無しさん
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
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デフォルトの名無しさん
2008/01/25(金) 07:10:38 >>266
ありがとう御座いました。
ありがとう御座いました。
268デフォルトの名無しさん
2008/01/29(火) 15:53:57269デフォルトの名無しさん
2008/01/29(火) 23:57:59 国旗(何でもよし。でもちょっとだけ手間かかるほうがいいかも)2つ書くプログラミングと、
簡単なゲームのプログラミング(それか実行押すと絵が変わるのとかの)どなたかお願いします!!
単位かかってて切実です・・・
お願いします!
簡単なゲームのプログラミング(それか実行押すと絵が変わるのとかの)どなたかお願いします!!
単位かかってて切実です・・・
お願いします!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- 「偽サッチャー」「自滅的」「時代遅れ」 高市首相の経済政策を海外メディアが酷評 [蚤の市★]
- 【ド軍】山本由伸、WBC出場を決断!ドジャースが本人の意向を尊重、佐々木朗希はチームが故障歴を懸念で不参加 [鉄チーズ烏★]
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- 【テレビ】粗品「THE W」バッサリ「おもんない、レベル低い」審査員就任で「日テレが“血の海”に…」 [湛然★]
- 通気取り「⚪︎⚪︎を食べればその店の実力が分かる」←だから何だ?
- 女の子集合!
- ひまでんぼ
- おまえら宝くじは買わないと当たらないんだぞ?
- タバコ吸わんがこれでタバコ吸ってたらカッコ良いかも
- 「鈴木彩艷」←これ読めない奴wwwwwwwwwwwwwwwwwwwwwwwwwwwwww
