検索結果 1881 件

by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: 迷路の自動作成
返信数: 4
閲覧数: 4543

Re: 迷路の自動作成

デバッグしてください.

srand()に適当なSEED値を入れて実行することで,「道筋が複数本」になるようなSEEDを探してください.
それを見つければ,何度でも同じ処理を再現できますから,デバッグしやすいでしょう.

穴を掘るたびに状況を表示するようにするなりして動作を見ていけば,
どこかの時点で「道筋が複数本」になることを観測できるでしょう.
そのときの処理の進み方を詳細にチェックすればロジックのミスが見つかるでしょう.
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: 行列の和の計算
返信数: 5
閲覧数: 5052

Re: 行列の和の計算

> どうしてこのようなエラーが起こるのか

エラーメッセージの通りだと思いますが.

あなたは,

コード:

float func_add(float, float);
として,関数func_addの型を宣言しました.
つまり,
「関数 func_add とは,引数はfloat型が2つで,戻り値はfloat型であるぞ!」とコンパイラに対して声高に宣言したのです.

にもかかわらず,あなたは
先の宣言とは矛盾した(型の異なる)関数func_addの定義を記述しました.

それを見たコンパイラからすれば,「は? さっきの宣言とちがくね?」となるわけです.
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: わからないです助けてください。
返信数: 1
閲覧数: 3175

Re: わからないです助けてください。

とりあえず 強制条件 とされている関数を作ってみたらどうです?
(そこからできません とかだと,じゃあ何ができるん? って話になる)
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: ドット文字の回転について、どなたかご教授お願いします
返信数: 4
閲覧数: 4082

Re: ドット文字の回転について、どなたかご教授お願いします

また別の話: やることは,角度がいくつだろうとも, 「out_bufの各要素をin_bufのどこかの要素の値で埋めること」なのだから,全てのパターンを総合してこう書ける. for( out_bufの全ての要素(x,y)について ) { (x,y)に対応する,in_buf側の要素(X,Y)を求む. X = ...; Y = ...; out_buf[y][x] = in_buf[Y][X]; } 既に述べたように,左回りか右回りかで分岐する必要は無いから,XとYを求める箇所の処理は単純に{90度,180度,270度}の3パターンだ. このくらいなら,ifなりswitchなりで書いてしまってもよい...
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: ドット文字の回転について、どなたかご教授お願いします
返信数: 4
閲覧数: 4082

Re: ドット文字の回転について、どなたかご教授お願いします

別の話:

・「左に90度回す」というのは,「右に270度回す」ことと等しいのではないか?
・同様に,「左に180度」「左に270度」も,右に回す処理に置き換えることができるのではないか?

であれば,馬鹿正直に6パターンの処理を個別に書かなくても3パターン書けば済むのでは?
さらに,

・「180度回す」というのは【「90度回す」ことを2回行うこと】
・「270度回す」というのは【「90度回す」ことを3回行うこと】

だということを使うならば,回転の処理は,「90度回転」を1つ実装しさえすれば,全パターンの処理を達成できるのではないか?
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: ドット文字の回転について、どなたかご教授お願いします
返信数: 4
閲覧数: 4082

Re: ドット文字の回転について、どなたかご教授お願いします

コード:

char Buff[8];
というとき,有効なindexは0から7だ.すわなち

コード:

Buff[8] = 1;
とかはダメなのだ.

では,

コード:

char out_buf[8][9]
のindexの範囲は各次元でどこからどこまでなのか?
それを逸脱した場所にアクセスするような処理を書いていないのかをチェックすべし(まぁ,どうみてもやってるわけですが).
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: 横に動くもの
返信数: 3
閲覧数: 4186

Re: 横に動くもの

むしろ何がわからないのか? そのコードは2パターンの出力を繰り返している. → では,これを,3パターンの繰り返しにするにはどうすればよいか? → もう一個書けばよくね? → 壁まで行って戻ってくるのに何パターンが必要かは知らないけれども,必要なだけ書き並べればよくね? おそらく,「必要なだけ書き並べる」のでは「いかにも面倒だし,もっとうまいやり方がありそうだし…」という話であろうと思うが,”うまいやり方”を「頭で考えているだけでは思いつかない」ならば, そういった一番明確で強引な方法を,全パターンでなくとも最初の数パターンだけでも実際に書いてみるステップを経てみるといい. そのコードを見てみ...
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: buffer, buffer2での文字が一致した際にメモに保存した文章を表示したい。
返信数: 7
閲覧数: 5627

Re: buffer, buffer2での文字が一致した際にメモに保存した文章を表示したい。

少なくとも機能のロジックの動作を見る分にはprintfでも何でも良いんじゃありやせんかね.
あっしはそう思いますぜ.
「結果が異常」という問題だけにフォーカスするならば入力部分すらも不要でありやしょう.

#質問時と応答時とで名前が違う点にはもう今さらどうこう言いませんぜ.
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: buffer, buffer2での文字が一致した際にメモに保存した文章を表示したい。
返信数: 7
閲覧数: 5627

Re: buffer, buffer2での文字が一致した際にメモに保存した文章を表示したい。

とりあえずやりてぇことの中身だけを直にやるようにすりゃあ もうちょいマシな形になるんじゃあありませんかね? 「映画」で検索かけて表示するって話にはDXライブラリなんて必要ねぇんじゃあないですかい? 特定のライブラリに依存しているコードってのもそれだけで回答者が減る要因かと思いますぜあっしは. そいつをとりあえず除去するだけでもウィンドウが閉じちまうとかいう謎の問題は消え失せるんじゃねぇかと思いやすし コードも相応に短くなるでしょうし良いことづくめなんじゃありやせんか? なんてことはもう他所でもさんざん言われているかもしれやせんが そういうのは場所変えたところで反応が変わるもんでもないんじゃねぇ...
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: buffer, buffer2での文字が一致した際にメモに保存した文章を表示したい。
返信数: 7
閲覧数: 5627

Re: buffer, buffer2での文字が一致した際にメモに保存した文章を表示したい。

所構わずマルチポストし続けるその精神力に敬意を表して コードに関しては1つだけ指摘しておきやしょう. あなたが行うべき比較というのは strcmp(buffer, buffer2)==1 で達成できるものなのか?ってところですぜ. strcmpでググればこの関数が行うことの意味がわかりやすし この関数の戻り値と1とを比較するという処理の妥当性の無さをも知ることもできると思いやすぜ. そしてさらに生きるヒントを差し上げるならば (1)こういう場では【コードの長さ】というのはそれだけで負の雰囲気を醸し出すんで. 読み手には「そんなクソ長い未知のコードなんか読みたくない→関わらない」という心理が働く...
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]クラスのメンバ関数を別のクラスへ渡す
返信数: 3
閲覧数: 3761

Re: [C++]クラスのメンバ関数を別のクラスへ渡す

ちなみに,a,bのところの FuncTest2:: は無意味.
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: [C++]クラスのメンバ関数を別のクラスへ渡す
返信数: 3
閲覧数: 3761

Re: [C++]クラスのメンバ関数を別のクラスへ渡す

bはFuncTestのコンストラクタが要求している型と合致しているfを指定しているからOK.

aは,多分,メソッドの宣言だと解釈されている.()ではなく{}を使えば通るかと.

c,dに関しては,gがメンバ関数なのだから呼び出すにはインスタンスが必要なわけで,その書き方のままじゃ無理なのは当たり前.
(ちなみにgをstaticにしても,FuncTestのコンストラクタが要求する型に暗黙的に変換はしてくれない,と思う.そこまで深く何段階も暗黙の型変換は行われないハズ.)

ってことかと.
by usao
3年前
フォーラム: C言語何でも質問掲示板
トピック: ヒストグラムの工夫
返信数: 2
閲覧数: 3532

Re: ヒストグラムの工夫

・最低値からの差分だけを表示する:
 例えば,一番少ないbinの値が999だったらそのbinに関してのアスタリスクは表示しない.値が1000のbinに関しては1個だけ表示する.
 (加えて,最低値を別途表示するべきか)
・各binの表示を適当に改行して複数行にする
・1つのアスタリスクが複数回(例えば50回)を表すこととする
・でかい単位を表す別の文字も用いる(1円玉だけだと大量でも,10円玉や100円玉も使えるならすっきりするかもしれない)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: [Win32API] OpenClipboard 関数を複数回呼ぶと落ちてしまう
返信数: 2
閲覧数: 4367

Re: [Win32API] OpenClipboard 関数を複数回呼ぶと落ちてしまう

関係あるかどうかわかりませんが,
EmptyClipboardとかSetClipboardDataが成功しているかを戻り値でチェックしてみてはどうでしょうか.

msdnでOpenClipboardやEmptyClipboardの説明を見ると,そのような呼び方をするとSetClipboardDataが失敗する,と書かれているように見えます.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

I(t) = (1.0-α)I(t-1) + αF( 時刻tでのカメラ画像 )
というのは,平均化(あなたがいうところの「RGBの各値加算して回数で割る」)処理に関して

> 時間がたりない

ということを危惧されていたようですので,代替的な処理方法の例として挙げました.
・処理時間が軽く(除算とかいらない)
・過去フレームをメモリにたくさん保持する必要もなく(「可変長がどうの」という話自体が現れない)
処理として.

この処理のことを正確に何という名前で呼ぶのかは知りませんが,処理の意味合いは式から明確だと思います.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

外野には話がよくわからんですが,直面している > 画像検査 に合わせて検討してください. 「合わせて」とは, 今現在の「画像検査」の処理結果が良くないというときに,その原因がカメラ画像のノイズにあるのだ,ということが判明しているなら ノイズ除去の検討を行うべきで, その際には, ノイズ除去処理というのがどうあるべきか(処理速度,結果の具合,副作用の許容範囲,etc)というのは, 「画像検査」処理の内容を鑑みて判断せねばならない ということです. 要は, > 改善できないか というのは,一体何をしたら「改善」が達成されるのか?という. その{考え,方針,作戦,…}が先に無いと,成果は得られにくい...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

とりあえず,以下のようなのをやってみてはどうだろうか.簡単だし.

ある時刻tで後処理に用いる画像(≒ノイズ除去済みの画像)を I(t) と書くとき,

最初のフレーム(時刻t):
I(0) = F( 最初のカメラ画像 )

以降のフレーム:
I(t) = (1.0-α)I(t-1) + αF( 時刻tでのカメラ画像 )

※ここでF()は何らかのノイズ除去フィルタ(Median Filterとか,Bilateral Filterとか,あるいは何もしない)
※αの値は0~1. たとえば0.1とかそこらへんから適当に試せばよいかと
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

元々の質問内容に関しての回答としては…
cvQueryFrame()で得られたフレーム画像のクローンをcvCloneImage()で作っては
Queue的なものに突っ込めば良い(最大保持枚数は自分で決めて,古いものを適宜popすればいいしょ)
のではないかと.
(もちろんpopしたものはcvReleaseImage()で破棄する必要がある)

ただ,目的がノイズ除去ということなので,個人的にはそんなにたくさんの(10とか1000とか)フレームを用いる必要はないと思う.
例えば,「各フレームのMedianFilter結果」を数フレーム分貯めておいてそれらを平均 とかでもまぁ大抵は十分ではなかろうか.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

あたっしゅ さんが書きました:
4年前
openCV は、よく知らんが、こんな感じでしょうか ?
IplImage型の配列を用意してもおそらく面白いことはありません.
OpenCVのC APIでは,IplImage型を直接扱うことは無くて,常に「IplImage * 型」であれこれします.
(ライブラリの中で生成されたバッファへのポインタを扱う)

(ちなみに,IplImage型だけ作ってもヘッダ部しかない状態で,画素データが無いのでまともに使えない)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

1000枚も用いることを考えているということは,撮影対象は動きが無いシーンなんでしょうか.

やることが平均化とかであれば,
対象のフレーム画像を一度にメモリに保持せずとも
Running Average 的な処理ではダメなのか? ということを考えてはどうでしょうか.

それはそれとして,今の時代にあえて IplImage * なバージョンのCVを使う理由があるのでしょうか?
(最近の版ではもはや IplImage を使うC APIがまるごと存在してないハズ)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?
返信数: 13
閲覧数: 9041

Re: openCVで画像をメモリに可変長で取り込むにはどう書けばよいでしょうか?

差し支えなければ,背景(やっていること)に関しても何か簡単に説明なりがある方が
読み手もイメージしやすいのではないでしょうか.

一度に1000フレーム分の画像をメモリに保持せねばならない処理って,一体どんな処理なのでしょう?
とか疑問に思います.

あと,確証はないですが,cvQueryFrame()の戻り値は単純に保持せずにその画像のコピーを作って保持しなければならないかも?
(cvQueryFrame()は内部管理されたメモリへのポインタを返すハズ.→この関数が返したものって,いつまで有効なのか? というのが謎.)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: SP6章のメンバ初期化子リスト?について
返信数: 2
閲覧数: 6496

Re: SP6章のメンバ初期化子リスト?について

文面から察するに,ちょっとコードの読み方を間違っていると思う. BaseScene::BaseScene(ISceneChanger* changer) : mImageHandle(0) //←メンバイニシャライザ { //ここはコンストラクタの実装 mSceneChanger = changer; } mImageHandleを0に初期化する記述にはメンバイニシャライザを使っているが, mSceneChangerに関しては,コンストラクタの処理にて引数の値を代入している. この例は「初期化or代入」で何かしらの違いが出る場面でもないだろうから, BaseScene::BaseScene(I...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタの2次元配列について
返信数: 2
閲覧数: 7813

Re: ポインタの2次元配列について

ピクセルのデータを扱うクラスがあるのなら,そのpixelClass型の要素が画像サイズ分だけ必要という話なのでしょうから, そこにint**とかが候補として出てくる理由が謎です. pixelClass** にして,「2次元配列」な形態(?)にこだわっても良いでしょうが,個人的には確保と解放が面倒なだけに思います. 画像のサイズW,Hをファイルから読み取った時点で,W*H個の要素を作れば良いのだから, pixelClass *ImgPixels = new pixelClass[ W*H ]; //「1次元」ですが とかで良いのではないでしょうか.これなら確保と解放が楽です.要素アクセスは //...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 線形ではないように見える透視変換がなぜ行列で表現できるのか?
返信数: 3
閲覧数: 8640

Re: 線形ではないように見える透視変換がなぜ行列で表現できるのか?

「同次座標」とかで調べると良いかと思います.

スクリーン上への投影座標は,XYout,Yout,ZoutをWoutで割ることで得られます.
要は,
その4x4行列を掛けただけでは,「反比例」に対応する割り算はまだ行われていない,ということになるでしょうか.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタを用いて文字列を逆順にして表示する
返信数: 3
閲覧数: 9639

Re: ポインタを用いて文字列を逆順にして表示する

オフトピック
引用で元を見れるのは知りませんでした.
なので,「失われ」という表現を用いました.

途中から斜体になっていることから

コード:

s[i]
と書いたのだろうな,とだけは察しは付くけど,他の現象の有無は自分はわからん(知らん)ので.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタを用いて文字列を逆順にして表示する
返信数: 3
閲覧数: 9639

Re: ポインタを用いて文字列を逆順にして表示する

オフトピック
ここでコードを提示する際はちゃんとタグを使って書かないとダメです.
(おそらく配列関係の記述がいくらか失われてしまっていると思うので,今の状態だと元のコード状態が不明)

ポインタで文字列の反転がどうの という話,
最近teratailで見たような気がするので,探してみたらどうか.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: (プログラム初心者)リンカーのエラー
返信数: 5
閲覧数: 9504

Re: (プログラム初心者)リンカーのエラー

作ったプロジェクトの種類が問題なのではないでしょうか.
「Win32コンソールアプリケーション」を作ったのでは?
「Win32アプリケーション」を選んでプロジェクトを作ってそのコードをビルドしてみてはどうでしょう.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: STLコンテナStackの動作について
返信数: 3
閲覧数: 9324

Re: STLコンテナStackの動作について

オフトピック
それはそれとして,

「ルール:なんたらSceneだのいうクラスを実装する際には『自分のメソッド実行中に自身がdeleteされ得ることに十分注意すること』」

とか何とか言われたらとても嫌だと思うので,
スタックなりを管理している側(?)でその辺はそうならんようにしておけば良いのではないかな.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: STLコンテナStackの動作について
返信数: 3
閲覧数: 9324

Re: STLコンテナStackの動作について

何を問題にしているのか読み取りにくい… (1)スタックの要素はshared_ptrであるから,popしたからといって,shared_ptrが要素を削除するかどうかはわからない. (リンク先は続き物みたいなので過去記事までさかのぼって確認すればその辺がどうなってるのかがわかるのかもだけど,そこまで労力割きたくないので…) (2)仮にpopする瞬間に要素が削除されるのだとして,returnするだけとかなら問題ない. インスタンスが削除されたからといって,コードがなくなるわけじゃないので, インスタンスに依存しない処理であれば問題ない. ざっくり言えば,そのインスタンスのメンバ変数の読み書きをしない...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 二つのif文が重複してしまう。
返信数: 21
閲覧数: 19227

Re: 二つのif文が重複してしまう。

オフトピック
「基礎から学べ」と言われるのは,
この人の文章を読んだときに
「具体的どう誤解しているのか明確にはわからんけど,どこか大前提の部分にとんでもない勘違いをしているなこれは」という感想を持つからであろう.

「認識」の側が実はまともなのだ!ということであれば,毎回「書き方」にきちんと注意を払うべき.
読み手が意味を取り違えるような文章を書かないように.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 二つのif文が重複してしまう。
返信数: 21
閲覧数: 19227

Re: 二つのif文が重複してしまう。

> 認識の違いというか、条件の書き方が悪かったです。 なんというか,この人の場合,「認識」と「書き方」のどちら側に問題があるのか読み手に判断付かない度合がすごいというか… 頭の中では「A」だと考えているのにそれを文章に起こすと何故か「A」ではなく「A’」と書いてしまうのか, それとも,最初から「A’」だと考えているから文章にも「A’」と書いているのか, どっちなのか(それともどちらでもない何かなのか)が判断付かない. そのせいか,【「処理の流れ」をどう捉えて(誤解して)いるのか?】がうまく伝わってこない,というか,その時々でそこらへんの認識が変わっていて一貫していないようにすら見える. 例え...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 二つのif文が重複してしまう。
返信数: 21
閲覧数: 19227

Re: 二つのif文が重複してしまう。

オフトピック
> スルーしてるのは、なぜですか ?

一度,「基礎からやれ」と言ったので嫌われているのでしょう.
それ系の話が何故かとても嫌いみたいです.

まぁ「俺は基礎は学ばない!」という強い意志を貫く独自のスタイルも有りだとは思います.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 二つのif文が重複してしまう。
返信数: 21
閲覧数: 19227

Re: 二つのif文が重複してしまう。

オフトピック
> 再びキーAを押すことで

ひょっとして,このあたりの認識が間違っているのではなかろうか.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: マップチップ上で追跡する敵を4方向移動にしたい
返信数: 3
閲覧数: 9854

Re: マップチップ上で追跡する敵を4方向移動にしたい

オフトピック
それはそれとして,「マップチップ云々…」という言葉から勝手に想像するに,
実際にゲームを作るとなると,ルール的に「敵が侵入できないマス」とかが設けられることが予想されるので,

(1) 敵の移動先候補を列挙する
 単純な例で言えば,今の座標の上下左右の4カ所のうち,侵入できる箇所であって且つ追跡対象との距離が近くなる箇所
(2) 列挙された中から実際の移動先を選ぶ

みたいな手続きにしておくと良いのかもしれない.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: マップチップ上で追跡する敵を4方向移動にしたい
返信数: 3
閲覧数: 9854

Re: マップチップ上で追跡する敵を4方向移動にしたい

> いろいろと調べたのですが …… 見つけられませんでした。 よく目にする文言だけど,何をどう調べたのかは絶対に明かされない不思議! Xが左右方向でYが上下方向なのだとして, (1) Y座標を固定してX座標だけを動かせば「左右のみ」になる. (2) X座標を固定してY座標だけを動かせば「上下のみ」になる. (3) X座標とY座標とを同時に変更すると「斜め」に移動することになる. という3点は明らかであると思うのだが,どうだろうか. 「明らかでない」というならば,自分はちょっともうこれ以上簡単に説明できないです. 「明らかである」ならば,上下左右のみに限定したいなら(3)が起きないようにすればよ...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 戦闘画面中に画面を切り替えてポーズ画面を作製したいのです
返信数: 5
閲覧数: 10369

Re: 戦闘画面中に画面を切り替えてポーズ画面を作製したいのです

> 画面の切り替えってどう作るのでしょうか?

一応これについて書いておくならば……

「C言語 ゲーム 画面 切り替え」とかでググるとたくさん出てくるはずです.
これ系の話では「シーン」という言葉が使われることが多いようですから
「C言語 ゲーム シーン 遷移」みたいな検索でも良いかと思います.

ググるとおそらく様々な方法の話が見つかるでしょうけど,
とりえあず最初は{継承,仮想関数,ステートパターン}みたいな単語が出てきたページは即刻閉じて見なかったことにした方が良かろうと思います.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 戦闘画面中に画面を切り替えてポーズ画面を作製したいのです
返信数: 5
閲覧数: 10369

Re: 戦闘画面中に画面を切り替えてポーズ画面を作製したいのです

このような質問をする場合には, 問題に無関係なコードを除去して,質問内容に関する話をするのに必要最低限の(「キーXを押すと選択画面に行く」だけのプログラム)コードを示すべきです. > 選択画面 に相当する処理実装って,そのコード内のどこの部分ですか? (「選択画面」と言う名前から想像するに,何か選択肢が表示されたりとかするんですよね? きっと) > 選択画面に行く ための機構の記述ってどこですか? > ClearDrawScreen(); // 裏画面をクリアの後に ... を付け足して、... 該当行の直後部分(「ステージの描画」という注釈行からScreenFlip()までの範囲)を見た感...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: ロックオンしている最中だけ相手の真ん中にロックオンマークを重ねたい。
返信数: 13
閲覧数: 14556

Re: ロックオンしている最中だけ相手の真ん中にロックオンマークを重ねたい。

オフトピック
> Noir氏

異なる 考え方/意見 は尊重しますので,
あなたが先駆者として導くというのならば,そのようにすればよろしいかと存じます.

#私の意図は既述の通り(他所のような)排除ではなく,あなたが言うところの「導き」です.
相手の理解状況を推測した結果として「まずはもっと基礎をちゃんと学んでください」というのも正しい助言だと私は考えます.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: ロックオンしている最中だけ相手の真ん中にロックオンマークを重ねたい。
返信数: 13
閲覧数: 14556

Re: ロックオンしている最中だけ相手の真ん中にロックオンマークを重ねたい。

> あなたに言われなくても基礎勉強しながら作ってますよ。 おそらく,あなたが勉強しているという「基礎」よりももっと手前の段階の基礎(前提的な事柄)を最初に学ぶ必要があるのだと思いますよ. 例えば, int main() { //ここで A,B,C はそれぞれ何らかの処理である A; B; C; } のように書いたら3つの処理{A,B,C}がどの順序で処理されるのか,とかそこらへんのとこから話が書いてあるような場所を見つけて読むと良いでしょう. 「邪魔」という言葉が気に入らないのでしょうが, このような前提レベルの話を把握していない相手にいくら回答したところで内容が理解されないわけなので,  ...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: ロックオンしている最中だけ相手の真ん中にロックオンマークを重ねたい。
返信数: 13
閲覧数: 14556

Re: ロックオンしている最中だけ相手の真ん中にロックオンマークを重ねたい。

ゲームっぽく例えると, 【LV2あたりの敵を相手に半死半生な実力であれば,LV10の敵に挑んで勝てるわけがありませんぜ】って感じです. 仮にFizzBuzzが難易度LV2で,今あなたがやろうとしていることがLV10なのだとしたら, まずはLV10の事柄にまともに挑戦できるようになることが必要です. 少なくとも 処理がどう流れていくのかのイメージも掴めない状態の人が取り組むべき内容ではありません . (1) まずLV2を余裕でこなせるようにLV1あたりから「普通に」勉強する (2) LV2~LV9の難易度の事柄としばらく戦って,LV10に取り組める実力を養う というステップを経ることが必要不可...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 最初に描画された画像から一瞬横に向くようにしたいです。
返信数: 3
閲覧数: 7528

Re: 最初に描画された画像から一瞬横に向くようにしたいです。

あなたが求める「一瞬」の期間だけplayerphotoの値をそのままにし,
その期間が過ぎた時点で別の値に戻せば良いのではないでしょうか.

とりあえずplayerphotoの値をwhileループ内の先頭で毎回初期化している時点で
視認できるほど長い期間だけ値を保持できているとは思えないので,
何か時間を計測する手段を用いる等して実現する処理を追加することになると思います.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

左に1bitシフトしたら値は2倍になる(という点については大丈夫か?)
左に8bitシフトしたら値は(2の8乗=256)倍になる
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

オフトピック
そんな意味わからん長文書く前に,まずはstrtolをググればよくね?
(引数の意味について書こうとして「?」が付いている時点でダメだろ常考…)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

オフトピック
> 第一に、以上のような1ケタずつ読み込んでいく方法だと、整数10個、アルファベット大文字26文字、小文字26文字で、合計62種類までのデータを読み込む事が出来ます。

この話だと,1データを「数字とアルファベットからなる2文字」にすることで62*62=3844パターンを表現するという世界を目指していることになる.
ファイルに書かれている"11"だの"AA"だのいうのは16進文字列ではないのだろうから,
strtol(p, &p, 16)
だと目指す仕様と違うんじゃないの?
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

オフトピック
> mapdataを二次元配列から一次元配列にする方法も試しました

こういうことしている時点で,何かが根本的にズレている気がする.

あるロジックがあるデータ構造を用いて動く状態が存在していて,
→当該データ構造のデータを用意する手段として「ファイルから読む」

じゃないのか?
データ構造側をファイル読込処理の都合によって変えちゃうの?
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

オフトピック
カンマ区切りな内容のファイルを用意するとしたら,それを読込むプログラムの側ではカンマの存在に対処する必要がある.
その処理が自分自身に厳しいかどうかは,やる前にわかるハズ.

にも関わらず,何故カンマ区切りなフォーマットのデータファイルを用いようと思うのか.
わざわざ問題の難易度を自分自身で大きく引き上げて困っているという構図.
「自分が余裕で扱える形でデータを用意しちゃいけない縛り」みたいな営みなのか? 行き詰るのが好きなのか?
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

オフトピック
こんな単純データだったら,stringstream様のお力で解決してもらえば楽なのでは.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

OK.他者に期待.
オフトピック
ソースをどう直したらいいか? という話をする際には,私なら,コードをコピー&ペーストする.

「ここに提示したコードは実際のものとは異なっていて,そりゃあ書き写しのミスもありますよ」とか言われても,
じゃあどれがそのミスで,どれは違うのか?
一体何に注目してどの問題について論じれば良いのか?
第三者には判断材料がないわけだから,正常なやりとり自体が不可能ですな.
(それでも大丈夫なエスパーな人もいるかもだが,私には無理)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。
返信数: 54
閲覧数: 42169

Re: メモ帳からカンマ付き文字列のデータの読み込みが出来ません。

=と==の違い,わかってますかね?

FileRead_gets()の戻り値はググった感じだと「長さ」らしいですが,
だとしたら,↓って何の判定なのかわからないですよね.

コード:

FileRead_gets(buf,1023,fp)!='\n'
#方法論がどうの以前に最低限のことはしようぜ
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリを使って異なる複数の種類の画像を複数描画する方法を教えて下さい。
返信数: 9
閲覧数: 7811

Re: DXライブラリを使って異なる複数の種類の画像を複数描画する方法を教えて下さい。

> 複数の種類の画像を複数描画する これ「だけ」をやるのに必要な要素を考える. 「複数」がネックならば,最初は「1個」から始める. 「一個なら余裕だからやってみるまでもないぜ!」とか構えてても何も進まないなら,実際にやってみて具体化することだ. 1つの画像を描画するのに最低限必要なのは「どこに描画するのか」「何を描画するのか」の2つの情報であろう. 前者は描画位置を示す座標であり,2Dだろうから(x,y)でいいだろう. 後者はDXライブラリの場合だとどうやら「画像のハンドル(?)」とかいう値っぽいので, (x,y,ハンドル)というデータが1セットあれば,1つの画像を描画するのに足るハズだ. よ...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリを使って異なる複数の種類の画像を複数描画する方法を教えて下さい。
返信数: 9
閲覧数: 7811

Re: DXライブラリを使って異なる複数の種類の画像を複数描画する方法を教えて下さい。

なぜわざわざ新規トピックにしてるのかわからんけど 話を打ち切って無かったように別に始めるという態度は協力者を減らす方向にしか行かないと思うぞ. で,根本的な間違いは何かっていうと 「自分自身でどう使えばいいのかもわからんデータをわざわざ定義している」という点であろう. 普通,データってのは,自分が使うのに都合が良い形に用意するんだから,それを使って何をどうするのか?ってのは「自明」と言える. 「データはこれなんだけども,どうすればいいかわかりません><」なんていう意味不明な状況には,少なくとも出発点の段階で陥ることにはならないと思うんだよな,常識的に考えて. つまり,どうすれば良いか?っていう...
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 配列とfor文を使っているのに画像が一つしか表示されない。
返信数: 25
閲覧数: 24559

Re: 配列とfor文を使っているのに画像が一つしか表示されない。

くっそ…しくじった.
前記投稿(#16)にて「ch.num」と見えている箇所は

コード:

ch.num[i]
と書いたつもりなので,読み変えてください.
(コレほんと使いにくいなぁ)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 配列とfor文を使っているのに画像が一つしか表示されない。
返信数: 25
閲覧数: 24559

Re: 配列とfor文を使っているのに画像が一つしか表示されない。

ch.num とか書いてるけど,このnumの要素数はいくつあるんです? (領域外アクセスしてないかどうか) ch.num の iの値としては '1' と 'A' を用いてるみたいだけども, これって10進数で言えば,49と65になると思うんです.つまり 【ch.num[49] と ch.num[65] の2要素だけに関して何かあれこれ処理する】ということになっていそうに見えるのですが, これって想定通りなんですか? CharaInit()でマップデータ全体に関してループしている際に,'1'や'A'はデータに複数個存在しているから 毎度激しく ch.num の内容を上書きしていると思うけど.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 単方向リストの交換
返信数: 20
閲覧数: 11171

Re: 単方向リストの交換

オフトピック
なるほど,最後のswap3の方法はinteresting
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 単方向リストの交換
返信数: 20
閲覧数: 11171

Re: 単方向リストの交換

オフトピック
> 面白い問題だと思うんですが、誰もやってみないのでしょうか?

「面白い」とは何か?ってところが個人で違うでしょうし…
言わば「縛りプレイ」的なパズルですよね,コレ.

あえてごちゃごちゃとバグりそうな(あるいはバグっててもすぐにはわからないかもしれないような)処理を考えることを面白いと感じるかどうか.

私は頭使うの嫌いなタイプだから
「え? 配列内の並び替えをインプレースで…?」

「できらぁ!」

結果:バブルソート的なしょぼいコード

とかなっちゃうなぁ.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 配列へのポインタ (*a)[10] について
返信数: 52
閲覧数: 78320

Re: 配列へのポインタ (*a)[10] について

オフトピック
つまり,初心者をポインタで迷子にしないための方法として,以下が考えられる.

【「ポインタは難…」とか「Cの文法が…」とかいう話を展開しているような本なりサイトに出くわした場合,それは読まずに別のを探すこと】
という指針を前もって与える,という方法.

この篩はうまく機能する気がしてならない.
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 配列へのポインタ (*a)[10] について
返信数: 52
閲覧数: 78320

Re: 配列へのポインタ (*a)[10] について

オフトピック
【世の中に「ポインタがわからん」という人々が溢れている】
という話が真なのであれば(個人的にはこれ系の話自体が偽なんじゃないかと疑ってるけど)

これからそうなるかもしれない対象たる初心者に向けた文章に
> 「ポインタはアドレスだ」
なんていう ふわっとした フレーズが
時に,「ポインタは難しいぞぉ!」だの「文法がどうのこうのっ!」だのいう刷り込み目的としか思えない謎の呪文句を添えた形で
存在したりしていることがそもそもの元凶なんじゃないか? とか思えてしまう.

(個人の感想です)
by usao
4年前
フォーラム: C言語何でも質問掲示板
トピック: 配列へのポインタ (*a)[10] について
返信数: 52
閲覧数: 78320

Re: 配列へのポインタ (*a)[10] について

オフトピック
> 値型と参照型を同列に扱うほうが、どうして受け入れられやすいのか

コレ,世間では受け入れられやすいのか…

少なくとも今現在半径3mの範囲にいる人々(と私)の場合は
「ん? なにそれ? ちょっともう一回言って?」みたいな反応だったんで,かなり異端な集団だったのだなぁ…
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 配列へのポインタ (*a)[10] について
返信数: 52
閲覧数: 78320

Re: 配列へのポインタ (*a)[10] について

既に述べられていることの繰り返しになるが, void foo(int x[10]){ ... } は void foo( int *x ){ ... } と同じであって,"[10]" は何もしてくれない. コードを見た人間が「要素数が10個の配列を渡して欲しいんだろうなぁ」と察することの役には立つかもしれないが, 「うーん,でも今日は要素数が7個の配列を渡してみるか!」というのをコンパイルエラーにできない. 対して,件の"配列へのポインタ"では,コンパイルエラーにできる. "配列へのポインタ"を使う例を考えるならば, 例えば「俺は3次元の座標(ベクトル)を 要素数3の配列 で扱うぜ!」というこ...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 2Dアクションゲームにおける重力の実装について
返信数: 3
閲覧数: 5472

Re: 2Dアクションゲームにおける重力の実装について

「キャラクターを位置Aから位置Bに移動させようという際には,その経路を通過しても良いか否かの判定を行い, ルール的に(経路上に地面とか壁とかがあって)位置Bまで移動させてはいけないのであれば, ルール的に妥当な代替位置C(地面や壁の手前)にキャラクターを移動させることにする」 …的な形の処理にすればよいのではないでしょうか. > 地面に底部が当たっているときは重力を付加せずに みたいな手段で「地面に立っているから → 特殊ルールとして今は重力なし → 結果として今の位置に留まる」とするのではなくて, 「放っておいても重力の影響で下に移動しようとする → そこに移動してよいか?(→地面があるから...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 再帰関数
返信数: 8
閲覧数: 4148

Re: 再帰関数

挑戦してみたら素で失敗してワラタ int Buff[8]; //バッファは(何故か)関数の外におく //引数で「何番目を担当するか」を受ける関数を書く. //(nの値も必要だよね) void Func( int nth, //「何番目」だから,一番左を示す値は1である. int n //nの値は8以下の正の整数とのこと ) { //forを1個書いて,担当する位置に置いてある数を順に変えていく for( int i=0; i<n; ++i ) { Buff[nth-1] = i+1; //担当箇所を変える処理 //このfor文の中で再帰呼び出しをすること if( nth < n ) { Fun...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 再帰関数
返信数: 8
閲覧数: 4148

Re: 再帰関数

n重のforがどこに必要になるのかさっぱり謎だし 再帰をどこにどう使うと嬉しいことがあるのかも意味不明すぎるので, そこらへんの話を完全に無視した直感的なコードを示す.もちろん再帰を使ってない. 1mmでも参考になれば. void Test( int n ) { //行バッファ.nは8以下とされているので8個用意すればOKってことで int buff[8] = { 1,1,1,1, 1,1,1,1 }; while( true ) { //行の表示と終了判定 int count_of_n = 0; for( int i=0; i<n; ++i ) { if( buff[i]==n )++cou...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 双方向リストについて
返信数: 3
閲覧数: 2488

Re: 双方向リストについて

どうすればも何も,単にそれを実現するだけなら
単に2つのリストの全要素を持つリストを作って,それをソートすりゃ良いであろうことは火を見るよりも明らか.

リスト1:{ 1, 3, 5 }
リスト2:{ 2, 4, 6 }
 ↓てきとーに合体
リスト3:{ 1, 3, 5, 2, 4, 6 }
 ↓ソートする
リスト3:{ 1, 2, 3, 4, 5, 6 }


「てきとーに合体」ではなく,元のリストがソート済みであるという制約条件を利用した合体を行えば
最後のソートが要らないだろうこともまた自明に思える.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 質問です
返信数: 6
閲覧数: 3130

Re: 質問です

xがintだから
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: おめでとう❤️
返信数: 2
閲覧数: 2447

Re: おめでとう❤️

オフトピック
毎度この調子なんだから,それを誤爆とは呼ばないのでは.
人間なのか機械なのかわからんけど.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

> (2) 最初の64個の配列(二次元配列)が持つ意味や順序が分かりません……。 書いた人じゃないけど,まずここの部分がわからないときつそうなので,参考までに私の解釈を書いてみる. program側の思考処理に > 乱数で2つから1つ という仕様があるために, 64パターンの盤面全てに関して,pragram側の打つ手の候補が2種類ずつ用意されている,ということでしょうね. (1種類しか打つ手がない盤面に関しては { 0,0 } のように,同じものが2つ書かれている) 64パターンの盤面に 0~63 の通し番号を付与(※1)したとき, 例えば,盤面3番の状態でのprogram側が打つ手を決定する...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 個数のわからないものの平均値
返信数: 9
閲覧数: 4433

Re: 個数のわからないものの平均値

平均値の算出結果がおかしいのであれば,
平均値の算出処理か,あるいはその算出処理に与えたデータがおかしいであろうことは容易に推測できますよね.
例えば,後者側を怪しむならば,
average()の引数である,aとnの一方あるいは両方の値の妥当性を確認すべきです.
他人に訊く前に,そういうデバッグ作業をご自身でやってみてはいかがでしょうか?
・average()に渡される時点でのnの値は何になるべきですか? → 実際にそうなっていますか?
・a[]の中身には,本当にファイルの内容が正しく読み込めていますか?
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

オフトピック
プレイヤ側の敗北判定しか用意されていない突き詰められ具合が素敵すぎる
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

で,それはそれとして,コードの現状を見るに,まずは処理構造の大枠側から徐々に作っていく方法を採ってみると良いのではないかと思ったりするのですが,どうでしょうか. 例) 少なくとも,「1ゲーム」分の処理というのは,勝敗が決まるまでループすることになるでしょうから,まずはそのループが存在する大枠を書く. 例えば以下のような. 細部の処理はとりあえず必要な事柄をコメントで書いておいて,後で埋める. int main() { //初期状態の準備 (棒の状態を表す変数の値を全部1にしとくとかそういう事柄) ... //1ゲーム分の処理 while( true ) { //・プレイヤの入力処理 //・入力...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

まず,データの持ち方をちゃんと決めましょう. 6本の棒の状態を表すのに 元々やっていたように a,b,c,d,e,f なる6個の別々の変数を用いるのか, それとも要素数6個の配列を用いるのか. (少なくとも私の感覚では,前者の道は苦行そのものですが) で,決めたならば,強い意志を持ってその決定に即したコードを書きましょう. int StickState[6] = { 1, 1,1, 1,1,1 }; int a,b,c,d,e,f; この2行のうち,どちらかは不要であるハズ. ・(1)(2)および(5):  このあたりの事柄に関しては,私が#7で示したコードが参考になりませんか? ・(3)や(...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

棒が6本だから盤面の種類は 2の6乗(=64)パターンある. 終了状態(棒が1本だけ残っている状態)の6パターンを除外するとしても program側の手番のときに有り得る盤面の種類は58パターン. その全てに対応する出力を列挙したような実装を行うという話…なのかな? まぁ方法はどうあれ,そこの部分が最も書くのが面倒な部分になりそうですし, まずは,program側の思考処理はとりあえずの仮のもの (例えば「現状で倒せる棒のうちのいずれか1本だけを倒すよ」みたいな簡単な処理) を実装して, 「(programが弱いけれども)全体として正しく動く状態」の完成を目指すと良いのではないかと. (それが...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

オフトピック
さくっとできるだろう,と思ったらscanfの改行がバッファに残る問題で無限ループして泣きそうになったでござる.
とりあえずgetchar()で強引に改行を抹殺したが……
まともな対処方法は,きっと詳しい誰かが書いてくれるだろう.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

とりあえずヒント. 「入力した範囲の棒が消されていき,全ての棒を消したら終了」という内容. (うっかりC++だけど,Cとの差は,変数の定義が関数の先頭じゃないとか,bool使ってるくらいなので,まぁ問題にはならないだろう.) //※includeは省略 //RowIndex段目の先頭index //(前の投稿と一緒) int StartIndexOfRow( int RowIndex ) { int ret = 0; for( int i=1; i<=RowIndex; ++i ){ ret += i; } return ret; } //RowIndex段目に存在する棒の個数 int nBa...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

マウスとかチェックボタンとか書いてあったので 何かGUIが存在する世界で作っているのかと思ったのですが, printfやscanfを使うような形態(所謂コンソールアプリ)なのですね. であれば,とりあえず,マウスとかの話はやめてscanfで入力する物を考えると良いかと思います. 単純に,scanfを3回使って > {何段目の,何本目から,何本目まで} を入力させてはいかがでしょうか. で,それはそれとして(?),棒の状態を表す変数が a,b,c,d,e,f という現在の実装だと, そういった入力に対しての処理を実装するのがとても困難になるかと. 複数の棒の状態を個別のa~fで表現するのではなく...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 複数ファイルの平均値
返信数: 9
閲覧数: 4406

Re: 複数ファイルの平均値

n=0;
を26回回るforブロック内の先頭にでも入れたらどうでしょう.
(というか,「564個」って決まってるならば,数える必要性自体が無いような…?)
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 18156

Re: C言語で「棒消しゲームを作る予定です」

> ところが、二点間の線引きについては、C++とかの説明はありますが、普通のC言語では見当たりませんでした。 この文章だけでは,何が困り事なのかがちょっとわかりませんが… マウスの操作状況を取得できる状態にあるのならば, 「マウスで引いた線の形」=「マウスボタンを押しから離すまでの間にマウスカーソルが通った座標群(つまり折れ線)」 をデータとして蓄積することは可能かと思います. であれば,折れ線を構成する各線分が各々の「棒」と交わったか否かを判定すれば良いのではないでしょうか. その他の入力方法としては, {何段目の,何本目から,何本目まで}という形で3つの値で入力させれば良いように思います.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 複数ファイルの平均値
返信数: 9
閲覧数: 4406

Re: 複数ファイルの平均値

とりあえず提示されたコードでは

コード:

fp_out=fopen("aa1.txt","w");
この行が何度も処理されるように見えるので,

> 最初に一回オープンすればよいと考えました。

という考えと矛盾していませんか?
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 複数ファイルの平均値
返信数: 9
閲覧数: 4406

Re: 複数ファイルの平均値

結果出力用のファイルに関して,どのタイミングで何回オープンすれば良いと考えていますか?
オフトピック
この質問に限らず,プログラムに関して質問を行う多くの人間が
単に「うまくいきません」とだけ書いて発生している{問題,現象,etc}を意図的にぼかす,
この行動は一体何なのだろう?
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: E0020 識別子 "GameScene" が定義されていません
返信数: 4
閲覧数: 3315

Re: E0020 識別子 "GameScene" が定義されていません

同じような書き方してる TitleScene や PrepareScene と
同じようにやりゃいいんじゃないかと思いますが.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: ソースファイルが開けません
返信数: 6
閲覧数: 3139

Re: ソースファイルが開けません

「適当にテスト用のプロジェクトを作り,そこに新しくヘッダファイルを追加する」ことはできますか? 新しいヘッダファイルとして,例えば以下の内容の A.h を追加したとして…… const int TheValue = 1942; これをmain関数があるソースファイルでincludeしたらエラーが起こりますか? //例.細部は違うだろうが. #include "A.h" //A.hをinclude int main() { printf( "%d", TheValue ); //A.h内に書かれているTheValueの値を参照してみる return 0; } ここまでOKなら,A.hの中身を丸ご...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 外部シンボル~~が出て何を言っているのかわかりません
返信数: 23
閲覧数: 7973

Re: 外部シンボル~~が出て何を言っているのかわかりません

オフトピック
実装が書かれたファイルをincludeしようが,
(わかってやってるなら,だけど)「デタラメ」ではないと思うので,「力技」と称した.

課題で「分割コンパイルしなさい」とか指定されている場合にはまずいかな.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: javaでPC向けシューティングを作りたいが・・・
返信数: 7
閲覧数: 10505

Re: javaでPC向けシューティングを作りたいが・・・

オフトピック
CPU見て,一瞬「俺が大学生時代に使ってたPCでも動くようなソフト作るのかよ!?」とか思ったけど
OSと要求メモリ量的に無理な模様w

で,そのOSだと今度はメモリ量1Gってのはきつそうだし,なんか不思議なスペックですね.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 画像の描画でどうしてもわかりません。
返信数: 13
閲覧数: 6739

Re: 画像の描画でどうしてもわかりません。

オフトピック
「そんな当たり前の確認はとっくに済ませてるんだよ!」みたいなことがある場合には,
その旨は述べた方が,他の回答してくれている方々にも参考になると思いますよ.

以上です.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 画像の描画でどうしてもわかりません。
返信数: 13
閲覧数: 6739

Re: 画像の描画でどうしてもわかりません。

重くなるかどうかに関しては (その程度の話ではほとんど差は見られないのではないかと予想しますが) 実測比較してみれば良いのではないでしょうか. なんつーか, MapChip[i][j].x,MapChip[i][j].y なんてデータを「わざわざ用意して参照している」んだから, 「グリッド状に敷き詰めるなら各々のチップの描画位置は i*s と j*s とかで簡単に求まるよね」的な話とは「何かしら異なること」をやってるんでしょ? そこの部分の説明無しに「わかってくれる云々」とかエスパー求めてる姿勢がまず謎すぎる. で,「そこの部分がバグってるかもしれないけどよくわからんから場当たり的な対処方法を...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 画像の描画でどうしてもわかりません。
返信数: 13
閲覧数: 6739

Re: 画像の描画でどうしてもわかりません。

> やはり今回のソース上はなにも問題ないということですよね。。 DXライブラリの詳細はしらないけども, 画像の描画先がどこになってるのかは, MapChip[i][j].x,MapChip[i][j].y こいつら↑の実際の値次第なんだろうから, これらの値を知らない他者がコードだけ見てもその正当性は判断付かない話なのでは……?? で,それはそれとして, 【自分のコードのバグなのか,それともライブラリ側のバグなのか】を調べたいならば, 「自分のコードが悪いかもしれない要素」を可能な限り排した状態のコードで確認をすべきでは? 例えば,2枚の画像を描画するだけのコードを,「座標を直値で」コーディン...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタの読み方
返信数: 4
閲覧数: 2441

Re: ポインタの読み方

要素の型がdoubleで要素数が5個な配列を指す用のポインタ型変数aの定義(and/or 宣言) だと思うけど,
どう発音するのかはわからないです>読み方
オフトピック
よくよく考えると,*がない(配列定義)記述でも,どう読み上げるのが正しいのかを知らない.
int a;
なら「いんと えー」とかで多分いけると思うんだけども.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: アナログデータのリアルタイム描画
返信数: 38
閲覧数: 34776

Re: アナログデータのリアルタイム描画

オフトピック
offtopicにしてる話なので,今の話の流れに無関係であれば気兼ねなく黙認してくださいな.

要は,
何らかのレンダリング処理を自前で書いたとして
そのレンダリング処理に要する計算やらデータアクセス処理やらの実装自体が重い場合,
DirectXだの何だのを持ってこようが,肝心のボトルネック部分が改善されるわけじゃないんだから意味ねぇよな,っていう.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: アナログデータのリアルタイム描画
返信数: 38
閲覧数: 34776

Re: アナログデータのリアルタイム描画

オフトピック
余計な話でしょうが,
本当に 描画処理が重い ということなのだとしたら
真っ先に考えるべき事柄の1つとしては,
その描画処理部分の実装を改善できないのか?(要はその部分の実装が良ろしくないのでは?)
という方向の話があるかな,とか.

(まぁ,そういう次元の話はもう既にやりつくしているからこそ,DirectXだの何だのを使うことで得られるかもしれない差分量に期待…的な話をしてるんだろうけども.)
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 構造体について
返信数: 26
閲覧数: 14399

Re: C言語 構造体について

文字列の【部分一致】で検索するって話でしょ.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 構造体について
返信数: 26
閲覧数: 14399

Re: C言語 構造体について

これ以上補足不要だとは思うけど, わからんと言われているforの箇所を日本語で書けば,下のような話でしょう. //5つのデータ全てに関して,それを表示すべきか否かを調べ,表示すべきなら表示する for( int i=0; i<5; ++i ) //5つのデータに関してループ { if( i番目のデータは表示すべきか? ) { i番目のデータを表示する } } べつにforを使わずに,他の方がおっしゃるようにwhileとか使っても実装できるでしょうし, 極端な話(?),データ数が5個だと決め打ちするならば //5つのデータ全てに関して,それを表示すべきか否かを調べ,表示すべきなら表示する if(...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 構造体について
返信数: 26
閲覧数: 14399

Re: C言語 構造体について

> 氏名の一部を入力すると点数を表示する つまり,「入力された氏名の一部に対して,どのデータを表示すべきか?」を判断する必要がある. データは5つあるから, ・最初のデータは表示すべきか? ・2番目のデータは表示すべきか? ・… ・5番目のデータは表示すべきか? の判断を行わねばならない. 言い換えれば, 5つのデータ全てに関して,入力と照らし合わせて,そのデータを表示すべきか否かの判定処理を行う必要がある. 「5つのデータ全てに関してXXXする」というのを実装する手段として,そのコードでは(たまたま)forを用いた,というだけのことでしょう. 例えば,要素数5の配列 a[5] の全ての要素を...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 円と回転四角形(長方形)の当たり判定
返信数: 6
閲覧数: 4375

Re: 円と回転四角形(長方形)の当たり判定

わかりやすく絵で説明すると,
下図の,破線より左側の世界と右側の世界とで
「衝突判定」の処理でやることは全く一緒だよね,っていうだけの話.

x-yの世界で処理できるなら,u-vの世界で全く同じことをすればOK.
Fig.png
Fig.png (9.2 KiB) 閲覧数: 4287 回
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 円と回転四角形(長方形)の当たり判定
返信数: 6
閲覧数: 4375

Re: 円と回転四角形(長方形)の当たり判定

何かこの話題,以前にもあったような気がしますね.
viewtopic.php?f=83&t=16423
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: 円と回転四角形(長方形)の当たり判定
返信数: 6
閲覧数: 4375

Re: 円と回転四角形(長方形)の当たり判定

回転してなければ判定できるのでしょうか? →できない場合は,まずそこからやるべきなので,ここではできるのだと想定します. 回転してなければ判定できるのだとして, その処理が何かしらの関数として実装されているとしましょう. 例えば, //長方形と円の当たり判定.当たっているならtrueを返す bool IsCollide( 長方形, 円 ) { ... } みたいな. 回転後の座標系で,↑の関数の引数として必要なデータを表現すれば,この関数を使って判定できますよね. > やはり4隅の座標は求めなければならない感じですか。 「4隅の座標」が必要かどうかは,衝突判定処理がそれを必要とするかどうか,に...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: アナログデータのリアルタイム描画
返信数: 38
閲覧数: 34776

Re: アナログデータのリアルタイム描画

> 仮に間引く場合ですが、その端末で処理が「遅い」か「早い」かって > 実際に描画処理を走らせる前に判別する方法ってありますか? わかりません. ただ, > 準備中に検証用データを裏で処理させて …的な処理だと,その検証結果と実処理との間にどれだけ差があるのかわからないので(それこそ環境次第な部分もある?)どうなのかなぁ,とか…? 「処理の最初の時点からいきなりうまい具合に動かないと話にならない!」という厳しい(?)話でないならば 実処理中にかかった時間でも計測して動作中に適宜調整される仕組みとかにしてもいいと思うけど… (この話題の解決策としてはずれているからofftopic) 【調整が効く...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: アナログデータのリアルタイム描画
返信数: 38
閲覧数: 34776

Re: アナログデータのリアルタイム描画

(1)側に関して: > 1秒分のデータ ってのを何回に分けて描画&表示 しているのかわからないけども, 測定周期よりも早くできちゃうのが困る場合には, 都度(測定周期 - かかった時間)だけ描画&表示の進行を待ってやればよいのでは. (2)側に関して: > 作法 なんてものがあるのかすら知りませんが,  【測定者】→(測定データ)→【描画者】→(描画結果)→【表示者】 という3者の間で速度差をどう吸収するか?って話ですよね? ・【描画者】が遅い場合は,前記した通り,描画データを間引くしかないかなー,と思います. ・【表示者】が遅い場合は,【表示者】がビジーな間は【描画者】は同じ画像バッファに描...
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: アナログデータのリアルタイム描画
返信数: 38
閲覧数: 34776

Re: アナログデータのリアルタイム描画

(1)
描画が測定より早い場合に,毎測定ごとにデータ描画して更新するよりも「カクカク」しない描画の仕方って何だろう?

(2)表示が遅れる場合:
まず,(何らかの画像バッファへの?)「描画」が遅いのか,
それとも,描画したものを「表示」するのが遅いのか,どちらなのか?

「描画」が圧倒的に遅いという場合,
どんどん遅れていくのを避けるには
データをてきとーに間引いて描画する的な措置しか思いつかない.

「描画」の速度が問題なのではなく「表示の更新」側が足引っ張るようなら,
「たまったデータを全描画したら→更新」にすれば良い(データ測定が等速ならば,表示遅延が一定になる)ように思うけども.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: ゲーム開発に日常的に使っているものは何ですか?
返信数: 35
閲覧数: 42746

Re: ゲーム開発に日常的に使っているものは何ですか?

seruvo さんが書きました:
5年前
質問の話に戻るのですが、DXライブラリでゲームを作りまくることで、ゲームプログラミングの勉強は十二分にできるということですか?

DirectXから学べることとDXライブラリから学べることの違いはあるのですか。
> ゲームプログラミングの勉強

という言葉が含む範囲次第になるのではないかと.

ライブラリ側が受け持つ領域がこの「勉強」の範囲に含まれないならば
この問いへの答えはYesになりそうだし,
逆に,ライブラリ側が受け持ってくれるがためにその使用者が意識(理解)せずに済む事柄が「勉強」の範囲に含まれるようであれば答えはNoになり得るのかも,と.
by usao
5年前
フォーラム: C言語何でも質問掲示板
トピック: タイムスタンプの管理
返信数: 3
閲覧数: 2227

Re: タイムスタンプの管理

> 浮動小数での表示は不都合

話がよくわからないけど,固定小数じゃダメなのだろうか?
(「それなりのでかいサイズの整数型」を用いて,その1の位を[μsec]と見なせば)

詳細検索ページへ移動する