画像の分割描画について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
アバター
usao
記事: 1889
登録日時: 11年前

Re: 画像の分割描画について

#31

投稿記事 by usao » 10年前

配列の扱い自体が怪しい感じでしょうか.
もっと簡単なとこから確認していかないとダメなんですかね.
こういうのとか…?

コード:

int main()
{
  int A[ 4 ] = { 0,0,0,0 };

  //配列Aの全ての要素の値を 5 にするコードをここに書くことができますか?

  {
    int i;
    for( i=0; i<4; i++ ){  printf( "%d  ", A[i] );  }
  }
  return 0;
}
オフトピック
仮に こういうレベルの話なのだとすれば
まず本とかでC言語の勉強をちゃんとやるべきな気がしますけど……

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#32

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:分割転送するやり方がわかりません・・。
forループが使えませんと言っているのと同じですよ。
オフトピック
私もゲームではない一般的なC言語の練習問題を1冊こなせるレベルまで勉強した方が良いと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#33

投稿記事 by samusu0905 » 10年前

勉強不足ですみません。
ご迷惑をお掛けしました・・。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#34

投稿記事 by samusu0905 » 10年前

usaoさん>>
それぐらいはできますよ。

コード:

#include <stdio.h>

int main(){
	int A[4]={0,0,0,0};

	A[0] = 5;
	A[1] = 5;
	A[2] = 5;
	A[3] = 5;


	{
		int i;
		for( i=0; i<4; i++){printf("%d", A[i]);}
	}
	getchar();
	return 0;
}
確かこんな感じですね。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#35

投稿記事 by softya(ソフト屋) » 10年前

もうちょっと考えてみましょう。話の流れ的にこれじゃないですよ。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

Mana

Re: 画像の分割描画について

#36

投稿記事 by Mana » 10年前

過去ログにこんなの見付けたのですが実際欲しいのはこれじゃないのですかね。
http://dixq.net/forum/viewtopic.php?t=1 ... 77#p116377
この関数はあったのかなかったのか事実は分からないままって感じで終わってますな。
こんなライブラリィが同時に複数あるとは考えられないですよね。

アバター
Tatu
記事: 445
登録日時: 13年前
住所: 北海道

Re: 画像の分割描画について

#37

投稿記事 by Tatu » 10年前

DXライブラリは使わず、学内ライブラリを使用するつもりなのですね?
前にDXライブラリを使うとかいうトピックがあった気がしますが。

そして学内ライブラリには画像を分割して読み込む機能も
画像の一部分だけを描画する機能もないのですね?

ない場合は画像ファイルをあらかじめ分割しておく必要があるので
画像分割用のプログラムをC言語で書きたいと。

しかしC言語で画像ファイルの読み込みと書き込みをする方法が分からない、
配列に読み込めたとしても配列を分解する方法が分からない
という問題があってできないと。


GIMPなどのペイントソフトを使って手動で分割してはどうですか?

► スポイラーを表示

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#38

投稿記事 by samusu0905 » 10年前

softyaさん>>
そうですか。自分はあれでいいかなと思ったのですが。どこがいけなかったですか?

Manaさん>>回答有難うございます。
>viewtopic.php?t=14656&p=116377#p116377
これは確認+解決にするのを忘れていました。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#39

投稿記事 by samusu0905 » 10年前

Taruさん>>回答有難うございます。
>DXライブラリは使わず、学内ライブラリを使用するつもりなのですね?
>そして学内ライブラリには画像を分割して読み込む機能も
>画像の一部分だけを描画する機能もないのですね?

>ない場合は画像ファイルをあらかじめ分割しておく必要があるので
>画像分割用のプログラムをC言語で書きたいと。

>しかしC言語で画像ファイルの読み込みと書き込みをする方法が分からない、
>配列に読み込めたとしても配列を分解する方法が分からない
>という問題があってできないと。
そのとおりです。よくわかりましたね^^そうゆうことです。

>GIMPなどのペイントソフトを使って手動で分割してはどうですか?
手動でということは、画像をコピーして画像の向きを変えたりするってことですか?
ですが、画像は配列4×4ですでに左右の向きが入っている画像なんです。(上下の向きも入ってます)

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#40

投稿記事 by softya(ソフト屋) » 10年前

> そうですか。自分はあれでいいかなと思ったのですが。どこがいけなかったですか?

他に方法があれば書いてみてください。
無いなら、無いと断言してください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#41

投稿記事 by samusu0905 » 10年前

Tatuさん>>あの、手動ってことはペイントソフトとかで同じものをコピーして、向きを変える。
向きをかえたら左右の画像を一つ一つ名前をかえて保存するってことですか?

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#42

投稿記事 by samusu0905 » 10年前

softyaさん>>
>無いなら、無いと断言してください。
わかりました。これ以上はありません!
断言します。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#43

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:softyaさん>>
>無いなら、無いと断言してください。
わかりました。これ以上はありません!
断言します。
やはり、C言語をちゃんと勉強したほうが良いようです。
forループを使う方法があります。
なので、samusu0905さんに現在できる現実的な方法はTatuさんの提案された方法です。
C言語をちゃんと勉強した上で取り組みなおすことを提案します。
※ 前にも同じこと提案したはずです。

【補足】
C言語の学習のサイトや練習問題サイトの紹介や、分からない事の質問は別トピックで聞いてください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

rascal
記事: 27
登録日時: 10年前

Re: 画像の分割描画について

#44

投稿記事 by rascal » 10年前

横から失礼
>そのとおりです。よくわかりましたね^^そうゆうことです。
Tatuさんに対してのsamusu0905さんの返答が
かなり失礼な返答と見受けられます もうすこし言葉を選んで返答されるほうがいいと思います

ISleさんがgsDraw2DPartがあると言ってらっしゃいましたがそれを使用すれば話が進むのではないでしょうか?

Softyaさんがおっしゃりたいのは じゃあ5000個の配列があった場合は

コード:

#include <stdio.h>
 
int main(){
    
int a[5000] ={0,0,0,0,0,0,0,0,0 //5000個};

a[0]=5;
   .
   .
   .
a[4999] =5;
と書くつもりですか? ということです

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#45

投稿記事 by samusu0905 » 10年前

softyaさん>>
for文でしたか。忘れてました。for文なら配列の各要素を変えることができますね。
もっとC言語を勉強します。(C言語は配列、アドレス、ポインタまでは本を購入して勉強済みです。でも、忘れぎみなところがあるみたいなので、もう少し勉強します。)

コード:

#include <stdio.h>

int main(){
	int A[4]={5,5,5,5};
	int i;
	for( i=0; i<4; i++)
	{
		printf( "%d,", A[i]);
	}
	getchar();
	return 0;
}
あのプログラムでAの各要素を5に変えるにはこれでいいですか?

rascalさん>>回答有難うございます。
はい申し訳ございませんでした。Tatuさん失礼な返答をしてすみませんでした。これからは返答を改めます。
自分が間違ってました。for文があるのをすっかり忘れていました。
確かに、for文無しでやると一つ一つ変えることになりますね・・。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#46

投稿記事 by softya(ソフト屋) » 10年前

usaoさんのNo: 31の元の問題を見直すことをオススメします。
問題と全然答えの趣旨が違います。

> もっとC言語を勉強します。(C言語は配列、アドレス、ポインタまでは本を購入して勉強済みです。でも、忘れぎみなところがあるみたいなので、もう少し勉強します。)

もう少しではなく、ちゃんとやり直したほうが良いと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#47

投稿記事 by samusu0905 » 10年前

Tatuさん>>
for文ではできませんか?もしfor文で出来るならやりたいのですが。
手動だと画像の数がかなり増えてしまいます。

rascal
記事: 27
登録日時: 10年前

Re: 画像の分割描画について

#48

投稿記事 by rascal » 10年前

samusu0905さん
NO45の回答では 答えになっていません

コード:

int main()
{
  int A[ 4 ] = { 0,0,0,0 };

の部分の変更はしないで書けますか?ってことです

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#49

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:Tatuさん>>
for文ではできませんか?もしfor文で出来るならやりたいのですが。
手動だと画像の数がかなり増えてしまいます。
えーと、学内ライブラリにメモリイメージを画像にするものがない限り、今のままやってもファイルは増えるのですが?
プログラムで自動でファイルを分割するか、GIMPなどで手動で分割するかの違いです。
なので、Tatuさんは手動を提案されています。
私は何度も念を押して聞いていますが理解されていませんか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#50

投稿記事 by samusu0905 » 10年前

グラフィックゲイルでオリジナルキャラを作ることにします。
そうすればできるかもしれません。
いきなり解決にしてすみません。色々と試したい事が出てきました。
皆さん色々と有難うございました。
rescalさん>>
そのことは先ほどsoftyaさんに言いましたよ。「できないなら、断言してください。」ってsoftyaさんが言ってたので、「できません!」っと断言したはずですが。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#51

投稿記事 by samusu0905 » 10年前

softyaさん>>
でしたら、プログラムで自動でファイルを分割する方がいいかと思います。
GIMPとかだと手間がかかりますよ。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#52

投稿記事 by softya(ソフト屋) » 10年前

> そのことは先ほどsoftyaさんに言いましたよ。「できないなら、断言してください。」ってsoftyaさんが言ってたので、「できません!」っと断言したはずですが。

これをfor文で書けないのはプログラマーとして致命的なので放置しない方がよいです。
放置すると言うのでしたらプログラマーを目指されているとは思えません。
オフトピック
厳しいことを書きますが、基礎を後回しにされてきたのでしょう。
しかし、ここらで腰を据えて取り組まないと前にも進めません。
プログラミングごっこ遊びで終わってしまいます。
> グラフィックゲイルでオリジナルキャラを作ることにします。

そういう問題でもないです。

> softyaさん>>
> でしたら、プログラムで自動でファイルを分割する方がいいかと思います。
> GIMPとかだと手間がかかりますよ。

Tetuさんは分割プログラムを組むのに半年とかの時間が必要と判断されたのでしょう。
私も同意見です。
勉強のためにやるなら意義はありますが、実用で急いで行う問題ならプログラムで組むのは無謀です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

rascal
記事: 27
登録日時: 10年前

Re: 画像の分割描画について

#53

投稿記事 by rascal » 10年前

>そのことは先ほどsoftyaさんに言いましたよ。「できないなら、断言してください。」ってsoftyaさんが言ってたので、「できません!」っと断言したはずですが。
に関してですが この方法以外にsamusu0905さんができない という認識ではなく 存在がない という風に言っておられるようにみえましたのでNO48のレスをしましたが
 SAMUSU0905さんができないという認識でいいですか?
> グラフィックゲイルでオリジナルキャラを作ることにします。
ペイントソフトでもなんでもできますよ ただここで皆さんがいってらっしゃる指向とは違う気がします

あまり理解されていないように思えるのですが CのみでPNG JPEGを表示させるには そのファイルの内部構造(フォーマット形式)を知る必要があります

>DXライブラリは使わず、学内ライブラリを使用するつもりなのですね?
>そして学内ライブラリには画像を分割して読み込む機能も
>画像の一部分だけを描画する機能もないのですね?
の部分では それであれば 1枚絵を表示する関数を使用するために最初から画像を分割保存して
たとえば  攻撃アクションの画像が8つの分割画像でできているなら 8枚をそれぞれ一枚の絵にして8個のファイルにしておかないとだめです ってことです

かずま

Re: 画像の分割描画について

#54

投稿記事 by かずま » 10年前

画像の分割描画のプログラムを書いてみました。

コード:

#include <stdio.h>
 
int p[4][4] = {
    { 1, 1, 1, 1},
    { 1, 0, 0, 1},
    { 1, 0, 0, 1},
    { 1, 1, 1, 1},
};

int ul[2][2];
int ur[2][2];
int dl[2][2];
int dr[2][2];

void copy(int p[4][4], int x, int y, int q[2][2])
{
    int i, j;
    for (i = 0; i < 2; i++)
        for (j = 0; j < 2; j++)
            q[i][j] = p[x + i][y + j];
}

void draw(void *p, int h, int w)
{
    int i, j;
    int *q = (int *)p;
    for (i = 0; i < h; i++) {
        for (j = 0; j < w; j++) {
            if (q[i*w + j] == 1)
                printf("■");
            else
                printf("□");
        }    
        printf("\n");
    }
    printf("\n");
}

int main(void)
{
    draw(p, 4, 4);

    copy(p, 0, 0, ul);
    copy(p, 0, 2, ur);
    copy(p, 2, 0, dl);
    copy(p, 2, 2, dr);

    draw(ul, 2, 2);
    draw(ur, 2, 2);
    draw(dl, 2, 2);
    draw(dr, 2, 2);

    return 0;
}
実行結果

コード:

■■■■
■□□■
■□□■
■■■■

■■
■□

■■
□■

■□
■■

□■
■■

理解できますか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#55

投稿記事 by softya(ソフト屋) » 10年前

samusu0905さんが言えばソースコードをくれると勘違いしたのは、かずまさんにも原因がありますので自重して頂ければ幸いです。
すくなくとも、ソースを出そうとしない他のメンバーの意図を挫くので事前にご相談ください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
Tatu
記事: 445
登録日時: 13年前
住所: 北海道

Re: 画像の分割描画について

#56

投稿記事 by Tatu » 10年前

かずまさんは今後ゴーストプログラマーとしてsamusu0905さんの面倒を見るつもりなのでしょうか?

アバター
usao
記事: 1889
登録日時: 11年前

Re: 画像の分割描画について

#57

投稿記事 by usao » 10年前

オフトピック
まぁ,この程度(と言ったら失礼かもですが)の内容のコードを この時点で 出しても差し支えないとは思いますけどね.
実際の画像に適用するには 応用 しないとならないものですし,
書き込みの主題は
>理解できますか?
にあるのでしょうし.
[勝手にまとめ]
やりたいこと:
メモリ上の画像イメージを操作して,画像を分割したい.目的は画像の部分領域を表示すること.

・DXライブラリを使う話なのか違うのか → DXライブラリは使わない
・C言語で 画像ファイルをロードするには ファイルフォーマットを知る必要がありますよ.(ここは使用されているライブラリがやるのかな)
・イメージ情報の保持データ形式は? → 4byte/画素 な配列である模様.
・ところで 頑張って操作した配列の内容を画像として表示する手段が(使用されているライブラリに)あるのでしょうか? → 不明?
 →無い模様.
  目的は 「画像の部分領域を 表示する プログラムを作ること」ではなく,
  既存の画像をロード→分割→結果を複数画像ファイルとして出力すること である.
別の手段(逃げ道?)として,そもそも最初から「分割済みの」画像群を用意すれば悩まなくて済む,という選択肢もありますよ → 現在こっち方向に向かっている?
 分割をプログラムでやらずに手作業でやってしまうという方法もありますよ
・ところで intの配列の簡単な例はできますか? → どうにも厳しそう (基礎をちゃんと勉強されること推奨)


読み違えていた.修正.

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#58

投稿記事 by samusu0905 » 10年前

rascalさん>>回答ありがとうございます。
>1枚絵を表示する関数を使用するために最初から画像を分割保存して
>たとえば  攻撃アクションの画像が8つの分割画像でできているなら 8枚をそれぞれ一枚の絵にして8個のファイルにし>ておかないとだめです ってことです
そうですか。やっぱり使用中のライブラリに分割描画する機能がないのなら、攻撃モーションを一枚一枚ばらばらにして保存していく方法しかないってことですね? わかりました。やってみます。

かずまさん>>回答ありがとうございます。
それが画像を分割描画させるプログラムですね?
やはり実際にプログラムで書くと結構長くなってしまうんですね。
>理解できますか?
なんとなくですが少しは分かるような気がします・・・。
一応参考にしておきます。 rascalさんの言うペイントソフトでの方法でやってみて、できそうになければそちらのプログラム
を自分なりに工夫しておきます。自分はC言語と学内ライブラリの両方でゲームを作っているので、
C言語では最初にint main(){}と書きますが、学内ライブラリも使用しているので、int main(){}は書いてません。
学内ライブラリのやり方でゲーム作りを行っているので、C言語での方法とは少し違っているかもしれません。
実は学内ライブラリも自分で関数を作っていくやり方なんです。そこは多分C言語と同じだと思います。

softyaさん>>すみませんね。私のせいで皆さんを困らせてしまって。
本当に申し訳ないです。自分でもかなり理解不足であることはわかってます。
ですが、これから頑張っていけばゲームプログラマーを目指せると思っています。

Tatuさん>>
>かずまさんは今後ゴーストプログラマーとしてsamusu0905さんの面倒を見るつもりなのでしょうか?
そういえば、かずまさんにはポイントが見えませんが、これはどうゆうことですか?

usaoさん>>回答ありがとうございます。
>[勝手にまとめ]
>やりたいこと:
>メモリ上の画像イメージを操作して,画像を分割したい
だいたいそんな感じですね。
>・DXライブラリを使う話なのか違うのか → DXライブラリは使わない
最初にDXライブラリのことを自分が言ってしまったので、softyaさんとかを混乱させてしまっていました・・。
ですが、途中で学内ライブラリを使用していることを説明しました。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#59

投稿記事 by softya(ソフト屋) » 10年前

samusu0905さんに危機感が通じていない様なのでもう一度念を押しておきますね。
samusu0905さんがプログラミングを初めて3ヶ月程度なら理解度が少々悪くてもなんとかなると思います。もし6ヶ月以上経過しているなら非常に危機的だと思います。
今までサボっていたのでこれから頑張るって事だとしても、この掲示板ではや3ヶ月です。いつかやるで、あっという間に2年や3年は経ちますよ。

ちなみに、かずまさんのコードは画像処理には足らないものが沢山あるので、本当に画像処理として組んだら10倍近いの長さのコードになります。
もちろん、画像処理ライブラリを併用してです。

>C言語では最初にint main(){}と書きますが、学内ライブラリも使用しているので、int main(){}は書いてません。
>学内ライブラリのやり方でゲーム作りを行っているので、C言語での方法とは少し違っているかもしれません。
>実は学内ライブラリも自分で関数を作っていくやり方なんです。そこは多分C言語と同じだと思います。

C言語である事とライブラリを使うことは別の問題です。
mainが隠蔽されることもあるので、言語とライブラリ環境を混同してはいけません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

rascal
記事: 27
登録日時: 10年前

Re: 画像の分割描画について

#60

投稿記事 by rascal » 10年前

こんにちは
samusu0905さんがやはり言語とライブラリについてよくわかってらっしゃらないようなので
一応説明しますね

言語>機械が扱える情報は1と0のみ これで記述された言語をマシン語と呼びます
    それでは人間には理解が難しいため人間にわかるように開発されたものが C言語やJAVAといったようなものになります
    種類がいくつかあり ここでの説明は省きます 詳細をもし知りたいなら→ インタプリンタとコンパイラ を参照してください

C言語はコンパイラに属される人間にわかりやすく開発されたプログラム記述方式です

ライブラリとはその人間にわかりやすく開発されたプログラム記述方式で記述されたプログラムのあつまりです
なのでC言語用の学内ライブラリを利用してプログラムをつくっているということなので それはc言語でつくってるのと同じ意義です

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#61

投稿記事 by samusu0905 » 10年前

softyaさん>>
私は、C言語をまだ3カ月ちょっとしか勉強してないです。昨日も勉強してましたよ。
もちろんもっとちゃんと勉強しますよ。

rascalさん>>
まあ、C言語とかはわかりますが、ライブラリを学校(専門学校)で聞いたとき、「ライブラリって何だろう?」という疑問
は最初ありました。授業でも言語について説明も受けました。ただ、ライブラリについては何も聞いてませんでした。

>ライブラリとはその人間にわかりやすく開発されたプログラム記述方式で記述されたプログラムのあつまりです
>なのでC言語用の学内ライブラリを利用してプログラムをつくっているということなので それはc言語でつくってるのと同>じ意義です
なるほど、ライブラリとはそうゆう物なんですね。納得しました。教えていただき有難うございます。
てっきり自分が利用している学内ライブラリとC言語は違うものかと思いました。
結局同じなんですね。分からなかった問題が解けたみたいで、凄くすっきりしました!

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#62

投稿記事 by samusu0905 » 10年前

C言語経歴のところを3か月ではなく6~9か月に変えました。
間違った情報をだして大変申し訳ございませんでした。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#63

投稿記事 by softya(ソフト屋) » 10年前

試しに簡単な問題を出してもよいでしょうか? 勉強の方向性が間違っていないか確認したいのですが。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#64

投稿記事 by samusu0905 » 10年前

まあ構いませんが、どんな問題ですか? 今、自分ももう一度C言語を見直しているところですが。
softyaさんや他の人が簡単でも、自分には難しいものがありますから。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#65

投稿記事 by softya(ソフト屋) » 10年前

これからの回答の参考にしたいので、ごく簡単な問題です。

「1から100の数字を表示するコンソールアプリです。ただし、5の倍数と7の倍数の時は数値ではなくそれぞれ★★★★★、★★★★★★★を出してくださいい。5と7の公倍数の場合は★でなく代わりに◆◆◆◆を出します。」

出来上がったら、ソースコードの添付と作るのにかかった時間も教えて下さいね。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#66

投稿記事 by samusu0905 » 10年前

softyaさん>>
>5の倍数と7の倍数の時は数値ではなくそれぞれ★★★★★、★★★★★★★を出してください
あのプログラムで5の倍数と7倍数の時はこうしなさいみたいな事はやったことがないですね。
逆にこのような問題を出されてもどうしようもないんですが。
多少時間がかかっても、やり方がわかればできます。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#67

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:softyaさん>>
>5の倍数と7の倍数の時は数値ではなくそれぞれ★★★★★、★★★★★★★を出してください
あのプログラムで5の倍数と7倍数の時はこうしなさいみたいな事はやったことがないですね。
逆にこのような問題を出されてもどうしようもないんですが。
多少時間がかかっても、やり方がわかればできます。
この問題は、基礎のプログラミング力があるか確認する問題のアレンジです。
つまり、言語学習を普通にやってプログラミングの基礎レベルに達しているならば出来なければいけない問題というわけです。

> やり方がわかればできます

C言語入門書の最初の方をちゃんと習得していれば応用力で可能な問題です。
使う構文はfor文,if文,printf文程度ですので、見ても入門書の最初の方です。
本当は何も見ずにプログラムを組めないといけません。

【補足】
学習方針が間違っていなかいという確認は、こういう基礎レベルの事が出来るかどうかで大体わかります。
これが出来ない状態でゲームプログラミングをすること自体が無謀です。
これをすっとばせる人もいますが、そう言う人は天才なので何も教えることはありませんし、教えなくてもやがて自分で理解します。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#68

投稿記事 by samusu0905 » 10年前

>本当は何も見ずにプログラムを組めないといけません。
本を見てやろうとはしてないです。後、使用するべき構文はわかってますよ。
分からないと言ったのは、5の倍数と7の倍数の時にこうするって書いてあったので、5の倍数と7の倍数の求め方が分からなかっただけです。5と7の倍数ってどう求めるんですか?
不等号を使えばいいのかどうか教えて教えてもらえますか?そこが分かればできるんですが・・。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#69

投稿記事 by softya(ソフト屋) » 10年前

ゲームでよく使うんですけどね。
> 5の倍数と7の倍数の求め方が分からなかっただけです。5と7の倍数ってどう求めるんですか?
中学の数学ですが、割った余りを使います。
【訂正】 割った余りは小学校の算数でした。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#70

投稿記事 by samusu0905 » 10年前

割った余りということは、%を使えばいいわけですね?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#71

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:割った余りということは、%を使えばいいわけですね?
他にも方法はありますが、一般的には%ですね。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#72

投稿記事 by samusu0905 » 10年前

そうですか。一応どれくらいで出来るか分かりませんが、やってみます。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#73

投稿記事 by samusu0905 » 10年前

時間がかかってすみません。合ってるかどうかわかりませんが、
こんな感じになりました。

コード:

#include <stdio.h>

int main()
{
	int i, j=5, f=7;
	for(i=1; i<100; i++)
	{
		printf("%d\n", i);
		if( i % j)
		{
			printf("☆☆☆☆☆");
		}else
		if( i % f)
		{
			printf("☆☆☆☆☆☆☆");
		}
		else
		{
			printf("◇◇◇◇");
		}
	}
	getchar();
	return 0;
}
間違いや抜けているところがあればお願いします。
直ぐに直しますので。

アバター
usao
記事: 1889
登録日時: 11年前

Re: 画像の分割描画について

#74

投稿記事 by usao » 10年前

>合ってるかどうか
は,実際に実行してみればわかるのでは?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#75

投稿記事 by softya(ソフト屋) » 10年前

時間が書かれていないですが、2時間かかったと言うことですか?
あと動作確認した上で仕様を満たすものをお願いします。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#76

投稿記事 by samusu0905 » 10年前

実行はしました。
>2時間かかったと言うことですか?
言え、違います。朝からプログラム打っていたので、少し出かけていました(休憩)。
実際には40分か、30分くらいです。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#77

投稿記事 by softya(ソフト屋) » 10年前

これで終わりたいなら、それでも結構だと思いますがちゃんと最後までやってみたいと言うことであれば、正確なテスト結果の報告と問題点の分析は必要です。
ご自身でご判断ください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#78

投稿記事 by samusu0905 » 10年前

softyaさん>>回答有難うございます。
正確なテスト結果と問題の答え・分析をお願いします。
やはり知りたいです。知った方がすっきりしますし、少しは自分のためにもなります。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#79

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:softyaさん>>回答有難うございます。
正確なテスト結果と問題の答え・分析をお願いします。
やはり知りたいです。知った方がすっきりしますし、少しは自分のためにもなります。
まず、ご自分でやらないと意味が無いです。
今のところ、正確な結果の報告も無いですし、自分なりの分析も頂いておりません。
中高生でもなく直近でプロを目指していると言うことなので、プロでの視点とはどういうものだと意味でも厳し目でいきますね。

【補足】ちなみに答えを出すのはsamusu0905さんです。直し方をレクチャーします。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

samusu0905
記事: 336
登録日時: 10年前

Re: 画像の分割描画について

#80

投稿記事 by samusu0905 » 10年前

わかりました。これ以上この問題をあるときりがないのでやめておきます。
softyaさんのおかげで自分の実力が大体わかりました。まだまだ、勉強は必要ですね。
色々とありがとうございました。感謝します。
softyaさんの出した問題は空いた時間にもう一度やり直してみます。
あと、ゲーム制作のほうですが。softyaさんを含め他の人も「学内ライブラリに拘る必要ない」っ仰っていたので、DXライブラリのほうでゲームを制作します。
これからはDXライブラリについて質問するので今後もよろしくお願いします!

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#81

投稿記事 by softya(ソフト屋) » 10年前

samusu0905 さんが書きました:わかりました。これ以上この問題をあるときりがないのでやめておきます。
softyaさんのおかげで自分の実力が大体わかりました。まだまだ、勉強は必要ですね。
色々とありがとうございました。感謝します。
softyaさんの出した問題は空いた時間にもう一度やり直してみます。
あと、ゲーム制作のほうですが。softyaさんを含め他の人も「学内ライブラリに拘る必要ない」っ仰っていたので、DXライブラリのほうでゲームを制作します。
これからはDXライブラリについて質問するので今後もよろしくお願いします!
ちなみに、この問題はプログラマとして適正があるかの問題なのです。
「プログラムを書けないプログラマーがいるというお話 | 株式会社ダイレクトサーチジャパン」
http://blog.direct-search.jp/2011/10/blog-post_11.html
危機感を持って欲しいんですけどね。ご本人が良いなら私はこれ以上は言いません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
milfeulle
記事: 47
登録日時: 10年前
住所: マリーランド
連絡を取る:

Re: 画像の分割描画について

#82

投稿記事 by milfeulle » 10年前

ライブラリも重要だとは思いますが、まずは急がば回れでコンソールで遊んでみるといいと思いますよ! コンソールだってオセロとか、文字だけのRPGみたいなものとか、アイディア次第で色々作れると思います。

皆様が一生懸命samusu0905さんに頑張って考えてもらおう、(自分で作る喜びを味わって)楽しんでもらう、と考えていろいろな方面からアドバイスなり確認なりなさっているのに、期待に添えない返事(ex. ”合ってるかどうか“や”きりがないのでやめておきます“など)ばかりされているので気になって書かせていただきました。正直、皆様のアドバイスに対して「お前等、ゲームに関係のあることだけアドバイスしろよ。くだらないプログラミングの問題()に付き合ってる時間なんてないんだよ。」って思っていると捉えられかねませんよ;;
オフトピック
A「時速10kmの速さで3時間進んだらどのくらいの距離進めますか?」
B「距離xは、速さvと時間tによってx = vtと書けますよ。」
A「それではv = 10, t = 3なのですね? どうすればxがわかるのですか?」
B「x = 10 ☓ 3ですよ。」
A「ありがとうございます。よく理解出来ました。x = 30ですね。」
A「ところで、50kmを時速10kmで進むと何時間かかりますか?」
B「これも同じ式x = vtで求められますよ。」
A「具体的にやり方をおねがいします。」
B「つまり、tを求めたいので、t = x/vとします。」
A「xとvとtはどういういみですか?」
B「xは距離で、vは速度で、tは時間です。」
A「今回の場合xとvはいくつですか?」
B「それはx = 50, v = 10ですね。」
A「ありがとうございます。t = 50÷10=5ですね。よくわかりました。」
A「最後に1つ質問なのですが、40kmを2時間で進んだ場合、平均速度はいくつになりますか?」
B「20km/hです。」
ζ*'ヮ')ζプログラミングはみんなで奏でるシンフォニー

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: 画像の分割描画について

#83

投稿記事 by softya(ソフト屋) » 10年前

オフトピック
【ゲームプログラマを目指している方へ】
紹介したサイトで書かれているfizzbuzzが出来ないプログラマは一部の業務プログラマなので極端にパターン化されていればfizzbuzzが出来なくても仕事はできます。
ただ、ゲームプログラマでこれが出来ない人は私には考えられません。
これはプログラミングにおける算数の足し算引き算と言えばよいでしょか。それに対してゲームプログラミングは高校数学以上です。つまり、足し算引き算がまともに出来ないのに微分・積分をやろうとしている状況なのでうまく出来るはずがありません。
fizzbuzzを考えたくないなら、そもそもプログラミングしたくないんじゃないかなと思うので、ゲームプログラマを何故したいのか考えたほうが良いかと思います。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: 画像の分割描画について

#84

投稿記事 by みけCAT » 10年前

やるかどうかはsamusu0905さんの自由ですが、
AIZU ONLINE JUDGEというサイトにプログラミングの基本を学ぶための問題があるので、紹介しておきます。
http://judge.u-aizu.ac.jp/onlinejudge/course.jsp#lesson
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

閉鎖

“C言語何でも質問掲示板” へ戻る