BASICの宿題はお前にまかせた
- 1 :BASIC:2006/01/09(月) 15:35:00
- N人分のデータ(氏名、体重、身長、年齢)がDATA文で入力されているプログラムが
ある。これを用いて次のプログラムをBASICで作成しなさい
身長が160CM以上で170cm未満の人の名前を表示する
- 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 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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プログラム
http://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
http://pc11.2ch.net/test/read.cgi/tech/1136788500/
よって終了。
- 282 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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
http://uproda11.2ch-library.com/src/1169912.jpg
問2
http://uproda11.2ch-library.com/src/1169913.jpg
見にくくて申し訳ありませんが
よろしくお願いします。
- 289 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2008/06/27(金) 00:55:42
- 質問しつれいします。
素数のリストを、有限の自然数N以下に限定しないで次々に書き出す
プログラムを書きたいのですが、どのようにすればいいのでしょうか?
Nを限定した時はDIMを使えば出来たのですが、上のような時はどうすればいいのか。
記憶容量は無視していいそうです。
どなたか回答お願いします。
- 293 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2008/06/28(土) 00:43:23
- メッセージの定義されていないエラーです。
行番号:130
と出て、71までの素数しか表示されないのですが・・・
せっかく答えていただいたのに文句言ってすいません。
どこを改良すればいいのでしょうか?
- 295 :デフォルトの名無しさん:2008/06/28(土) 08:19:43
- >>292
>記憶容量は無視していいそうです。
無限に大きい配列を用意すればいい。
- 296 :デフォルトの名無しさん:2008/06/28(土) 23:17:12
- >無限に大きい配列を用意すればいい。
どうすればいいんでしょうか?
- 297 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2008/06/29(日) 01:09:48
- できました!
これで単位落とさなくてすみそうです。
本当にありがとうございました。
- 299 :デフォルトの名無しさん:2008/06/29(日) 08:36:57
- できた、じゃなくてやってもらった、だろ。
- 300 :学生:2008/07/02(水) 14:07:14
- プログラミングの授業でsin30°の値を出したときに0.499999616987256という値が出てきたのですが・・・
普通だったら0.5だがなぜこの値になったのか理由を示せといわれました。
自分には全然わからなかったので是非教えていただきたいのですが、
よろしいでしょうか?
- 301 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2008/07/14(月) 00:47:04
- >>308
for x=&f7a to &h61 step -1 ってできなかったっけ?
- 310 :デフォルトの名無しさん:2008/07/14(月) 01:06:15
- >>309
あ、できましたっ
ありがとうございました!w
- 311 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2008/07/20(日) 18:33:58
- >>312
ありがとうございます。
助かりました。
- 314 :デフォルトの名無しさん:2008/07/24(木) 16:28:20
- C言語をBASICに翻訳するソフトをどこで手に入るか教えてください
- 315 :デフォルトの名無しさん:2008/07/24(木) 22:24:59
- >>314
http://www.google.co.jp/
- 316 :デフォルトの名無しさん:2008/07/24(木) 22:33:52
- いやいや、まずないと思うし
万が一あったとしてもBASICとして読んでもわからないプログラムに変換されてるだろ
- 317 :デフォルトの名無しさん:2008/07/25(金) 00:22:26
- まあ今時BASICなんて方言だらけだし
Cと互換性のあるBASICを自分で作っちゃえばいいんじゃね?
- 318 :デフォルトの名無しさん:2008/07/25(金) 03:23:53
- >>314
脳内。手作業でやる以外ないよ。
- 319 :デフォルトの名無しさん:2008/07/27(日) 08:23:31
- Cでマクロを使え
#define if(x) IF (x) THEN
#fefine for(x) FOR _Bas=1 TO x
とか
- 320 :デフォルトの名無しさん:2008/07/27(日) 11:03:50
- むしろアセンブラからBASICのpeek pokeに変換すればいいんでね?
- 321 :245: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 :デフォルトの名無しさん: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してね!
104 KB
[ 2ちゃんねる 3億PV/日をささえる レンタルサーバー \877/2TB/100Mbps]
取りに行ったけどなかった。次は一時間後に取りに行くです。新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 05.0.7.8 2008/09/25 アクチョン仮面 ★
FOX ★ DSO(Dynamic Shared Object)