[過去ログ] 【初心者】課題をクリアしていくスレ【講習会】 (787レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
607: 名前は開発中のものです。 [sage] 2007/02/04(日) 18:12:35 ID:MWYCkzpm(1) AAS
>>603603(2): 名前は開発中のものです。 [sage] 2007/02/03(土) 16:43:24 ID:b0e6Rts8(1/2) AAS
いきなりだが俺もちょこっと参加させてくれ。
とりあえずできそうなのからということで
>64の素数をやってみた。つかってるのはHSP3
よろしくお願いします。
screen 0,800.700,,,
font "MS ゴシック",8
a=2
b=2
c=0
repeat
repeat
if a\b = 0{
if a=b {: pos c\26*30,12*(c/26) : mes ""+a+" " :c++ :break}
else :break
}
if a<b :break
b++
loop
a++
b=2
if c=1000 :break
await 1
loop
stop
こんなので、こういうのができるのに自分でもびっくりだった。
本当にあってるかはよくわからんけど。
偉そうに登場したのによろしくお願いしますで締めてるところにうけた
608: 名前は開発中のものです。 [sage] 2007/02/05(月) 06:15:29 ID:JxXUp4Vb(1/2) AAS
配列変数とやらを使って、+1ずつして割っていく方法から、
でてきた素数を代入して割っていく方法に変えたら、
>603の時より、ループ回数が偉く少なくなった。
でも、他にa+2でやったほうが早そうなんだけど、
それをきれいにはめる方法が良くわからない。
if 構文追加してもいいけど、どっちみち2で割るところまでくれば
変わらないような気もするし。
609: 名前は開発中のものです。 [sage] 2007/02/05(月) 06:38:57 ID:JxXUp4Vb(2/2) AAS
計算方法をちょこっと変えたら、5000万のループ回数が70万に。素数オモスレー
610: 名前は開発中のものです。 [sage] 2007/02/07(水) 05:50:49 ID:GNKliERn(1) AAS
む、HSPなんだけどSIN波形というのがよくわからん。
何をどうするのかが。
>107107(1): x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/06/21 18:09 ID:X+fe3iOx(1) AAS
HSP版
#include "hspext.as"
pos 0, 240
repeat 640
emsin sin, cnt\256
line cnt, 240+(sin*240/256)
loop
stop
のはうちで動かんし。
考え方からさっぱりだ。
611(1): 名前は開発中のものです。 [] 2007/02/07(水) 15:20:39 ID:NKLSTYEl(1) AAS
HSP3.0からsin関数が標準で使えるようになった、だから変数名でsinは使えない
R1=3.1415/180.0;3.1415/180=ラジアン単位で約1度
pos 0, 240
repeat 640
line cnt, 240+(sin(R1*cnt)*240)
loop
stop
612(1): 名前は開発中のものです。 [sage] 2007/02/16(金) 00:22:46 ID:qpyJEI/g(1) AAS
>611
サンキュ
なるほど。line命令とかこういう風に使うのか。
しかもまるまる答えそのものじゃないかー。
613: 名前は開発中のものです。 [] 2007/02/16(金) 02:20:37 ID:ppH9PRcO(1) AAS
>>612
始点、終点も設定すると、前回の終点を
保存か算出する必要が出てくるからな
614(1): 名前は開発中のものです。 [sage] 2007/02/17(土) 06:26:41 ID:x7siGPZt(1/3) AAS
課題5の箱を動かすのやってるんだけど、
箱動くことは動くんだけど、
clsでやってるから箱がちらつくんだよね。
ヒント頼む ちなみに今こんな感じ。↓
screen 0,640,480
q=3
repeat
getkey m,37
getkey n,39
getkey o,38
getkey p,40
x=x+q*(n-m)
y=y-q*(o-p)
if fx!x or fy!y :cls
if x>320 :x=320
if x<0 :x=0
if Y>240 :y=240
if y<0 :y=0
color 255, :boxf 0+x,0+y,320+x,240+y
fx=x:fy=y
await 1
loop
615(1): 名前は開発中のものです。 [sage] 2007/02/17(土) 12:59:22 ID:zySnsdUf(1) AAS
clsやめればいいじゃん
616(1): 名前は開発中のものです。 [sage] 2007/02/17(土) 13:09:21 ID:AzT6DJgE(1) AAS
>>614
cls を使わずに、画面のクリアは boxf を使って真っ白に塗りつぶす。
これだけだとまだちらつくから、
画面塗りつぶしと箱描画をする前に redraw で描画モード0を指定する
画面塗りつぶしと箱描画をした後に redraw の描画モード1を指定する
617: 名前は開発中のものです。 [sage] 2007/02/17(土) 14:52:49 ID:x7siGPZt(2/3) AAS
>615
使わないと画面真っ赤になっちゃう。
clsぐらいしかわからないからな。悪いな。
>616
boxfで塗りつぶすというのはたまに見るんだが、
なんだかよくわからんかった。が、それをヒントに、
色々やってみる。アリガトン
618(1): 名前は開発中のものです。 [sage] 2007/02/17(土) 17:49:27 ID:x7siGPZt(3/3) AAS
これって
redraw 0
〜
redraw 1
〜の部分に描画するものいれておくと
1の時にまとめて表示されてちらつきがなくなるってことで良いのかな。
何でちらつかないのかはいまいちピンと来ないんだけど。
とりあえずclsのところに↓入れて
redraw 0 :color 255,255,255 :boxf 0+fx,0+fy,max_x+fx,max_y+fy
redraw 1
上を最後の方に入れた。
ただ、動きが重くなるんだね。この命令って処理が重いの?
619: 名前は開発中のものです。 [sage] 2007/02/17(土) 20:25:31 ID:pIqCsBKC(1) AAS
暇だからやってみた素数。2だけすまんがずるしてる。
これくらいが関数覚えなくてもできるから楽しいな。
もっと早いの考えてみっか。
/*--------------------------------------------------*/
#define MAXN 1000
#include <iostream.h>
int main(){
int temp[MAXN],k=2,i=0,j,loop=0;
cout<<2<<endl;
while(i<MAXN){
temp[i]=2;
for (j=0;j<=i;j++){
loop++;
if(k%temp[j]==0) break; //kがn[j]の倍数ならn[j+1]に飛ばす
else if(j==i){
temp[i]=k;
cout<<temp[i]<<endl;
i++;
break;
}
}
k++;
}
cout<<loop<<"回ループしやした!"<<endl;
return 0;
}
/*--------------------------------------------------*/
620(1): 名前は開発中のものです。 [sage] 2007/02/18(日) 04:26:14 ID:8TgB3zN2(1) AAS
>>618
clsより軽いはずだ。
621(1): 名前は開発中のものです。 [sage] 2007/02/18(日) 16:42:46 ID:yPmVwvF6(1) AAS
>620
むー。そうなのかー。でも動き重くなったしなー。
使い方悪いのかなー。
課題6を
丸描いて敵にしてるんだけど、動き方をどうするかで
試行錯誤ちう
622: 名前は開発中のものです。 [sage] 2007/02/18(日) 21:48:11 ID:Z60cc6BP(1) AAS
>>621
重いのは await 1 が原因だよ。
623: 名前は開発中のものです。 [sage] 2007/02/21(水) 04:09:26 ID:XCgw7SD2(1) AAS
課題6やってるんだけど、
あたり判定がなんか良くわからなくなって、
とりあえずはねかえる様にしようとしたらさらにワケワカラン状態に。orz
考え方が間違ってるのはわかってるんだが、どう間違ってるかが分からない。
ダメだしお願い。
外部リンク[lzh]:gamdev.org
624(1): 名前は開発中のものです。 [sage] 2007/02/21(水) 17:45:56 ID:1pwfm66w(1) AAS
↓こうじゃない?
★箱
(x,y)
┏━━━━━┓(x+max_x,y)
┃ ┃
┃ ・(x+max_x/2,y+max_y/2)
┃ ┃
┗━━━━━┛(x+max_x,y+max_y)
(x,ymax_y)
★玉
(enemy_x,enemy_y)
┌─────┐(enemy_x+sx,enemy_y)
│ │
│ │
│ │
│ │
└─────┘(enemy_x+sx,enemy_y+sy)
(enemy_x,enemy_y+sy)
★箱の右で衝突
(x,y)
┏━━━━━┓(x+max_x,y)
┃ ┃
┃ ・(x+max_x/2,y+max_y/2)
┃ ┌─────┐
┗━━━┥ │
enemy_xがx+max_x/2〜x+max
enemy_yがy-sx〜y+max_y
625(1): 名前は開発中のものです。 [sage] 2007/03/02(金) 09:45:12 ID:RL8xs1BY(1/2) AAS
>624
スマン はねかえる様にできたら、そこからぶつかったという仕様にしたかったんだ。
ようやっと、とりあえずはね返るようにはなった。
後ろからあたりに行ったりするとスルーしちゃったりするけど、
大まかにははねかえる様になって、その条件式でちょっと仕様変えてぶつかったという判定にした。
なんか色々とつっかえたなぁ。サイト色々探しちゃったし。
つまると素数プログラムを改善して紛らわせてるんだけど、
数値に制限あるのな。HSP。
まぁ、そこまで素数を下から求めたりしないからいいんだけど、
素数を使って素数を判定するというもの作った時に、数値がめちゃくちゃになって弱った。
626(1): 名前は開発中のものです。 [] 2007/03/02(金) 16:19:42 ID:xch9HBdf(1) AAS
>>625
勘違いするなよ?
桁の制限なんてどんな言語でもあるぞw
言うなら32ビット整数型の制限だよ
627: 名前は開発中のものです。 [sage] 2007/03/02(金) 16:34:53 ID:RL8xs1BY(2/2) AAS
>626
そういうものなのか。
もうちょっと桁はいくもんなのかと思ってたけど、
なるほど2^32の半分なわけか。
となると、それを越える数字を使うプログラムははじかれるのか。
まとめサイトに繋がらないんだけど。なんでだろ。
628: 名前は開発中のものです。 [sage] 2007/03/02(金) 22:24:24 ID:e7ng/jU4(1) AAS
まとめサイトのping帰ってこない(´・ω・`)ショボーン
自分のソースのバックアップあそこにしかないのにwww
629: 名前は開発中のものです。 [sage] 2007/03/06(火) 20:19:53 ID:vyl0ltP/(1/2) AAS
まとめサイト復活来た。
弾道シミュやるヮ。
課題6はもう大体いいわ。
630: 名前は開発中のものです。 [sage] 2007/03/06(火) 21:22:00 ID:aM0UjHqH(1) AAS
そろそろ新しい課題欲しいな
631: 名前は開発中のものです。 [sage] 2007/03/06(火) 23:13:38 ID:vyl0ltP/(2/2) AAS
ボタンを作るみたいな課題とかどうよ。
単に今俺がこれから勉強したいと思ってるからだけど。
そこから、ボタンを押す。押すと押した絵に変わる。
マウスが上に来ると絵が大きくなるとか、枠が出るとか。
もしくはのちのち、何かのジャンルのゲームで頻繁に使いそうなやつ。
セーブロードとかさ。初心者が言うのもあれだけど。
上下前次1-新書関写板覧索設栞歴
あと 156 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.016s