検索結果 1532 件

by usao
1週間前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリを使って異なる複数の種類の画像を複数描画する方法を教えて下さい。
返信数: 9
閲覧数: 363

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

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

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

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

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

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

コード:

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

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
2週間前
フォーラム: C言語何でも質問掲示板
トピック: 単方向リストの交換
返信数: 20
閲覧数: 784

Re: 単方向リストの交換

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

Re: 単方向リストの交換

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

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

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

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

「できらぁ!」

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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
2ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 再帰関数
返信数: 8
閲覧数: 428

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
2ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 双方向リストについて
返信数: 3
閲覧数: 297

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
2ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: 質問です
返信数: 6
閲覧数: 325

Re: 質問です

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

Re: おめでとう❤️

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

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

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

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

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

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

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

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

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

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
4ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 1530

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

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

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

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

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
4ヶ月前
フォーラム: C言語何でも質問掲示板
トピック: C言語で「棒消しゲームを作る予定です」
返信数: 35
閲覧数: 1530

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

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

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

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

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

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

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

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

コード:

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

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

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

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

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

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

同じような書き方してる TitleScene や PrepareScene と
同じようにやりゃいいんじゃないかと思いますが.

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