C言語なら俺に聞け(入門篇) Part 4
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2006/11/09(木) 00:31:01・C++言語はスレ違いです。
・分からない事をなるべく詳しく書いて下さい。
・ソースコードを晒すと答えやすくなるかもしれません。
・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。
前スレ
C言語なら俺に聞け(入門篇) Part 3
http://pc8.2ch.net/test/read.cgi/tech/1160682950/
過去スレ
Part 1 http://pc8.2ch.net/test/read.cgi/tech/1146700389/
Part 2 http://pc8.2ch.net/test/read.cgi/tech/1153818463/
関連スレ
くだすれC言語(初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1153542424/
【ISO/ANSI/JIS】 C言語なら俺に聞け! Part 130
http://pc8.2ch.net/test/read.cgi/tech/1159613789/
0951デフォルトの名無しさん
2006/11/30(木) 23:09:50聞きたいのは、画像を表示するために何を使っているのか(どうやっているのか)ということ。
コンソールアプリで、各画素のRGB値を数値として文字列表示したいということか?
文字でいいのか?画像ではなく。
0952928
2006/11/30(木) 23:15:59確かにそうですね。ありがとうございます。
しかし下のエラーが出てしまいます。初心者ですいません。
error C2440: '=' : 'unsigned char' から 'unsigned char [3]' に変換できません。
>>951
ppm形式の画像を出力して表示したいと言うことです。
ちなみにソフトはACDSee v3.1vです。
0953デフォルトの名無しさん
2006/11/30(木) 23:17:46宣言部もちゃんと変えた?
画像の問題じゃなくて配列がまともに扱えないだけじゃないのか
0954デフォルトの名無しさん
2006/11/30(木) 23:36:12ここまで進めていて、どこがおかしいのか分からなくなってしまいました。
実行値が正しくない上にエラーとなってしまいます。
よければどの辺がおかしいか教えてください。
0955デフォルトの名無しさん
2006/11/30(木) 23:37:32g[v][c]=f[v][i][c];
を
g[v][0][c]=f[v][i][c];
とすればいいじゃない?
とりあえず画像をどうこうしたいなら多次元配列の勉強を先にしたほうがいい。
>error C2440: '=' : 'unsigned char' から 'unsigned char [3]' に変換できません。
これで困っているようなら、多次元配列を扱うのも早すぎる気がする。
0956928
2006/11/30(木) 23:43:14その通りです。
>>955
解答ありがとうございます。
地道な努力をしようとしなかった自分が甘ちゃんでした。
勉強して出直してきます。
0957デフォルトの名無しさん
2006/12/01(金) 10:28:08やっぱ最初から答えが聞きたかっただけじゃねえか
0958デフォルトの名無しさん
2006/12/01(金) 15:01:160959デフォルトの名無しさん
2006/12/01(金) 15:08:13できます
0960デフォルトの名無しさん
2006/12/01(金) 15:19:550961デフォルトの名無しさん
2006/12/01(金) 15:22:180962デフォルトの名無しさん
2006/12/01(金) 15:25:12printf("%x", n);
0963デフォルトの名無しさん
2006/12/01(金) 15:48:46二進数文字列だからそれじゃダメ。
printf("%x",strtol(str,NULL,2));
0964767
2006/12/01(金) 20:02:15皆さんはCをどのくらいの期間勉強してるんですか?
0965デフォルトの名無しさん
2006/12/01(金) 21:29:211〜10までの乱数を10個発生させて表示させる。ただし、1度出た数字は除外する」
という課題を出されたのですが、教科書を見ながら解いても
同じ数字が重複して表示されてしまうプログラムになってしまいどうしていいかわかりません。
どなたか教えていただけませんでしょうか
0966デフォルトの名無しさん
2006/12/01(金) 21:38:14同じ数字が重複して表示されることを許してるからじゃないの?
0967デフォルトの名無しさん
2006/12/01(金) 21:39:481.チェック用の配列を用意して既に選んだものを選ばないようにする。
2.一つの数字を選ぶたびにその数字を抜き取って配列を詰めなおし、そこから選ぶ
0968デフォルトの名無しさん
2006/12/01(金) 21:48:430969デフォルトの名無しさん
2006/12/01(金) 21:54:06#include<stdlib.h>
int main (void)
{
int i , n;
srand((unsigned)time(NULL));
printf(0〜10:\n");
for (i=1; i<=10;i++)
printf("%d",rand());
としてみたのですが重複してしまいます
0970デフォルトの名無しさん
2006/12/01(金) 21:57:370971デフォルトの名無しさん
2006/12/02(土) 00:05:330972デフォルトの名無しさん
2006/12/02(土) 00:08:540973ぴゅあ
2006/12/02(土) 00:24:54>としてみたのですが重複してしまいます
それが
>ただし、1度出た数字は除外する
で"やりなさい"と言われている部分のことになるのではないですか?
重複してしまうというのはそこをやっていないから…というところは把握できてます?
楽に(&効率良く)片付けるには>>967-968の言っている中で3のような手段がいいだろうと思うけど
最初(初歩的?)な段階のロジックを理解させようとしているのだとすれば1のような手段かも知れないと思ったりもするけど…
或いは各々がどんなロジックを考え出すかというようなことを求めているものなんでしょうか
あるロジックの考え方の理解を深めるために出された課題だとするなら
答えを導き出す元になるものがその中には足りないようにも思えるし
その中>{1〜10までの乱数を10個発生させて表示させる。ただし、1度出た数字は除外する。}
その課題が出される前にあった講義の中にそれがあったりはしないんでしょうか
(講義の中で出された課題ということですし
どういう経緯でその課題が出されたかに沿ってないと答えを提出しても通らないと思ったりもするので…)
0974デフォルトの名無しさん
2006/12/02(土) 00:28:010975デフォルトの名無しさん
2006/12/02(土) 00:30:252chから個人サイトまでマルチポストしまくり
0976デフォルトの名無しさん
2006/12/02(土) 00:32:510977デフォルトの名無しさん
2006/12/02(土) 00:35:240978デフォルトの名無しさん
2006/12/02(土) 00:50:030979デフォルトの名無しさん
2006/12/02(土) 00:53:23yaccは生で食べれない
bisonは刺身で食べれる
あと仕入れ値がbisonはyaccより1.8倍ぐらい高め
0980デフォルトの名無しさん
2006/12/02(土) 00:55:000981ぴゅあ
2006/12/02(土) 00:55:42そか・・・
0982デフォルトの名無しさん
2006/12/02(土) 01:06:49ttp://www.nagoya-fantasia.com/pc/
ここにミラーあったよ
0983デフォルトの名無しさん
2006/12/02(土) 01:16:20アッー!!
0984デフォルトの名無しさん
2006/12/02(土) 01:21:390985デフォルトの名無しさん
2006/12/02(土) 02:06:30それがコンパイラが欲しいという意味なら
ttp://bdn.borland.com/museum/
ここにある Turbo C 2.01 が最高にオススメ。
統合開発環境があった方がいいというなら Turbo C++ 1.01 という選択肢もアリ。
0986デフォルトの名無しさん
2006/12/02(土) 05:45:30日本語なら文法や意味があいまいだったり間違えて書いたりしても
読む側が推測してある程度は理解してもらえるけど、
C言語のコンパイラはそんなことないからな。
頑張れ。
0987デフォルトの名無しさん
2006/12/02(土) 06:01:20fprintf(output2,"%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n",bin[0],bin[1],bin[2],
bin[3],bin[4],bin[5],bin[6],bin[7],bin[8],
bin[9],bin[10],bin[11],bin[12],bin[13],
bin[14]);
0988デフォルトの名無しさん
2006/12/02(土) 06:06:32int i;
for (i = 0; i < 15 - 1; i++)
fprintf(output2, "%d\t", bin[i]);
fprintf(output2, "%d\n", bin[i]);
0989デフォルトの名無しさん
2006/12/02(土) 06:17:48>>988 のは立に数値が保存されてくじゃないですか。
1 2 3 4 みたいに
横に並べて保存したいのです。
FILE *output2;
output2=fopen("1ca_dist.dat","a");
てしたので、シミュレーションする毎にデータに追加されて、
何十回かシミュレーションして各ビンの平均値を出したいのですが。
なにか、うまいこと出来ないかのう?
0990デフォルトの名無しさん
2006/12/02(土) 06:28:21>>988試してみて言ってるのか?
0991デフォルトの名無しさん
2006/12/02(土) 06:44:270992デフォルトの名無しさん
2006/12/02(土) 06:46:110993デフォルトの名無しさん
2006/12/02(土) 07:01:060994デフォルトの名無しさん
2006/12/02(土) 07:08:31早とちり。
0995デフォルトの名無しさん
2006/12/02(土) 07:13:45int yorn[10];
int i;
for (i = 0; i < 10; i++) {
yorn[rand()-1] = 1;
}
for (i = 0; i < 10; i++) {
if (yorn[i] == 1) {
printf("%d\t", i);
}
}
}
//rand()のところは1-10を生成するようにする
0996デフォルトの名無しさん
2006/12/02(土) 08:17:290997デフォルトの名無しさん
2006/12/02(土) 10:18:50http://pc8.2ch.net/test/read.cgi/tech/1165022193/l50
0998デフォルトの名無しさん
2006/12/02(土) 12:46:31何がしたいのかわからん
0999デフォルトの名無しさん
2006/12/02(土) 13:06:58を悩ませたいんだと思う
1000は譲るよ
1000デフォルトの名無しさん
2006/12/02(土) 14:16:4410011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。