[過去ログ] 【初心者】課題をクリアしていくスレ【講習会】 (787レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
236(1): 名前は開発中のものです。 [sage] 04/07/04 12:35 ID:yqwpjhZT(1) AAS
(√自分)でよくない?
237(1): 名前は開発中のものです。 [sage] 04/07/04 12:38 ID:WDudAYFD(2/5) AAS
平方根求めるより楽だし
238: 名前は開発中のものです。 [sage] 04/07/04 12:55 ID:9GihiSR8(1) AAS
>>236-237
なんで平方根まででいいんだっけ?
239(1): 名前は開発中のものです。 [sage] 04/07/04 13:00 ID:WDudAYFD(3/5) AAS
それ以上のは今までに計算した分と対応してるだけ
240(1): HSPが初プログラム@生徒希望 [sage] 04/07/04 19:58 ID:3DUC6+Xf(2/2) AAS
えと、素数はどういうものかはわかるんですが、プログラムというかHSPでの算出方法が…
241(2): x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/04 20:45 ID:WDudAYFD(4/5) AAS
; 素数判定 with HSP 少しだけ高速版
sdim log, 7000: notesel log
title "素数判定 - Calculating..."
mesbox log, 640, 480
log = "2": n = 1
repeat 999
repeat
n += 2: f = 1
repeat n>>1-1,3if n \ cnt = 0: f = 0: break
continue cnt+2
loop
if f: break
loop
noteadd ""+n
await
loop
objprm 0, log
title "素数判定"
stop
242(1): x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/04 20:47 ID:WDudAYFD(5/5) AAS
あ、インデントかけるの忘れとった。。。
; 素数判定 with HSP 単純版
sdim log, 7000: notesel log
title "素数判定 - Calculating..."
mesbox log, 640, 480
repeat ,2
n = cnt
repeat cnt-2, 2
if n \ cnt = 0: n = 0: break
loop
if n{
noteadd ""+cnt
i++
if i >= 1000: break
await
}
loop
objprm 0, log
title "素数判定"
stop
243: Ruby@素数高速化 [] 04/07/05 00:33 ID:K58VA1M5(1) AAS
以前のバージョン
43.702999830246秒
ループ 31343403回
新しいバージョン(奇数のみ評価、平方根までチェック)
0.921999931335449秒(約47倍)
ループ 225062回(約139倍)
思ったより高速化されてビクーリ
print "2\n"
count=1
loopCount=0
i=3
old=Time.now.to_f;
while count<1000 do
sosu=true
for j in 3..Math.sqrt(i) do
loopCount=loopCount+1
if ( (i % j) == 0)
sosu=false
end
end
if (sosu)
print "#{i}\n"
count=count+1
end
i=i+2
end
print " #{Time.now.to_f - old}秒かかりました\n"
print " #{loopCount}回ループしました\n"
print "素数を#{count}個みつけました\n"
244: 名前は開発中のものです。 [] 04/07/05 01:37 ID:o/9mlWPU(1) AA×
>>241

245: 名前は開発中のものです。 [sage] 04/07/05 07:17 ID:LZQQVRIy(1/3) AAS
Delphiで素数
外部リンク[zip]:gamdev.org
246: 名前は開発中のものです。 [sage] 04/07/05 13:04 ID:LZQQVRIy(2/3) AAS
最速の素数判定アルゴリズム
2chスレ:tech
247(3): 名前は開発中のものです。 [sage] 04/07/05 20:13 ID:axn64mRQ(1) AAS
すごいスレの流れと違うような気がしますが、
Cで、ウインドウ表示とか(課題3)、できないんですが・・・どうしたらいいんでしょうか?
248: 名前は開発中のものです。 [sage] 04/07/05 20:40 ID:q8IB8pY7(1) AAS
できないだけ書かれてもどうしようもない。
249: 名前は開発中のものです。 [sage] 04/07/05 20:57 ID:0DOOfkU1(1) AAS
>>247
猫でもわかるプログラミング
外部リンク:www.kumei.ne.jp
このへんでまず勉強してこよう
250: 名前は開発中のものです。 [sage] 04/07/05 22:48 ID:LZQQVRIy(3/3) AAS
>>247
WinMainからはじまって
CreateWindowでウィンドウの設定して
ShowWindowで表示するだけだ
251: HSPが初プログラム@生徒希望 [sage] 04/07/05 22:51 ID:ZZjGGIiZ(1/2) AAS
sdim m,4000 : notesel m
mesbox m,640,480
noteadd "2" m : noteadd "3" m : noteadd "5" m : noteadd "7" m
n=7
c=4
*judge
n+=2
if n\3=0 : goto *judge
if n\5=0 : goto *judge
if n\7=0 : goto *judge
noteadd "n" m : c+
if c=1000 : goto *s
goto *judge
*s
stop
素数はこれで出るカナと思ったんですが、エラー発生。原因を突き止められませんTT
252(1): x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/05 23:00 ID:pTJ3lo22(1/2) AAS
エラーを読も・・・・・Σ(;゚Д゚)HSPがエラー吐いてない!
noteadd "*" m
~|~
要らない。ここでエラーが出てる。
noteadd "n"
~|~
エラーの原因ではないが、""+nの誤り。
あと、objprm 0, mをstopの前に入れて出力させてあげよう。
253(1): HSPが初プログラム@生徒希望 [sage] 04/07/05 23:07 ID:ZZjGGIiZ(2/2) AAS
>>252
thx
でも、4363で終わりますがあってるんでしょうか?
sdim m,4000 : notesel m
mesbox m,640,480
noteadd "2" : noteadd "3" : noteadd "5" : noteadd "7"
n=7
c=4
*judge
n+=2
if n\3=0 : goto *judge
if n\5=0 : goto *judge
if n\7=0 : goto *judge
noteadd ""+n : c+
if c=1000 : goto *s
goto *judge
*s
objprm 0, m
stop
254: x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/05 23:24 ID:pTJ3lo22(2/2) AAS
たしか7919のはずだけど・・・
暇だしPerlとJava版の素数判定作ってみようかな。。。
255: 名前は開発中のものです。 [sage] 04/07/05 23:25 ID:MIzlaErt(1) AAS
>>253
間違ってるよ・・・
121とかあるし・・・11からの素数の合成数が出まくりやね。
256: 名前は開発中のものです。 [sage] 04/07/06 00:11 ID:hNVuoewj(1) AAS
>>247
それは簡単だって!どっかのサイトに張ってあるやつをそのままコピペで完成だぁよぉ!
257: 名前は開発中のものです。 [sage] 04/07/06 01:48 ID:IHRV3HSb(1/2) AAS
素数スレになってるのだが・・・
258: 名前は開発中のものです。 [] 04/07/06 02:29 ID:pkSoPn0/(1/5) AAS
Delphi エラトステネスの篩
外部リンク[zip]:gamdev.org
259(1): x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/06 07:38 ID:BOq5Vq10(1/4) AAS
#!D:\perl\bin\perl.exe
print "Content-type: text/plain\n\n";
print "Start\n";
print "2\n";
$table[0] = 2;
$i = 1;
for(2..1000){
for($i += 2; ; $i += 2){
if(&IsPrime($i)){ last; }
}
}
print "Finish";
exit(1);
sub IsPrime{
(my $src) = @_;
for($j = 0; $table[$j] <= sqrt($src); $j++){
if($src % $table[$j] == 0){ return 0; }
}
print $src."\n";
push(@table, $src);
return 1;
}
# Perl版。printを取ってみると分かるけどPerlはインタープリタなのに
# 結構処理速いね。。。
260: 名前は開発中のものです。 [sage] 04/07/06 12:03 ID:IHRV3HSb(2/2) AAS
>>259
Perlは見かけ上インタプリタだけど、
処理はコンパイル後実行だと聞いたことがある。
上下前次1-新書関写板覧索設栞歴
あと 527 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.041s