検索結果 1558 件

by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 荷物を指定の場所に運ぶあのゲームについて
返信数: 18
閲覧数: 3256

Re: 荷物を指定の場所に運ぶあのゲームについて

>分からないところが出てきたので質問させて頂きました。
なんというか,示された1~5を除くと,あとはほとんど何も残らないわけですが…

とりあえず1だけ答えておくと,「Object」は14行目~にありますよ.
その本からの情報だけで読み解けないのあれば,文法の方も別途本なりネットなりで学ぶ必要がありそうです.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 乱数が重複
返信数: 32
閲覧数: 2945

Re: 乱数が重複

>int suit[4]={1,2,3,4};のところをD,S,Q,Hにしたいのですが、どうすれば良いですか? >ちなみにchar型にしても出来ません。 意味がわかりません. char suit[4] = { 'D', 'S', 'Q', 'H' }; とか書きたいのでしょうか? >52回 >有限ループがわかりません・・・。 あなた自身が「無限ループ」を書いて,ユーザ入力の結果によって終了するようにコードを書いているのですが…?? 一定回数だけ繰り返したいのであれば,そのように書くだけだと思いますが. 「一定回数繰り返させる書き方がわからない」とかいう話なのであれば…さすがに回答しがたいです....
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 乱数が重複
返信数: 32
閲覧数: 2945

Re: 乱数が重複

「何が」わからないのでしょうか?
当初は13枚で考えていたように見えたのですが,13枚の場合はできたのでしょうか?
13枚から52枚に増えたからといって特段何も変わらないと思うのですが.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクトの指向勉強法
返信数: 11
閲覧数: 1066

Re: オブジェクトの指向勉強法

「オブジェクト指向」ってよく聞く言葉だけど
具体的には何なの?っていうか どうしたらそれに該当して,どうしたらそれに該当しないの?っていうあたりが
私は かなりぼんやりしている感じ.

 オブジェクト指向じゃない
 ----------------------------- ←こんなはっきりした境界線があるのかどうかが?
 オブジェクト指向です

何をしたら「オブジェクト指向を勉強」していることになるのだろうか?(概念というか哲学的な何か?)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 乱数が重複
返信数: 32
閲覧数: 2945

Re: 乱数が重複

他のトピックと酷似しているようですが,
こっちではスートの概念がない(1~13の13枚しかカードがない)ということでいいのかな?
http://dixq.net/forum/viewtopic.php?f=3&t=13282

forで回さずとも1要素だけ動かせば良いように思います.

コード:

    //for( i = num; i < max - 1; i++ )
    //    test[i] = test[i+1];
    test[num] = test[max-1];
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ハッシュ関数の動作がわかりません。
返信数: 3
閲覧数: 490

Re: ハッシュ関数の動作がわかりません。

>どういう方法
と問われても,コードそのものがその答えだと思うので,質問をより具体的にすると良いかと思います.
(授業ではこのコードに関する説明などは無かったのでしょうか?
 何かしらあったのであれば「XXXだといわれたがその意味がわからん」みたいな聞き方をすれば
 詳しい人が解説してくれるかもしれません)

#signedで計算してるのは何かしらぐちゃぐちゃと値が混じることを期待している…のかなぁ??
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 良いアルゴリズムがあれば教えてください
返信数: 21
閲覧数: 1184

Re: 良いアルゴリズムがあれば教えてください

・部屋を形作らない壁(├ の横棒みたいなの.ループを形成しないやつ)が存在しない ・マスは包括関係にない2つの部屋に共有されない(本来共有部分が別の1部屋になるべきだが,データ上はそんな形もあり得る) という条件であればISLeさんの示された方法 >調べたいマスから、上下左右のいずれかの方向に直線を伸ばし、その直線と交差する壁の数をカウントします。 >そのマスは、交差する壁の数が奇数の部屋に含まれます。 >これだけだと部屋Gには必ず含まれるので、4方向調べて、交差する中でより近い壁を持つ部屋という条件を加えれば…どうでしょう。 で良いように思います. 長方形のいずれかの■から4方向調べ, その...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次関数について
返信数: 4
閲覧数: 572

Re: 二次関数について

>scanf("%lf", &a, &b, &c);
多分ここかな
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ロゴを表示させた後の処理
返信数: 3
閲覧数: 702

Re: ロゴを表示させた後の処理

DXライブラリは知らないのですが,
SetDrawBright()をググってみた感じだと,これで設定した影響は以降ずっと続くのではないでしょうか.
すなわち,フェードアウト を終えた時点で 描画輝度(?)が(0,0,0)に設定されていることが,
その後の ninjin() 等で行う描画にも影響を与えていて,結果として描画結果が見えていないのだと推測します.

…と思ったら,それだとしたら14行目の表示から見えないことになってないとダメですね.違いそう.
WaitKey(); の前に ScreenFlip(); が要るのかも?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 配列の要素の比較に関して質問です。
返信数: 4
閲覧数: 10399

Re: C言語 配列の要素の比較に関して質問です。

提示されたコードの前に ・Aの配列の中身を適当に決める ・Bの配列の中身はrand()を使用してランダムに決める ・count=0; くらいのことが当然なされているんですよね?(確認) さて,この程度の短さのコードであれば,デバッガを使わないとしても各所にprintf()を挿入して見るとか あるいは紙とペンを用いてででも処理を追えると思いますので,ぜひそうしてみてください. 各変数がどのように変化していくのかを見れば,何が起こっているかわかるはずです. >一致しなかった部分は再度rand()を使用して とは 「何の」部分 であるべきか. 現在,rand()が使われているのはline8のみであり...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

頓珍漢なことだけ書いて逃げた人 みたく見えてしまってもあれなので 私が考えていた(過去形です)こともざっと申し上げておきます. >そして2.でイジったコードは4.ですべて削除されるでしょうし作業対象も増えます。 作業が増えるのは困りものなのですが,私は,この過程こそが飛ばしてはならないものなのだと考えていました. >わたしが思い描いていたロードマップは、 > 1. 内部の当たり判定をマス単位に変更 > 2. 当たり判定に食い込んでいるピクセル単位の処理を除去 の2の時点で,それまで存在してたバグや問題点(表面化していたものも潜在的なものも)がなくなってしまいます. それは「問題の改善」以外の何...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

>色々アドバイス頂いたのにすみません。 あやまることは何もありません. というか,私はNo.30付近の話を見て,方針がNo.31のような事柄なのだと思い,以降を書いていたわけですが, >全く違う のであれば,私はいったい何をやっていたんだ?というか 行われている話とは違う事柄を書いていらぬ混乱を招いただけであり,謝るべきはむしろこちらです. 本来伝えたかったことは私が最初に書いたような事柄であったはずなのに 内容方面に立ち入ってしまったのは完全に失敗でした. 方針が固まったのであれば,その方向で頑張ってください. その際,No.31~の内容は全く役に立たないかもしれませんが, 少なくとも私が最...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

>●「だれか一人でも動けたよフラグ」の存在の意味 >コードを見たところ、このフラグがtureになった後に与える影響がわかりません。 while(1){...}を抜ける条件に使用しています. このwhileループの各回において,いずれかのキャラが”「俺は移動するぜ」という判定をした”場合, そのキャラの座標移動によって空いた箇所に丁度入りたい別のキャラが存在するかもしれないので, その場合はwhileループを抜けません. >●判定終えたフラグ[ このキャラクタ ] が trueになった後、それをfalseに戻すタイミング。 ”ループに入ろうとする際に毎回”で合っています. >usaoさんの疑似コ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

うーん,なんというか
”一度に改善してくステップの細かさの単位”がどのくらいの刻み幅が良さそうか?
という点での考えの違いなのかな,という気もしますけど,
方針が食い違っているのであれば,先に対応されていた方の方針をないがしろにする気はありませんので
その場合は消えるべきは私かと.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

>1ピクセルずつ移動しながら、マス判定とユーザー入力判定を並行してやろうとすれば複雑で分かりにくいのは当たり前です。
おっしゃる内容については全く同意ですが,
この点に関しては「参考にされたページで取られている方法のひどさ」をそのまま引きずっている結果と思われるので
(まぁ,その方法をそのまま流用するという判断を下したのは利用者側なのだ,という話はあるかもしれませんけど)
現段階で この点を問い詰めるのはどうかなー…とか思ったり.

>21. キャラを一区間歩かせる。
>http://dixq.net/g/23.html
>を利用し、16マス区切りで移動させています。
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

おおっと,これだと >まだ動いていないキャラをすべてチェックし直す の「まだ動いていないキャラを」の判定がないので,別の問題が出てしまうかもしれませんね. //キャラクタ数分の,「私はこのフレームでの判定は無事に終えました」チェックフラグを用意. bool 判定終えたフラグ[ キャラクタ数 ]; //※↓のwhileループに入る前に,すべてfalseに初期化しておく. while( 1 ) { bool だれか一人でも動けたよフラグ = false; //全キャラ分移動処理ループ for( All Charactors ) { if( 判定終えたフラグ[ このキャラクタ ] == true )...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

>自分の頭の中でも順番を意識して組み立てていたUpdeta内だったのですが、 >実際は思ったようになりませんでした。 簡単な処理,というか,「自分にとって自明な処理内容」であれば (1)処理手順を考える→(2)コード書く という手順で十分ですが,そうではない場合であれば (1)処理手順を考える→(2)私が示したような,日本語な状態での疑似コードを書いてみる→(3)コード化する という手順を踏むことを個人的にお勧めします. (よく「フローチャートを書きなさい」とか言いますが,それを フローチャートという図 ではなくて コードっぽい形 で書く,ということ) 利点は (a)プログラムっぽく書くので,...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: do whileの使い方
返信数: 3
閲覧数: 12069

Re: do whileの使い方

貼られた断片だけを見た勝手な想像ですが, ・GetRand(2)は{0,1,2}のいずれかを返す関数 ・これは3体の敵のうちのどれを攻撃対象とするか を選択するための処理である ・「倒した」敵に該当するghost[].flagは どこかでFALSEでない値に書き換えられる ・shot[0].flag==TRUE のとき,どこかで攻撃処理が行われる ・現状,この箇所で無限ループはしていない(何らかの対処は他所で行われている) とかいう感じでしょうか? 合ってるか違うか知りませんが. コードを提示する際には,最低限こういった事柄を説明すべきかと思いますがどうでしょうか? 仮に,以上の想像が合ってい...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 住所録の単方向リストによる作成
返信数: 1
閲覧数: 4959

Re: 住所録の単方向リストによる作成

・とりあえずコードはインデントを揃えた形にしてください.見難いとそれだけで見る気が失せる→結果回答が減る 可能性があります. ・aaa.data, save.data といったファイルの役割はなんですか? ・おそらく「既存のデータをファイルからロードした後で,特定のデータを変更」ということをしたいのだと思いますが…  その前に「既存データをロードしたら→それらの内容を列挙して表示する」ことが実現できますか?  (これができるなら,「j番目のデータがどれか?」は自明です.) ・課題であれば,さしつかえなければ その問題文を全文そのまま書いた方が無駄な問答を繰り返さなくて済むかもしれません.  (...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

多分,やりたいことは以下のようなことなんだと思いますが, (1)キャラクタがN人いて,それぞれの現在位置の箇所にフラグが立ってる2次元配列がある,  例えば,キャラクタのいる箇所を1で,他を0で埋めているような. for( All Caractors ) { (2)各キャラクタの移動処理 (2.1)いまから移動可能か?(posX%16==0とかいう判定.移動アニメーション中でないことを判定していると思われ.)可能なら(2.2)へ. (2.2)移動しようとする方向の決定.例えばプレイヤ操作対象ならキー入力で判定.移動したいのなら(2.3)へ. (2.3)移動したい先が開いているか調べる.フラグ配...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 学校の課題なのですが…
返信数: 4
閲覧数: 5678

Re: 学校の課題なのですが…

その課題文を読むんだら 私は
・gの割合
・cの割合
をそれぞれ出せ という意味に解釈しちゃうけど,違うのかな?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

無駄に刺激してしまったようで申し訳ないですが,失礼ついでに 「あくまでも個人的に感じたこと」を申し上げれば, ISLe さん(NO.20)が指定されていることが問題としている現象そのものであるとするならば, 現象はたかだか2フレーム間の情報から観測できる&対象オブジェクトも非常に少数であり, デバッガで追うなり,問題箇所の動作ログを吐くなり,あるいはprintfデバックなりでもすれば ”(実情を知らない外野から見れば)容易にわかりそうな類のもの”だと感じます. #一応断っておきますが,  コードは先の投稿前にダウンロードして該当箇所と思われる場所を眺めてはみました.  動作解析をするつもりで見...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 28121

Re: キャラ同士の重なりについて

横から口を出すべきではないのかもしれませんが,
解析を他者に投げる前に
まずは自分のプログラムで起きていることを自分で解析してみるべきなんじゃないでしょうか?
(特定の条件で現象が起こることがわかっているのなら,
その時のコードの流れとか変数の値の変化を追って原因や何が起こっているかを調べる.
自分が想定したのとは違う判定結果や変数値変化が起こっているはず.)
「そういった努力は既にやったうえでなおかつわからないから言っているんだよ!」というのであれば,それはそれで
少なくとも解析を頼む相手に,そのとき得た情報も伝えた方がスムーズにいくんじゃないでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: アキュムレータマシン(Verilog HDL)
返信数: 5
閲覧数: 11899

Re: アキュムレータマシン(Verilog HDL)

Verilogはほんのちょっとさわったことがあるだけですが,

>課題としてトップモジュールのブロック図を描くようにいわれたのですが、

最低限これだけを達成するのであれば,各モジュールの中身を知る必要はなく,
単に,トップレベル内に存在する各モジュールを矩形で表して
トップレベルの入出力信号線や,それらモジュールの入出力信号線の間での接続っぷりを図示するだけでよいのではないでしょうか?
(「トップモジュールのブロック図」って,そういうことではない??)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 平滑化・エッジ抽出フィルタの高速化
返信数: 3
閲覧数: 10346

Re: 平滑化・エッジ抽出フィルタの高速化

そもそも,フィルタカーネルの内容に対して特化した話でもよいのか,
フィルタカーネル内容によらない汎用関数filtering()を高速化したい という話なのか,どっちなんでしょう?

前者であれば,「平滑化なら~」という話ができますが,
後者だとすれば,まず,現状だと何が(どこが原因で)遅いの?ということを示してもらわないと答えられないんじゃないかなぁ?
(入力や出力の配列へのアクセスが遅いとかいう話なら→なるべく配列アクセス回数を減らす とかいう方針が立つかもしれない)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: else文がifと一致しません
返信数: 14
閲覧数: 10643

Re: else文がifと一致しません

最も少ない変更で済ますならこうかな?

コード:

if (na == nb){
    puts("AとBは等しいです");
    return 0;  //←コレを追加
}else if (na > nb){
    ....
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次元配列のランダム化について
返信数: 12
閲覧数: 20378

Re: 二次元配列のランダム化について

>なぜ「勉強方法からアドバイスを受けましょう。」とフォーラムルールにわざわざ書いてあるのかを考えていただければ幸いです。
いや,なんとなくそういう雰囲気なんだろうな,と思っていたのですが,
まだ課題内容しか出てなくてこれからやりとりするような段階でいきなりほぼ答え丸出しなコード書かれちゃってる状態に対して,
その記述の中身への突っ込みこそあれ,そのこと自体へは何も言われてないようなので「あれ?容認されているのか?」と…

まぁ 何かうるさく言いたいわけではなく,なんとなく確認したかっただけなので.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次元配列のランダム化について
返信数: 12
閲覧数: 20378

Re: 二次元配列のランダム化について

”課題丸投げするな”という注意はあっても
”ダイレクトに答えのコードを貼って即終了させるな”とはどこにも書いてない…か.じゃあいいのか.失礼しました.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ファイルの入出力について
返信数: 14
閲覧数: 14150

Re: ファイルの入出力について

とりあえず誰もつっこまないみたいなので,以下を指摘しておきます.

コード:

fclose;
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 空のstringの表し方について
返信数: 5
閲覧数: 11507

Re: 空のstringの表し方について

どのファイルも 読むか読まないかはその時次第 とかであれば Handle CreateDefaultData(); //全くファイルを用いない状態でのデータ構築 Handle loadVertFile( Handle, const string& vert); //Handleで指定されたデータについて VertFile の領分だけを変更 Handle loadGeomFile( Handle, const string& geom); Handle loadFragFile( Handle, const string& frag); Handle loadTessFile( Handle, ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次関数で近似
返信数: 5
閲覧数: 828

Re: 二次関数で近似

>(3)Nの値が2なのに対して,配列アクセスが[2]でされており,領域外参照になっています. これについては解決していますか? >mx[]が初期化されていない これは あなたが最初に提示したコードで,11行目で未初期化状態で定義したmx[]が,その後一切さわられることもなく 37行目でprintf()での表示対象になっている ということです. あなたの現在のコード状態は不明ですので,現状どうなっているかわかりません. ma,mbにちゃんと値を設定できたなら,あとは GAUSS()に正しく引数を私さえすれば答えがでるんじゃないでしょうか? (関数名等の雰囲気的に,おそらくガウスの消去法だと思う=...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次元配列のランダム化について
返信数: 12
閲覧数: 20378

Re: 二次元配列のランダム化について

というか,ここって課題系の質問に対して
ダイレクトにコードを はいどうぞ って提示しちゃっていいのでしょうか?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次関数で近似
返信数: 5
閲覧数: 828

Re: 二次関数で近似

とりあえずやりたいことは データ点群に対する最小二乗当てはめ ですね. //※面倒なのでΣを省略している [ 1 x x^2 ][ a0 ] [ y ] [ x x^2 x^3 ][ a1 ] = [ xy ] [ x^2 x^3 x^4 ][ a2 ] [ x^2*y ] から,左辺の行列の逆行列を右辺にかけて,[a0 a1 a2]^T を得ようというわけですね. …で,現状,この式の各項を計算する箇所しかなく,逆行列云々の話がありませんので,当然,まともな結果は出ないわけですが. (何の初期化もされていないmx[]の内容を表示しているだけ) まずは,その実装を追加するか, あるいは現状使わ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次元配列のランダム化について
返信数: 12
閲覧数: 20378

Re: 二次元配列のランダム化について

具体的に何がわからないのですか?
現状(2次元配列のサイズ等がわかる状態の)コードを示してください.

#とても一つの課題となるような内容に見えませんが…
 さしつかえなければ,課題全文のようなものを示された方が,有効な回答が得られるかもしれません.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 二次関数で近似
返信数: 5
閲覧数: 828

Re: 二次関数で近似

(1)そもそも計算処理自体がまともに走っているのかどうかが,読み手には不明です.
 コードを貼ってあとは読め,という状態で投げるのではなく,「どういう方法で近似するのか」くらいは説明するべきかと思います.
(2)関数PIVOTとGAUSSはmain()から全く呼ばれておらず,
 コード内に存在している意図が不明です.用いないのが正しいのでしょうか?
(3)Nの値が2なのに対して,配列アクセスが[2]でされており,領域外参照になっています.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 武器や乗り物の画像について
返信数: 4
閲覧数: 552

Re: 武器や乗り物の画像について

分離しておける(&組み合わせが簡単な)ものであれば そうしておけばいいのではないでしょうか.
一枚絵状態で利用したい場合は利用側で勝手に組んで一枚絵にすればいいわけですし.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 読み込めないのかどうなのか
返信数: 6
閲覧数: 4425

Re: 読み込めないのかどうなのか

コードを見るといろいろとつっこみどころはあるでしょうが,
>今自分が知りたいことは、「どうすればちゃんと処理を実行させられるのか」ということです。
と,わざわざ強調されているので,
超絶右留斗羅天才プログラマーさんが回答された内容以上のものを現在は求めていない のではないでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体のリンクエラー error LNK2001:
返信数: 7
閲覧数: 3863

Re: 構造体のリンクエラー error LNK2001:

> 1>renda.obj : error LNK2001: 外部シンボル ""struct Mouse_t Mouse" (?Mouse@@3UMouse_t@@A)" は未解決です。 > 1>C:****/***/***/***.exe : fatal error LNK1120: 外部参照 1 が未解決です。 エラー表示の中ではわかりやすい部類のものと思いますよ. 「私renda.objですけど,なんか外部に存在することになってるMouseっていう変数を参照しろってことになってるけど,見つからないんですけど…」 ということなので,問題は「変数Mouseのありかがrenda.obj(ren...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリのゲームで制限時間を追加したいです
返信数: 29
閲覧数: 12774

Re: DXライブラリのゲームで制限時間を追加したいです

わたしはDXライブラリを使ったことがないので 的外れかもしれませんが… ゲームループ内に記述されている処理が「絶対に1/60秒以内に終わる」保証があるのでしょうか? 複雑な処理を行えばそれだけ処理時間がかかると思うのですが, 「1分」を実現する方法として,単純にループ回数をカウントすればOKみたいな話で本当に解決するのか疑問です. #そもそも「ゲーム的な制限時間」に「実時間での1分」を制限時間とすることの妥当性はあまりないでしょうから  ループの回数を使う方が ゲームの制限時間 の実現方法としては良い方法だとは思うのですけど,  なんかレスをみていると,「実時間の1分」の方をを測ろうとしている...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 巡回セールスマン問題or-opt法について
返信数: 4
閲覧数: 1779

Re: 巡回セールスマン問題or-opt法について

私はそのアルゴリズムを知りませんので, 「検索してみた感じだと経路が良くなる場合のみ更新する っぽい  →本来振動し得ないだろうな  →経路の評価をしている部分とかがなんかバグってるんだろうな」 くらいの感想しか抱けません.故にお役には立てませんが… 誰か他の方が有用な回答をできるようにするためには,  あなたの現状コードを全部乗せると長いから無理 という場合でも,  アルゴリズムの実装の部分が怪しいのであれば  問題としている現象が再現される最低限のコードを作って投稿する(例えば,巡回先が非常に少数な例とか) とか方法があると思います. また,「何かのアルゴリズムを実装したコード」は,バブル...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 1775

Re: 状態遷移のプログラムの課題

>どこか問題点があればご指摘ください。 問題文を見た感じだと 超絶右留斗羅天才プログラマーさんが示したコードにあるように, 「3000回のループの中でsrand()を毎回つかう」ことが求められているようにも見えますね. 最初の投稿時の問題文が出された課題文そのものなのだとすれば, 直しておいてもよいのではないでしょうか. もしコードを提出するのであれば,わたしだったら for( int j=0; j<3000; j+++ ) { //意義はいまいち不明であるが,問題文を読むかぎりだと //3000回の試行では,異なるseed numberを用いることが指定されているようなので, //ここでsr...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 難易度選択
返信数: 8
閲覧数: 2021

Re: 難易度選択

分岐先の種類が少ない場合はswitchで済ませた方が早いけど, 以下のような状況が今後起きることが想定されるならば, (Cの範囲でやるなら)関数ポインタを使う方が扱いやすいかな? ・分岐先が今後多数になることが想定される場合  例えばSRPGみたいなのを考えると  {タイトル,難易度選択,ゲーム進行(MAP上でユニットを動かすあたり)}の他に,  {コンフィグ,セーブロード画面,ユニットパラメタ表示画面,戦闘シーン,ステージ間のなにか}  とかいろいろな区分が考えられる.  実装が進んで新しいシーンが増えるたびに,「当該新シーンの処理内容コードの追加」とセットで,  「switchで分岐してい...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 1775

Re: 状態遷移のプログラムの課題

↑ができたら,あとはこれを3000回繰り返すようにし,その繰り返しの中で
各「さいころ1000連発処理」の結果状態が
・Aだった回数
・Bだった回数
をそれぞれカウントするようにすればよいでしょう.
(実際は,総数が3000だとわかっているのだから,一方だけカウントすればいいけど)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 1775

Re: 状態遷移のプログラムの課題

「状態遷移」とか仰々しく言っているけど,要するに, >A→Aが90%, A→Bが10% とかいうのは, 「現在状態がAであるとき,(出る目の範囲が1~10の)10面さいころを振って,  1~9だったらAのまま,10が出たら現在状態をBにする」 というだけのことでしょう. (あなたは既に2面さいころを作れているから,10面さいころを作るのは問題ないはず) 状態Bからの遷移も同様です. とりあえず最初は「3000回やって云々」は忘れて, ・1000回さいころを振る ・各さいころで出た値によって,次の状態がAかBか決まる.そのルール(確率)は現在の状態による. ・1000回のさいころを振り終えた時点...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 1775

Re: 状態遷移のプログラムの課題

なるほど,1000回の遷移を経た結果の状態を集計すればいいわけですね.

>・どこまではできていて(現状コードとか)
>・何がわからないのか / 何に困っているのか
については,どんな状態でしょうか.

>1、初期状態を乱数を使って、0か1を決定する。

>6、0と1の個数をそれぞれ3000で割って、確率とする。
のうち,どの程度できていますか?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 配列の並び替えについて
返信数: 4
閲覧数: 518

Re: 配列の並び替えについて

うまくいかないときは,まず,現状コードがどう動くかを自分で確かめてみるべきです. デバッガなどが使えれば楽ですが,ここでは,頭から順に自分で処理を追ってみましょう. line8 : まず,i=0です. (変数名をちゃんと役割に合ったものにすると読みやすいと思います.i → nInputed とか)  ↓ line14 : 最初のデータを読み込むとx[0]にその値が入ります line16 : このforの中には今回は入りません line30 : i=1になります.  ↓ line14 : 2番目のデータを読み込み,x[1]にその値が入ります. line16 : k=1でループ内処理に入ります l...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクト同士の当たり判定 とあるケースの場合
返信数: 9
閲覧数: 941

Re: オブジェクト同士の当たり判定 とあるケースの場合

要は, 「プレイヤーが障害物の方向に移動しようとしてもできない  =結果として,プレイヤーの位置が変わらない」 が達成されればよいのだ,という話なのであれば,それで問題ないのではないでしょうか. で,そのようなプレイヤー移動処理仕様 なのであれば, >下側からの接触の場合の処理 とかいう処理(の内容)は,プレイヤの移動処理方法とは全く関わりの無い内容なハズなので, 「障害物の衝突判定処理の方法」というか「衝突判定処理がどれだけ詳細な情報を返してくるか?」という側の話かと思います. 多分,多くの場合で, 「障害物があって動けなかった」ということだけがわかっていれば, (例えば,プレイヤの移動処理...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクト同士の当たり判定 とあるケースの場合
返信数: 9
閲覧数: 941

Re: オブジェクト同士の当たり判定 とあるケースの場合

・斜めに動く際に,X座標とY座標について独立に扱いたい とか ・一定距離進もうとしたとき,進行方向に障害物がある場合は障害物に密着する場所までは移動させたい とか ・鏡面反射したように動かしたい とか… 「衝突する(した)」となったときに具体的にどうしたいのか? によってそこらへんは変わってくると思います. ・衝突の方向や深さ(重なり具合,とでもいうか)によらず 単純に移動そのものをキャンセル(なかったことにする=移動前の座標に戻す) ということをしたいだけなのであれば >移動前に移動先の座標で衝突するかどうか判定する のが最もややこしいことが起きない単純な方法だと思います. 要するにこれ↓だ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 1775

Re: 状態遷移のプログラムの課題

…と,いうことで とりあえず
・問題の正しい解釈
・どこまではできていて(現状コードとか)
・何がわからないのか / 何に困っているのか
・(さらに,課題であれば期限はいつごろ?とか)
あたりを具体的に示してもらえないと役に立つ回答は得られないと思います.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 「サイドバイサイド構成が正しくない」とでるエラーについて
返信数: 21
閲覧数: 5590

Re: 「サイドバイサイド構成が正しくない」とでるエラーについて

>サイドバイサイド 私もこれ体験しては絶望感を感じています. (1)エラーメッセージが何いってるかわからない (2)調べても煙に巻くような説明しかでてこない (3)(2)の過程で何かしら中途半端に原因が分かった?ような気がしても,「で,どうすれば?」の部分が不明 という3重苦. 経験的には ・とりあえず再配布パッケージは必須っぽい. ・別のPCに単純にexeファイルを持っていくのはまずダメ(ちゃんとセットアッププロジェクトを作り,インストールする) ・それでもダメなときが多い→使っているライブラリを可能な限りスタティックリンクする方向にして,後は祈る 私もこの機会に まっとうな情報 を知りたい...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: Visual Studio 2010 Express タイムアウトについて
返信数: 12
閲覧数: 6150

Re: Visual Studio 2010 Express タイムアウトについて

コード的には途中で終了することはなさそう→Win7+VS2012だけど,そのような問題が発生しないことを一応確認.
何の設定だろう…?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 状態遷移のプログラムの課題
返信数: 28
閲覧数: 1775

Re: 状態遷移のプログラムの課題

うーん,
「0を発生する」「1を発生する」の意味が不明ですね.

単に

「状態が{A,B}二通りあって,状態遷移確率が,
 A→Aが90%, A→Bが10%
 B→Aが60%, B→Bが40%
 であり,(初期状態がどっちなのかわからないけど,例えばAから始めるとして)
 1000回の状態遷移機会を与えてみて,両状態にあった回数をカウントしてみろ」
で,これを,乱数のseedナンバーを変えて3000回ほど試行してみて,
その結果を集計して,状態がAであった率を求めてみろ

ってことなんじゃないでしょうか??
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 単純タワーディフェンス
返信数: 2
閲覧数: 1055

Re: 単純タワーディフェンス

最初の最初のバージョンでは 味方(タワー)が存在しない状態,すなわち  実行開始→なんか敵が数体出てきて→進んで行って→ゲームオーバー条件を満たす→終わる が動くようにして,タワーの配置や攻撃のような要素は次の段階で良いと思います. 「進んでいって」の部分は,最終的にはMAP毎に決まった経路上を進むことになるわけですが, 最初は例えば「画面左からでてきて→右方向に進む」とかでもよいと思います. (当然,画面右側に 城(到達されたら困るゾーン)が設けられている状態) >表示 何か描画しないと動作確認もできないので,何かしら描くべきですが, グラフィック面に下手に先に手を付けるのは死亡フラグだと思...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ヒストグラムの平坦化処理
返信数: 1
閲覧数: 1616

Re: ヒストグラムの平坦化処理

意味がわかりません.何に困っているのでしょうか?
あと,Histogram Equalizationの処理をOpenCVの関数cvEqualizeHist()に丸投げOKなのだとしたら
この課題であなたがやるべきこととは一体何なのでしょうか?

とりあえず,質問内容が不明なのと,コードが見難いです.
(一度フォーラムルールというところを見てください)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++ 重複を許す順列を全列挙するプログラム
返信数: 6
閲覧数: 2156

Re: C++ 重複を許す順列を全列挙するプログラム

>思いつかなくて
とは,何が思いつかないのでしょう?

処理手順(アルゴリズム)は,あなたが結果例を示す際に行ったことそのものだと思います.
(あとは表示するだけ……では?)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 初めてです。
返信数: 14
閲覧数: 5065

Re: 初めてです。

ルールが明確で,基本一画面で,プレイヤーの操作できる事柄も限られている ので タワーディフェンス(の極単純なもの)は割といい題材かもですね. とりあえず各要素を超超単純化orばっさり削減して, ・起動するといきなりゲームはじまる ・まだ一切操作できない(見てるだけ) ・ゲームクリアかゲームオーバーの条件を満たしたら唐突にプログラムが終了する ような状態でいいので,「開始~終了まで何かが動くもの」を作ってしまうことを最初の目標にすると良いかと思います. #この手のディフェンスゲームは, ・固定通路(敵が通る通路が決まっていて,その脇にタワーを配置する)なタイプ ・自由配置(自由な位置にタワーを配...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 初めてです。
返信数: 14
閲覧数: 5065

Re: 初めてです。

とりあえず現状自分が持っている材料だけでなんか作ってみる→すこしずつ新しいこと(構造体だの)を取り入れる という感じで, 作成と勉強を平行していけば良いのではないでしょうか. 作るものは最初はなんでも良い(ゲームとして面白くなくても)と思います. よく,ゲーム作成初めてな相手にSTGを勧めるようですが, 私は個人的には,リアルタイム性の無い&画面スクロールを要しない ようなものが簡単で良いのではないかと思います. パズルとか,疑似3D表示のダンジョンRPGみたいなの(とりあえず歩き回れる程度)とか. ↓あと,あんま関係ないような話↓ ゲーム作成にはプログラミング以外の知識も必要.特に数学とか....
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: CSV(文字列)を二次元配列に格納する方法
返信数: 10
閲覧数: 4711

Re: CSV(文字列)を二次元配列に格納する方法

おそらく 文字列の2次元配列 にデータを格納したいのだと思いますが,

コード:

char str[100];  //文字列('\0'を含めて100byteまで)
char str_1DArray[5][100];  //文字列の1次元配列
char str_2DArray[3][5][100];  //文字列の2次元配列
なので,arrayの型が違うかな?とか.
(固定長でいいのか?とかいうこともあるけど)

文字列同士のコピーはstrcpy()とか使えばよいかと思います.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: フィールドの作成
返信数: 7
閲覧数: 596

Re: フィールドの作成

>大学の研究でRPGを作成することになりました。
一旦決まった研究テーマをそんな簡単に変えれるのでしょうか? とか心配になりますが…

研究として何か作らないといけないという状況なら,何も作らない!というわけにはいかないでしょうから
「プログラミングの能力的にきついからRPG無理」という理由なら別の課題に変えてもやっぱりきつい ような…?

#まず,「大学の研究」として作られるRPGってどんなものなんだろうか??
 「なんかゲームできました楽しいです」とかいう話じゃないのだろうし.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: なぜかPNGが読み込めない
返信数: 4
閲覧数: 634

Re: なぜかPNGが読み込めない

便乗質問みたいになってしまいますが,
exeのある場所のパスを得るのに,いつも

 GetModuleFileName() → exeのファイル名部分を取り除く

という手順を踏んでいるのですが,これ以上に簡単な(楽な?なんか一発で得るような)方法ってあるでしょうか?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 学校の課題
返信数: 8
閲覧数: 1425

Re: 学校の課題

提示されたコードのようにifで気合で分岐するような方法を取るんだとすれば… 自分で関数を作ることがOKなら,↓のような関数を作るとかすれば少しだけ楽になるかなぁ? const int YES = 1; const int NO = 0; //質問を表示し,ユーザにY/Nの入力を行わせる関数 //[引数] // pQuestionString : 質問文文字列の先頭位置 //[戻り値] // ユーザの入力結果に応じて,YESかNOの値を返す. int Question( const char *pQuestionString ) { printf( "%s\nYES=1, NO=それ以外\n",...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 複数の構造体について
返信数: 72
閲覧数: 3344

Re: 複数の構造体について

迷惑だ,とか 何で俺の言うのことを聞かないんだ! とか言ってるわけではなく あまつさえあなたを排除しよう とかいう意図があるわけではないので その点は誤解なきよう. ただ,多くの方が回答してくれているのに,その内容がほとんど反映されることもなく むしろ他所からの部分コピペと思われる記述が追加されていく, という状況が謎というか, だったら何で訊いたの? っていうか…うまく言えないけどそんな感じです. 仮に,もらった回答の内容がよくわからないのであれば,そのことについて 「ちょっとここが何言ってるかわからないです.もっと詳しく教えてください」とかいった方向で再度質問するなりして とにかく問題点を...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: アクティブでは無いウィンドウにキーボード入力を認識させたい
返信数: 7
閲覧数: 1195

Re: アクティブでは無いウィンドウにキーボード入力を認識させたい

そういったことの必要性のあるソフトを作ったことがないので可能かどうかわかりませんが
グローバルフック で実現できないでしょうか?
(なんか,dllを作んないとダメ,とか,セキュリティ的な文句を言われるかも?とか,面倒そうな雰囲気だった気もしますが)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 複数の構造体について
返信数: 72
閲覧数: 3344

Re: 複数の構造体について

>usaoさんにパス
どうやら私は 取捨選択の「捨」の側に分類されているように見受けられるので パス先としては無理ではないかとw
(でも他の方がそのパスを受けてくれた模様)

…というのは まぁ 半分冗談としても
「理解しよう」という意気込みというか姿勢がどうにも見られないようなので,個人的にはもう無理(無駄?)かな,とか.
(私はこの掲示板を見るようになって日は浅いですが,これまでのやりとりの雰囲気から)
この掲示板は「わかんないけど動けばOK」の達成を手伝う場ではない…んだろうな,と感じているので.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 複数の構造体について
返信数: 72
閲覧数: 3344

Re: 複数の構造体について

なんかもう 悪夢の様相を呈してきていますね… addStudent()の引数aは一体何なのか? 34行目から始まるforループは何をしたいのか? ここに来たとき,aの値はいくつで,この先どうなってしまうのか… どこかのコードを「参考にする」には, ・そのコードのやっていることを完全に理解し, ・自分の問題に流用できる 処理方法やコーディング方法 は何か? を判断したうえで, ・自分の問題に見合う形にきちんと修正して取り込む ことが必要ではないでしょうか. 参考=中途半端にコピペしてくること ではないと思います. どの助言に耳を傾けるか の取捨選択は小岩井さんの自由ですが, 私は再度 以下の事柄...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 【雑談】プログラムのソースコードの書き方について
返信数: 6
閲覧数: 852

Re: 【雑談】プログラムのソースコードの書き方について

//クラスのメンバ変数はm_から始める //staticメンバだとms_になる.たまに モビルスーツ? って聞かれる class C { //※{}は縦位置を揃える派 private: int m_IntValue; static int ms_StaticInt; }; //でも単純な構造体だとm_をつけない struct S { int IntValue; //変数名先頭大文字 int *pIntPointer; //ポインタはp,参照はrを変数名の頭につける double HeuristicXXXThresholdForYYYCalculationFunc; //長ったらしい変数名も平...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 複数の構造体について
返信数: 72
閲覧数: 3344

Re: 複数の構造体について

ちょっとコード変えた→結果はこうなった→動きませんが? みたいなことを繰り返すよりも, せめて 「○○してみて,動きを追ってみたところ  ここでしくじっているせいで うまくいっていないところまでは突き止めたんだけど  なんでこの書き方でうまくいかないのか??」 くらいの状態までは自力でこぎ着けて,疑問点を明確に訊いた方が良いように思いますが… とりあえず  ・before()で文字列の辞書順の比較のようなことを行いたいのであれば  意図したとおりに働かないものと思います.  Cでは char[]文字列を単純に < とか == とかで比較できないので. ・struct Date_Entryとかを...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 複数の構造体について
返信数: 72
閲覧数: 3344

Re: 複数の構造体について

うーん, 課題の内容を読む → どうやって実現するか(日本語)を決める → 実現するためのコードを書く という流れの,真ん中の部分があやふやなままだと,最後のコードをちゃんと書けないわけで, そんな感じの状況に陥っているように見受けます. ばかばかしいと思われるかもしれませんが, 自身が書いたコードに存在する個々の要素(関数,構造体,変数)毎に, ・それがなんなのか(役割.何のために必要で用意したのか) を書いてみると 頭の中の整理の助けになったりしないでしょうか? 例えば, //学生毎のデータを格納する用の構造体. //・特定の学生を表すための学籍番号と, // その学生が出席した日時のリス...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ある点から円との接点(接線)を求めるには?
返信数: 11
閲覧数: 2554

Re: ある点から円との接点(接線)を求めるには?

最後に出てくる tie_nom は意図した値が入っているのでしょうか.
PSを使えば良いように見えますが.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語:5×4行列と4×3行列の積を求めるプログラム
返信数: 2
閲覧数: 8625

Re: C言語:5×4行列と4×3行列の積を求めるプログラム

まず,積を求める前段階で,2つの行列A,Bに意図した値が入っていることを
printf()なりで表示して確認してみてはどうでしょうか?

ぱっと見,提示コードでは,A,Bはintなのに対して,
scanf( "%f"
とされているのが怪しいです.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ある点から円との接点(接線)を求めるには?
返信数: 11
閲覧数: 2554

Re: ある点から円との接点(接線)を求めるには?

>Y_単位ベクトルはどのように取得するのでしょうか?
X_に垂直なベクトルは
X_を90度回転させれば得られます.

回転行列を用いて書くと

コード:

[Yx]  =  [ cos90   -sin90 ][ Xx ]
[Yy]      [ sin90    cos90 ][ Xy ]
という感じです.
今回は,cos90=0, sin90=1 ですから,結局,
Y_ = ( -Xy, Xx )
といった感じになります.(回転角度を-90度にすれば,反対側が得られます)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ある点から円との接点(接線)を求めるには?
返信数: 11
閲覧数: 2554

Re: ある点から円との接点(接線)を求めるには?

>垂線を下す 考え方を述べるのにそう書いただけで, 実際上は,三角形の頂点pの箇所の角度(∠aps の角度)θに対する cosθとsinθが得られているから,それをdx,dyの算出に使えばよいかと. 三角形{p,a,s}の各辺の長さが得られた時点で (例えば線分{p,s}の長さを|ps|のように表記することにすると), cosθ = |pa| / |ps| sinθ = |as| / |ps| = r / |ps| がわかる. よって,垂線を(補助線として)引いてできた三角形{p,a,b}の辺の長さは, |pb| (= dx) = |pa|cosθ |ab| (= dy) = |pa|sinθ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ある点から円との接点(接線)を求めるには?
返信数: 11
閲覧数: 2554

Re: ある点から円との接点(接線)を求めるには?

>プログラムの場合ベクトルがx,yの2点の減算でだすので各座標の保持ができない
・プログラムで計算を行う場合
・ベクトルを求めるには 2端点の座標の引き算を行う
 ↓
・故に,各座標の保持ができない ?

意味がわかりません><
「各座標」とは具体的には何? 保持できない理由は?
何をどうしたらどうなってしまうから困ったことになるのか,詳細にお願いします.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ある点から円との接点(接線)を求めるには?
返信数: 11
閲覧数: 2554

Re: ある点から円との接点(接線)を求めるには?

>ある点
を点p,求めたい接点を点a と呼ぶことにすると,
三角形{p,a,s}は直角三角形だから,pからaまでの距離がわかる.
 ↓
aから直線{p,s}に垂線を下した点を仮にbとする.
三角形{p,a,b}は三角形{p,a,s}と相似なので,pからbまでの距離dxもわかるし,下した垂線の長さdyもわかる.
 ↓
既知のベクトル(p->s)方向の成分dxと,それに垂直な方向成分dyがわかったので
aの座標が得られた.

…かな?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: マップ情報を格納する上での合理性
返信数: 7
閲覧数: 1036

Re: マップ情報を格納する上での合理性

考えている「ギミック」が存在する箇所というのが マップ全体に対してどの程度存在する想定なのかによって違うと思います. 仮に,全体のうち5割とか8割とかのマスが,複雑かつ場所ごとに異なる多種多様なギミックが配置されるようであれば, ギミックの処理内容を表すようなオブジェクトの2次元配列を持つ方が楽なこともあるかもしれません. しかし,ごく普通のRPGとかSLGみたいなのの「マップ」を考えると,おそらく ほとんどの場所は「地形の種類を表すID値」くらいがあれば十分で,必要なデータは全てそこからたどれるはずです. 極少数のギミックのためのオブジェクトは そういったマップとは別に管理すれば済むはずで,...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: datファイル作成方法
返信数: 14
閲覧数: 5039

Re: datファイル作成方法

まず,目的のファイルのフォーマットを調べることをしないのはなぜなのでしょうか?
gnuplotについて検索等すればすぐにわかるはずです.
(あなたのデータをどのような形でグラフ化したいのか?によって
 ファイルへの書き出し方が変わるはずですから,
 「目的に対する正しいフォーマット」はあなたにしか判断できません.)

#計算部コードを見ていませんが,出力方法を見る感じだとu[][]のうち,約半分は不要?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: レポート課題です。(提出期限切れなのであせってます。)
返信数: 20
閲覧数: 1301

Re: レポート課題です。(提出期限切れなのであせってます。)

エラー内容はそのまんまですね. 「宣言していない識別子tmpの使用」 >講義で教えてもらった求め方とは関係なくプログラムを作ったら、そのプログラムの動作検証のレポートって意味があるんですかね。 >たまたま合致することがあるかもしれないですが、コードを書くだけがプログラミングじゃないと思いますけど。 たしかに,「レポート内容として求められている事柄が何なのか」によって どうすれば良いのか?が変わってきそうな気もしますね. 「動作を検証してレポート化」って言われても何すればいいんだろう? (数パターンの入力に対して答えがあってるか見る? 紙1枚のレポートになりそうw) >理解していないまま単位を取...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: レポート課題です。(提出期限切れなのであせってます。)
返信数: 20
閲覧数: 1301

Re: レポート課題です。(提出期限切れなのであせってます。)

main()関数内で宣言されている変数は n,y のみであり,tmpなる変数は存在していないので,
使用しようとしたらエラーとなるわけですが…
とりあえず,最初のifに来た段階でtmpにはどんな値が入っていることを期待されているのでしょうか?

#Cの講義じゃないのに 関数を使って書け というレポートを出してくる!?
 いったい何の講義なのだろうか?
 (少なくともCの構文とかそういう類の知識を持ち合わせている前提での講義なんだろうなとは思いますが.
  普通にCの講義が他に存在するとか.)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: レーザーの質問とボスのアニメーション(?)の質問
返信数: 10
閲覧数: 1172

Re: レーザーの質問とボスのアニメーション(?)の質問

えーと,なんというか, もしあなたが あなたのコードに関しての知識を一切持っていない状態で この質問文を読んだとしたら 何か有用なことを答えることができると思いますでしょうか? あなたが書いているプログラム内の変数の意味等は他人には知りようがないわけで 変数名だけ書かれたところで どうしようもないとは思いませんか? boss.img が一体どんな値で,表示する画像を切り替えることに関して どのように働くのかまるで不明ですけど, 右に行こうが左に行こうが永久に増え続けるように見受けられ,怪しげには感じます. 意図通りの値の遷移を辿るのでしょうか? (4*3(=12)と,4*2(=8)の公倍数にな...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクトの定義とSTLについて
返信数: 5
閲覧数: 667

Re: オブジェクトの定義とSTLについて

new Project(); では返されるのがポインタ(Project *型)なので, Project型を引数にとる std::list<Project>::push_back() の引数に与えようとしたらエラーになるのはそのとおり. >Project(引数)という定義の仕方はいってしまえばコンストラクターを直接呼び出してる処理だと思いますがなぜエラーにならないのかという疑問 「コンストラクタを直接呼び出している」という言い方が正しいかどうかよくわかりませんが, Project型には複数のコンストラクタがあり, Project型インスタンスを作る際の書き方(引数,というか)によって,どのコンス...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: linuxの削除方法
返信数: 22
閲覧数: 1021

Re: linuxの削除方法

質問に対する答えじゃないので恐縮ですが…

最近のPCってOS等のディスクがついてこないのが当たり前なんでしょうか?
ちょっと前にDELLのPC買ったときに全くディスクの類がついてこなくて面食らいました.
あわててDELLのツールでリカバリメディアらしきものを作成しましたが,
有事の際にちゃんと頑張ってくれるのかとても不安.

大昔にデスクトップ買った際には チップセットだのグラボだののドライバのCD(?)類が
山のようについてきたのですが.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 再帰処理
返信数: 3
閲覧数: 461

Re: 再帰処理

>Tn+4=Tn+Tn+1+Tn+2+Tn+3
何を書いてあるのかが わかりにくいですね.
関数T(x)の値の決定規則が

T(0)=0
T(1)=0
T(2)=0
T(3)=1
T(n+4) = T(n) + T(n+1) + T(n+2) + T(n+3) : (n+4)>=4 のとき

ということでしょうか?
この内容をそのまま書けば良いだけだと思いますが,不明な点は具体的にはどこにあるのでしょうか??
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: STGで敵の種類ごとに処理を分ける方法について
返信数: 7
閲覧数: 2329

Re: STGで敵の種類ごとに処理を分ける方法について

私が示した疑似コードは >基底クラスを作ってあとは派生先で個別の実装処理を書いていく …的な仕組みをCで自前で書いてみた感じのものです(C言語 とのことだったので).  敵の情報をまとめるstruct → クラス  敵の種類を問わない共通のデータ → 基底クラスのメンバ変数  敵の種類ごとにことなるデータ(void *) → 派生クラスのメンバ変数  敵の種類ごとに処理を分岐するための関数ポインタ → 仮想関数 みたいな感じで,C++ではこれを言語の機能でやってくれるわけですから, 「全てCで書く」とかいう縛りが特段ないのであれば {クラス→継承→ポリフォリズム}あたりまで少し情報収集してみる...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: STGで敵の種類ごとに処理を分ける方法について
返信数: 7
閲覧数: 2329

Re: STGで敵の種類ごとに処理を分ける方法について

うっかり送信したのでつづき. こんな感じ. //---------- //種類Aの敵の作成 //(1)メモリ確保 EnemyData *pNewEnemy = (EnemyData*)malloc( sizeof(EnemyData) ); //※多分動的にmallocとかで用意する. SpecialDataForEnemyA *pNewSPD = (SpacialDataForEnemyA)malloc( sizeof(SpecialDataForEnemyA) ); pNewEnemy->pSpecialData = pNewSPD; //(2)pNewSPDの内容をちゃんと準備する. p...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: STGで敵の種類ごとに処理を分ける方法について
返信数: 7
閲覧数: 2329

Re: STGで敵の種類ごとに処理を分ける方法について

私はSTGを本格的には作ったことないですけど,一般的?にはどうなんでしょう. 構造体の型自体を変えてしまうと,「複数の敵のインスタンス」を管理する方法がひどく面倒になりそうですが,どうなんでしょう. 敵の種類っていうのがどれだけのデータ多様性を生むのかわかりませんが それほどに異なるデータ形式になるものなのでしょうか? おそらく {すべての敵で共通するデータ + 種類ごとの特殊なデータ} みたくなる気がします. struct SpecialDataForEnemyA{ ... }; struct SpecialDataForEnemyB{ ... }: struct EnemyData { /...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: STGで敵の種類ごとに処理を分ける方法について
返信数: 7
閲覧数: 2329

Re: STGで敵の種類ごとに処理を分ける方法について

>敵の情報についてはそれぞれ違う構造体を使おうと考えています。 これは,敵の種類が3種類あったら,構造体も3種類作るということですか? (だとしたら,種類ごとに全く保持すべきデータの種類や数が異なるということ?) そこまで全く別々のデータ形式なのだとしたら, 種類ごとに分けたい処理 を個別の関数にするくらいしかないと思います. その場合でも,関数の型をそろえておくと,関数ポインタを使うとかできると思います. どうにかして関数を分けないでやりたいとかいう場合だと… うーん,例えば struct EnemyInfo { //共通の項目 int HP; .... //この値で,敵の種類を表す int...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: openGLUTのコールバック関数について
返信数: 3
閲覧数: 1357

Re: openGLUTのコールバック関数について

指定すべきコールバック関数は,普通の(クラスメンバではない)関数なので,
Room::display() では 求められている関数とは型が違うわけで,当然エラーとなります.

staticなメンバ関数であれば渡せるでしょうが,結局,Room型インスタンスを知ることはできないので
何かしらの妥協(別途インスタンスを知る方法を用意して,コールバック内から使う方法を用意する)をする必要があると思います.

仮に,プログラム内にRoom型インスタンスが一つしか存在しないことを保証できるのであれば,そこらへんのことも
わりと自然な形で解決できるように思います.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 実数の表示
返信数: 3
閲覧数: 443

Re: 実数の表示

私も書式には疎いのですが,
precision()というメソッドで小数点以下の桁数を設定できるっぽいです.

コード:

posion_oss.precision( 3 );  //小数点以下の桁数
posion_oss.setf( std::ios::fixed );  //これをsetfしな場合,precision()指定が「全体の桁数」になる?
posion_oss << "(" << x << ", " << y << ")";

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