1 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 06:27:59 ] あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他の発言はスルーの方向で。 【質問者へ】 回答者の便宜のため、質問の際は以下を行うことを推奨します。 ・質問は【質問テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。 ・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。 ・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。 ・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。 ・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。 【質問テンプレ】 [1] 授業単元: [2] 問題文(含コード&リンク): [3] 環境 [3.1] OS: (Windows/Linux/等々) [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) [3.3] 言語: (C/C++/どちらでも可 のいずれか) [4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm 【C 関数検索 man on WWW】 www.linux.or.jp/JM/index.html 【過去ログ検索】 chomework.sakura.ne.jp/ 【wiki】 www23.atwiki.jp/homework/ 前スレ C/C++の宿題片付けます 136代目 pc12.2ch.net/test/read.cgi/tech/1274827528/
33 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 18:56:54 ] >>30 #include <stdio.h> int main(void){ int omaira_konna_kudaranai_koto_higana; int ichinichi_jyuu_yattete; int iito_omotte_irunoka; for(omaira_konna_kudaranai_koto_higana=0; omaira_konna_kudaranai_koto_higana<=10000; omaira_konna_kudaranai_koto_higana++) for(ichinichi_jyuu_yattete=0; ichinichi_jyuu_yattete<=123456; ichinichi_jyuu_yattete++) for( iito_omotte_irunoka=0; iito_omotte_irunoka<234567; iito_omotte_irunoka++) printf("%d %d %d %d", iito_omotte_irunoka, iito_omotte_irunoka, ichinichi_jyuu_yattete,omaira_konna_kudaranai_koto_higana); return 0; }
34 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 19:02:03 ] >>33 すげぇ。じゃデコーダーほぼ出来てるんだ ん?
35 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 19:13:22 ] C言語の構文からマクロを乱用してないとして void for return を手がかりに逆算したい
36 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 19:18:47 ] >>35 do と goto と continue も追加で
37 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 19:21:52 ] if もだ
38 名前:33 mailto:sage [2010/06/18(金) 20:06:02 ] >>34 全然できてないよ >>33 はかなりの部分人力で解いたものw
39 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 20:28:21 ] kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10717.txt とりあえず1行目だけのデコード結果をうpしたからエンコーダのデバッグにでも使ってくれ 2行目までもデコードしてみたがファイルが1G越えたから途中でやめた 効率的にデコードするには構文解析するといいかもしれない たとえば#w7 -> #include, w3( -> if(, w5( -> while( (w:文字、その後の数字は文字の個数) などのヒントをあらかじめ与えておき正しく変換できないときは枝狩する また、シンボルテーブルを作り、シンボルテーブルにない変数を使用しようとしたら枝狩するなど 構文解析によりかなりの枝狩ができると思われる(#define HOGE forとかされると死ぬが)
40 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 20:31:24 ] >>20 のlinuxのディストリビューション分かる人いませんか? 手元にある VineLinux3.2 kernel2.4 を見てみたけど違うみたいでした
41 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 20:57:47 ] 前にエラー文字列で検索したら、どうもこれに近い。 ttp://www.google.com/codesearch/p#8lz4Axekcxw/fs/buffer.c あと、prob.txtの引数の間のtabはなんなんだろう。 ソースコードを整形したのかな。
42 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:03:50 ] >>40 別にそれは関係ないと思うよ。 復号したコードをコンパイルするとかいう話でもないしね。
43 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:04:24 ] >>41 static void buffer_io_error(struct buffer_head *bh) までは手動で頑張ったのにw
44 名前:40 mailto:sage [2010/06/18(金) 21:07:55 ] >>42 識別子を辞書登録するのが大変なので include しているファイルの中身も読ませようと思っていたのです が、>>41 のおかげで対応が分かるので必要なくなりました
45 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:08:59 ] 復号したらそのままコンパイル出来るものを、添付書類無し で再頒布するのはGPLに抵触しかねないから、 コメントとか外したりいろいろ細工してる可能性もあるだろ
46 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:15:28 ] >>44 ああー、なるほど。そういう理由だったのか。スマソ。
47 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:57:17 ] この行より前は >>41 と一致する YCvXRg("クォートされた部分も暗号化対象外\n",wYkyL);
48 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:58:17 ] >>45 この場合頒布してるのは質問者?回答者?
49 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 22:12:23 ] 該当箇所に printf("", inode); を挿入したら完全に一致した
50 名前:デフォルトの名無しさん [2010/06/18(金) 22:38:46 ] [1] 授業単元:オブジェクトプログラミング [2] 問題文(含コード&リンク):図1のプログラムを参考に、文字配列とアドレスの関係、すなわち、 char str[ ] = “abc”とアドレスの関係を調べよ。特にアドレスが幾つずつ変化するかを理解すること。 尚、char型変数へのポインタ変数は、char *ptr;になることを注意すること。 [3] 環境 [3.1] OS:Windows XP [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月19日[5] その他の制限:int main(void){から始まる 図1 #include<stdio.h> int main(void){ int a[4]; int *p; p = &a[0]; for(i=0;i<4;i++){ a[i] = i; } for(i=0;i<4;i++){ printf(“a[%d]=%d\n”i,a[i]); printf(“p = %p\n”,p); printf(“*p = $d\n\n”, *p); } }
51 名前:デフォルトの名無しさん [2010/06/18(金) 22:40:07 ] >>50 図1の実行例 a[0]=0 p = 0x22ccd0 *p = 0 a[1]=1 p = 0x22ccd4 *p = 2 a[2]=2 p = 0x22ccd8 *p = 2 a[3]=3 p = 0x22ccdc *p = 3 つまり、int型では4byteずつ変化する。これをchar型は1byteずつ変化するということを示しなさいということです。
52 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 22:43:49 ] >>51 charに変えるのが出来ないっていってますか?
53 名前:デフォルトの名無しさん [2010/06/18(金) 22:50:29 ] >>52 そうです。 それから、もうひとつ 図1をdouble型に変えるのもお願いします。
54 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 01:54:57 ] こういうこと? #include <stdio.h> int main(void) { char str[] = "abc", *ptr; int i; ptr = &str[0]; for(i = 0; str[i]; i++, ptr++) { printf("str[%d] = %c\n", i, str[i]); printf("ptr = %p\n", ptr); printf("*ptr = %c\n\n", *ptr); } return 0; }
55 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 02:49:18 ] [1] 授業単元: [2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10719.zip [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: [3.3] 言語: C [4] 期限: ([2010年06月20日23:59まで] [5] その他の制限:
56 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 03:00:29 ] >>55 #include <stdlib.h> #include <time.h> void random_format(int num_data, int array[]) { int i; srand(time(NULL)); for(i = 0; i < num_data; i++) array[i] = (int)( (double)rand() / RAND_MAX * 100.0 ); }
57 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 05:15:59 ] >>55 0〜99の数値が全て1回ずつ必要なら、以下でok。 #include <stdio.h> #include <stdlib.h> #include <time.h> #define NMAX 100 int main(void) { int i, a[NMAX], tmp, w; srand(time(NULL)); for (i = 0; i < NMAX; i++) a[i] = i; for (i = 0; i < NMAX; i++) { w = rand() % (NMAX - i) + i; tmp = a[w]; a[w] = a[i]; a[i] = tmp; } return 0; }
58 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 05:33:12 ] >11 >min = 10000000; 10000000って数字はどっから出てきたの?
59 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 06:19:17 ] >>58 有り得ないほどの大きい数字なら何でも良かったんじゃないかな? min = num/coins[0]; でいいと思う。
60 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 12:42:30 ] >>28 バージョンは分からんが、Linuxカーネルのfs/buffer.cをエンコードしてるのか?
61 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 12:43:06 ] for(i = 0; i < NMAX; i++) { w = rand() % (i + 1); a[i] = a[w]; a[w] = i; }
62 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 12:48:14 ] >>20 一応MFCでデコードしながら、分からなくなったらユーザに聞いてくるアプリにしてみた。 コメントとかリテラルとか、まだ一回も動いてないコードとか有るし、 デコードした文字列をエディットに出力して、ユーザが判断する材料にさせてるんだが、 うまくエディットコントロールスクロールさせられなくて面倒くさくなって放置してる。 (メインスレッドでループしながらエディットに出力して、且つスクロールさせようってのがダメなんだろうが。。) 需要があればうpします。 一旦入力した候補はhistファイルに取っておくので、これを使って地道にやってけばいずれデコード出来ると思う。
63 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 16:02:35 ] >>20 のエンコード部分 typedef unsigned char uchar; void encode_output(int moji) { static int is_first=1; static uchar next_table[256], table[256]; if(is_first) { int i; for(i=0;i<256;i++) next_table[i]=table[i]=i; for(i='A';i<'Z';i++) next_table[i]=i+1; next_table[i]='a'; for(i='a';i<'z';i++) next_table[i]=i+1; next_table[i]='A'; for(i='0';i<'9';i++) next_table[i]=i+1; next_table[i]='0'; is_first=0; } putchar(table[moji]); table[moji]=next_table[table[moji]]; }
64 名前:デフォルトの名無しさん [2010/06/19(土) 16:26:50 ] >>54 ありがとうございました。
65 名前:デフォルトの名無しさん [2010/06/19(土) 16:49:54 ] [1] 授業単元:オブジェクトプログラミング [2] 問題文(含コード&リンク):以下のプログラムをdouble型にせよ。 尚、double型変数へのポインタ変数は、double *ptr;になることに注意すること。 [3] 環境 [3.1] OS:Windows XP [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月19日[5] その他の制限:int main(void){から始まる #include<stdio.h> int main(void){ int a[4]; int *p; p = &a[0]; for(i=0;i<4;i++){ a[i] = i; } for(i=0;i<4;i++){ printf(“a[%d]=%d\n”i,a[i]); printf(“p = %p\n”,p); printf(“*p = $d\n\n”, *p); } } 実行例は>>51 と同じです
66 名前:023 mailto:sage [2010/06/19(土) 17:08:52 ] #include <stdio.h> void encode_output(int moji); int main(void){ int c, slash = 0; while((c = getchar()) != EOF) { if(c>='a' && c<='z' || c>='A' && c<='Z' || c>='0' && c<='9'){ if(slash){ /* /X は、同じ文字で2回出力 */ encode_output(c); slash = 0; } encode_output(c); } else if(c == '*') { if(slash){ /* /*のコメントは読み飛ばす */ do { while(getchar() != '*'); } while(getchar() != '/'); slash = 0; } else putchar(c); } else if(c == '/') { if(slash) { /* // comment は、そのまま出力 */ putchar(c); do putchar(c); while((c = getchar()) != '\n'); putchar(c); slash = 0; } else slash = 1; } else if(c == '"') { /* "string" は、そのまま出力 */ if(slash) {slash = 0; putchar(c);} /* /X は、同じ文字で2回出力 */ do { if(c == '/') {slash = 1; continue;} if(slash) {slash = 0; putchar(c);} putchar(c); } while((c = getchar()) != '"'); putchar(c); } else { if(slash) {slash = 0; putchar(c);} /* /X は、同じ文字で2回出力 */ putchar(c); } }}
67 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 18:05:22 ] >>5 亀ですがこういうのはどうなんでしょう? #include <stdio.h> int coin(int m,int i,int sum) { int a[]={1,5,8,10,15}; sum=sum+m/a[i];m=m%a[i]; if (m==0)return sum; if (!i){sum+=m;return sum;} if ((m%a[i]==3||m%a[i]==4)&&(sum)){sum--;m=m+a[i];} return coin(m,i-1,sum);} int main(void){ int x; printf("金額を入力してください:"); scanf("%d",&x); printf("最小枚数は%d枚です。\n",coin(x,4,0)); return 0;}
68 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 21:15:54 ] >>62 見せて見せて
69 名前:62 mailto:sage [2010/06/19(土) 21:54:03 ] >>68 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10721.zip うpしました。 input.txtに暗号化された内容をおいておきます。 hist.txtは履歴の入力。実行するとhistout.txtができるので、それをhist.txtに書き換えればおk。 deb.txtにデバッグログ dec.txtに復号化したもの enc.txtは今のところ何も出ない。 です。 一応7行目くらいまでやって放置してます。 バグもいっぱいあると思うんで、実行しながら候補を入れていき、バグ取りしてけば・・というレベルです。
70 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 21:55:47 ] >>67 興味深いな。 > if ((m%a[i]==3||m%a[i]==4)&&(sum)){sum--;m=m+a[i];} 3,4になるプロセスが判らない。
71 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 22:22:38 ] 特定の組み合わせ限定だからだろ
72 名前:デフォルトの名無しさん [2010/06/19(土) 22:56:00 ] >>65 です 誰かよろしくお願いします。
73 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 23:02:49 ] >>70 最初の3,4以外の、8以上のm%5で3,4になる数字は最小枚数を求める時必ず8が入るので 15と10で割り過ぎないように先に8で割るようにしました。
74 名前:73 mailto:sage [2010/06/19(土) 23:07:36 ] ×先に8で割るように ○後で8で割れるように
75 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 23:12:30 ] >>65 #include<stdio.h> int main(void){ int i; double a[4]; double *p; p = a; for(i = 0; i < 4; i++){ a[i] = i; } for(i = 0; i < 4; i++, p++){ printf("a[%d]=%f\n", i, a[i]); printf("p = %p\n", p); printf("*p = %f\n\n", *p); } return 0; }
76 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 01:10:03 ] >>73 なるほど。 オーソドックスな解法は、>>17 のようなDPだろうけど、>>67 でも出来る、 という事は、条件付きで数学的に等価なのかもな。
77 名前:デフォルトの名無しさん [2010/06/20(日) 02:55:07 ] >>75 ありがとうございました
78 名前:デフォルトの名無しさん [2010/06/20(日) 02:57:10 ] [1] 授業単元:オブジェクトプログラミング [2] 問題文(含コード&リンク):以下のプログラムをdouble型について調べるプログラムを作成せよ。 尚、単純ポインタが指す値をprintf(“%p) =0x%x\n”, ptr_d, *ptr_d); を用いて表示すると図1のような実行結果を得るが、図2のように表示をするようにしなさい。 [3] 環境 [3.1] OS:Windows XP [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月20日[5] その他の制限:int main(void){から始まる
79 名前:デフォルトの名無しさん [2010/06/20(日) 02:58:58 ] #include <stdio.h> int main(void){ char src[32], dst[32]; char *ptr_c; int *ptr_i, *ptr; double *ptr_d; int i; // src[i]配列にデータを格納 for(i=0; i<32; i++){ src[i] = i; } // dst[i]配列へのコピー for(i=0; i<32; i++){ dst[i] = src[i]; } //配列の出力 for(i=0; i<32; i++){ printf("dst[%d]=0x%x\n", i, dst[i]); } // ptr_cにsrcの先頭アドレスをコピー ptr_c = src; // ptrを使用してsrc[i]のデータを内容を出力する。 for(i=0; i<32; i++){ printf("%p) = 0x%x\n", ptr_c, *ptr_c); ptr_c++; } }
80 名前:デフォルトの名無しさん [2010/06/20(日) 03:00:45 ] 図1 0x22ccc0) = 0.3020100 0x22ccc8) = 0.b0a0306 0x22ccd0) = 0.13121110 0x22ccd8) = 0.1b1a1918 図2 ptc_d:0x22ccc0) = 0.3020100 0x22ccc4) = 0.7060504 ptr_d:0x22ccc8) = 0.b0a0306 0x22cccc) = 0.f0e0d0e ptr_d:0x22ccd0) = 0.13121110 0x22ccd4) = 0.17161514 ptr_d:0x22ccd8) = 0.1b1a1918 0x22ccdc) = 0.1f1e1d1c
81 名前:023 mailto:sage [2010/06/20(日) 13:34:27 ] >>069 VS2005で動かしてみました。 ゲームとしては7行くらいでゲームオーバーでもかまいません。 ただ、/を入れた後の文字選択が2回必要なのはなぜでしょうか。
82 名前:デフォルトの名無しさん [2010/06/20(日) 14:57:39 ] >>78 です どなたか、よろしくお願いします。
83 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 15:06:53 ] 以前のヤツからそうなんだけど、書いてあるコード実行しても図の例と同じにはならないんだよな
84 名前:デフォルトの名無しさん [2010/06/20(日) 15:49:25 ] すみません。説明不足でした。 ソースコードは、int型で書かれています。これを、double型に書き換えていただきたいんです。 そして、double型に書き換えたものを実行すると、図2のように表示せよという問題です。 よろしくお願いします。
85 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 16:16:30 ] >>78 #include<stdio.h> #define SIZE 4 int main(void){ int i; double src[SIZE], dst[SIZE]; double *ptr_d; // データ格納? for (i = 0; i < SIZE; i++) { src[i] = i; dst[i] = src[i]; } // 配列の内容を出力 for (i = 0; i < SIZE; i++) { printf("%p) = %f\n", &dst[i], dst[i]); } // ポインタと配列を使って内容を出力 for (ptr_d = src, i = 0; i < SIZE; ptr_d++, i++) { printf("ptr_d :%p) = %f\n", ptr_d, *ptr_d); printf("src[%d]:%p) = %f\n", i, &src[i], src[i]); } return 0; } すいません。 問題のゴールが明確には分からなかったので適当に書いてます。 大枠はこれでいいと思うので書き換えて使ってください。
86 名前:62 mailto:sage [2010/06/20(日) 16:49:11 ] >>81 入力しても時々無視されちゃってます。 バグですが、もう一度入れれば入るみたいなんで、無視しちゃってください。 (直して^^;)
87 名前:023 mailto:sage [2010/06/20(日) 17:16:35 ] int ch, ch2, ch3; bool slash = false; /****/ try{ /****/ while(1){ ch = skip(); if(ch == EOF) break; plane_put(ch); kouhosu = 0; bslash = 0; ch2 = fgetc(fp1); if(!kigou(ch2) && (ch2 == ch + 1)){ bslash=1;} ungetc(ch2, fp1); if(slash) { // add 2010.6.20 ch = ch3; slash = false; }else{ ch = fukugou(ch);} dec_put(ch); fputc(ch, fp3); if(ch=='/'){ ch3 = fukugou(ch2 - 1); angou(ch3); slash = true; // add 2010.6.20 }else{ deb("angou=%c\n",ch); angou(ch); } }}
88 名前:62 mailto:sage [2010/06/20(日) 18:08:56 ] >>87 ありがとうございます!! kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10722.zip に更新しました。 スクロール出来なくて今何をデコードしてるのか分からなくなってた問題は 別スレッドのポップアップウインドにしたので解消しました。 なんか'/'の扱いが難しいすね。よく考えると、'/'と見なしたら、その次の文字を-1して復号化するんだけど、 その復号化において、さらに、'/'と見なすべき場合は再帰でやらないと出来ないんじゃないだろうか。。という気がしてきた。
89 名前:62 mailto:sage [2010/06/20(日) 18:31:48 ] っていうか、ほぼ毎回、候補が複数出てくる。 これほとんど無理だよねw
90 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:24:13 ] ?1から10までの積を計算するプログラムを書け。このとき,whileループを用いて、 画面に 1*2*3*・・・・*10 = という風に表示されるようにすること。 期限は6/22までです。お願いします。
91 名前:デフォルトの名無しさん [2010/06/20(日) 20:24:33 ] 与えられた零以上の実数(a,b,c,d)と正の実数(e,f)に対して つぎのロンバーグ表と積分値を求めるプログラムを作成せよ (分割数:n=2^k≧16,推定回数:m≧3) I=∫ 1/(a*x^3+b*x^2+c*x+d)dx (e≦x≦f) ただし、キーボードから(a,b,c,d,e,f)を入力すれば 上記の定積分のロンバーグ表の値と積分値が画面表示 されるようなプログラムを作ること。 この問題を解ける方教えていただけませんか?
92 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:35:12 ] >>90 #include <stdio.h> int main(void) { int i=10,sum=1; while(i--)printf(i?"%d*":"%d=%d\n",i+1,sum*=(i+1)); return 0; }
93 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:41:29 ] >>1 >>1 大事なことなので2回言いました。最近守らないやつが多すぎる。
94 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:44:42 ] >>78 char src[32], dst[32]; int *ptr_i,*ptr; double *ptr_d; int i; // src[i]配列にデータを格納 for(i=0; i<32; i++){ src[i] = i; } // dst[i]配列へのコピー for(i=0; i<32; i++){ dst[i] = src[i]; } // ptr_cにsrcの先頭アドレスをコピー ptr_d = (double *)src; // ptrを使用してsrc[i]のデータを内容を出力する。 for(i=0; i<4; i++){ printf("ptc_d:%#6x) = 0.%x\n", ptr_d, *ptr_d); ptr_i = (int *)ptr_d; printf(" :%#6x) = 0.%x\n", (ptr_i+1), *(ptr_i+1)); ptr_d++; } 図2 ptr_d:0x22ccc8) = 0.b0a0306 は>>79 のソース内容から外れるので考慮していない
95 名前:91 [2010/06/20(日) 20:58:11 ] [1] 授業単元:数値計算法 [2] 問題文(含コード&リンク): 与えられた零以上の実数(a,b,c,d)と正の実数(e,f)に対して つぎのロンバーグ表と積分値を求めるプログラムを作成せよ (分割数:n=2^k≧16,推定回数:m≧3) I=∫ 1/(a*x^3+b*x^2+c*x+d)dx (e≦x≦f) ただし、キーボードから(a,b,c,d,e,f)を入力すれば 上記の定積分のロンバーグ表の値と積分値が画面表示 されるようなプログラムを作ること。 [3] 環境 [3.1] OS:vista [4] 期限: 無期限
96 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 05:37:05 ] >>89 適当に選ぶと正解じゃない場合は常に行き詰まる模様
97 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 07:33:49 ] エロゲの選択肢よりシビアだな
98 名前:023 mailto:sage [2010/06/21(月) 09:02:14 ] decrypt 窓が、文字の無いところを表示するから、常に横スクロールが必要。
99 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 13:31:35 ] >>95 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10726.txt
100 名前:87 の修正を修正 mailto:sage [2010/06/21(月) 16:05:27 ] int ch, ch2, ch3; bool slash = false; /****/ try{ while(1){ ch = skip(); if(ch == EOF) break; plane_put(ch); scroll(IDC_EDIT3); // add 2010.6.21 他のscroll()呼び出しは削除 kouhosu = 0; bslash = 0; ch2 = fgetc(fp1); if(!kigou(ch2) && (ch2 == ch + 1)){ bslash=1;} ungetc(ch2, fp1); if(slash) { // add 2010.6.20 ch = ch3; slash = false; }else{ ch = fukugou(ch);} dec_put(ch); fputc(ch, fp3); if(ch=='/'){ kouhosu = 0; // add 2010.6.10 候補を消す ch3 = fukugou(ch2 - 1); angou(ch3); slash = true; // add 2010.6.20 }else{ deb("angou=%c\n",ch); angou(ch); } }}
101 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:08:25 ] そろそろ別にスレでも作ってそっち行ってくんないかな
102 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:17:56 ] >>99 間違ってるぞw
103 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:33:42 ] >>102 本からの丸写しなんだが。間違ってる点があるなら指摘よろしく
104 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:37:28 ] 本当に丸写しなら、出版社に言って謝礼をもらうべきw どうせ問題にあわせていじったところでミスってるだけだろうけど。
105 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:38:51 ] >>104 嫌味なら誰にでも言える どこがどう間違っているのか具体的に指摘よろしく それかお前が正しいプログラムを書いて示せ
106 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:40:47 ] 間違いの存在教えてもらっただけでも感謝して、自分で探せよw
107 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:41:28 ] まあどこが間違っているか示せないだろうけどな >>99 は何度も検証したし結果も合ってる ただケチを付けてみたいだけだろう>>102 は
108 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:45:23 ] そんな検証の仕方じゃ話になんないなw
109 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:45:57 ] 以降放置勝手に言ってろ
110 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:46:36 ] >h = b - a; これはなんですか?w
111 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:49:57 ] >>110 それで合ってんだよ
112 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:52:32 ] え?w
113 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:53:29 ] >>20 の問題だけでスレ立てるのもアレなのでこちらでどうぞ スレ立てるまでもない質問はここで 106匹目 pc12.2ch.net/test/read.cgi/tech/1276215571/
114 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:53:29 ] wてなに
115 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:53:30 ] どうせ台形公式とかルンゲ・クッタ法のhと混同してるんだろうこの馬鹿は ロンバーグ積分も知らない馬鹿は口出しすんな
116 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:58:01 ] ロンバーグ積分は台形公式利用するものだし、hの意味は同じなんだがw aとbは係数として関数に渡すもので、始点・終点じゃない h = f - e; が正しい。
117 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:05:21 ] >>99 のやり方はミス抜かしてもロンバーグ積分としては微妙だけどな。 毎回台形公式で求めなおしてるから計算回数無駄に多いし。
118 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:06:54 ] >>116 確かにその通りだスマン >>117 だから文句タラタラ言うなら自分でプログラムを書いて示せっつーの
119 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:09:36 ] スマンですますなよ、この低脳がw 教えてくださいって土下座しろよこのマヌケ
120 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:11:47 ] >>110 で指摘されてもなお>>111 と言える心の強さは素晴らしい
121 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:14:36 ] >>113 まともに機能してるスレに関係ないもの誘導すんなよ。 過疎ってるスレがいくらでもあまってるんだから、そっちにしようぜ。 例えば C言語を勉強しあおう pc12.2ch.net/test/read.cgi/tech/1190599975/ とかさ
122 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:15:12 ] そこまで言わなくてもいいと思うが、丸写しした本を教えてほしい。 それから、 > 何度も検証したし結果も合ってる というところも詳しく。
123 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:30:15 ] 台形公式で刻み数を倍にするときは前回の計算結果を利用して、 関数の計算回数を減らすのが普通。 減らすって言っても、前回の計算がなかったとして直接計算したときと同じなんだけど。 少なくとも、前回の計算分丸々計算しなおすよりはマシになる。
124 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:01:03 ] >>123 だから言葉で言わずにプログラムで書けっつーの ここはプログラム板だ
125 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:03:59 ] ググれカス
126 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:05:22 ] >>124 先に>>122 の質問に答えたら?
127 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:25:50 ] >>90 #include <stdio.h> int main(void) { int i = 1, sum = 1; while (i < 10) { sum *= i; printf("%d*", i); i++; } printf("%d = %d\n", i, sum *= i); return 0; }
128 名前:113 mailto:sage [2010/06/21(月) 20:05:45 ] >>121 了解した >>20 の問題に関しては是非こちらへ C言語を勉強しあおう pc12.2ch.net/test/read.cgi/tech/1190599975/168-
129 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 00:46:57 ] wってなに?
130 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 01:03:40 ] waraiのw
131 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 04:04:39 ] sumって変数名に乗算の結果を入れるのは気持ち悪い
132 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 10:09:40 ] product
133 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:05:37 ] [1] 授業単元:C言語プログラミング [2] 問題文(含コード&リンク): [1] 授業単元: char buf[80]; int main(int ac, char ** av) { int i; buf[0] = '\0'; for(i = 1; i < ac; i++){ printf("%3d \"%s\"\n", strlen(av[i]), av[i]); strcat(buf, av[i]); } printf("%3d \"%s\"\n", strlen(buf), buf); これを入力した文字列を逆順に表示できるように書き換えよ [3] 環境 [3.1] Windows [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 本日三時 [5] その他の制限:なし おねがいします
134 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:39:40 ] for(i = strlen(buf) - 1; i >= 0; i--) printf("%c", buf[i]);
135 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:49:15 ] 配列a[n],配列b[n] と配列の大きさn を渡すと配列の 要素を入れ換えるプログラムをポインタを用いて作成せよ. 例えば,a[3]={1,2,3},b[3]={101,102,103}とすると き,結果として,a[3]={101,102,103},b[3]={1,2,3}と なるようにせよ. よろしくお願いします!
136 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:50:29 ] void f(int *a, int *b, int size) { while(size--) { int temp = *a; *a++ = *b; *b ++ = temp; } }
137 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 12:06:39 ] >>136 早速の回答感謝します ありがとうございました!
138 名前:デフォルトの名無しさん [2010/06/22(火) 14:55:24 ] 1] 授業単元:システムコール [2] 問題文(含コード&リンク): コマンドライン引数で指定された文字列のいずれかと一致する名前の環境変数についてのみ、 #include <stdio.h> #include <stdlib.h> extern char **environ; main() { char **p; for (p = environ; *p != NULL; p ++) { printf("%s\n", *p);} return 0;} や #include <stdio.h> #include <stdlib.h> main(int argc, char *argv[], char *envp[]) { char **p; for (p = envp; *p != NULL; p ++) { printf("%s\n", *p);} return 0;} のように変数名と値を表示するプログラムを書け。 ただし、コマンドライン引数に重複があっても、対応する環境変数について複数回表示してはならない [3.2] コンパイラ名とバージョン:gcc 3.4 [3.3] 言語:C [4] 期限:2010年5月24日12:59まで [5] その他の制限:特になし よろしくお願いします
139 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 15:05:45 ] 期限が過ぎているのでスキップされました
140 名前:デフォルトの名無しさん [2010/06/22(火) 15:17:58 ] >>138 すいません!期限6/24です
141 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 17:56:42 ] ワイルドカードのマッチを、正規表現使って行うにはどう変換すればいいですか。 . や * や ? で機能が違うのですが。
142 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 18:01:55 ] ワイルドカード → 正規表現 ? → . * → .*
143 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 18:05:12 ] サンクス。あと正規表現の特殊文字に\つけとけばいいですかね。
144 名前:デフォルトの名無しさん [2010/06/22(火) 18:47:03 ] [1] 授業単元:C・プログラミング [2] 問題文(含コード&リンク): 深さ優先探索をリスト表現で表すプログラムを作成せよ。 制限は特にないです。 [3] 環境 [3.1] Windows 7 [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限:2010年6月25日迄 よろしくお願いします。
145 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 19:41:07 ] >.144 めっちゃ抽象的だな…
146 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 19:44:08 ] まずは要件定義から始めること。 という実践的な問題なんだろ。
147 名前:デフォルトの名無しさん [2010/06/22(火) 20:09:28 ] >>138 #include <stdio.h> #include <string.h> #include <stdlib.h> int main(int argc, char *argv[], char *envp[]) { char **p, **v; int lth; for (p = envp; *p != NULL; p++) { lth = strchr(*p, '=') - *p; for (v = argv; *v != NULL; v++) { if (!strncmp(*p, *v, lth)) { printf("%s\n", *p); *p = '\0'; break; } } } return 0; }
148 名前:デフォルトの名無しさん [2010/06/22(火) 20:30:24 ] [1] 応用プログラミング [2] 問題文(含コード&リンク):構造体の基礎 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10733.txt [3] 環境 [3.1] OS: WindowsXP [3.2] コンパイラ名とバージョン:Microsoft Visualstadio 2008 [3.3] 言語:C [4] 期限:24日まで [5] その他の制限:プログラミングやってまだ半年しか経ってません。 構造体の授業の宿題です。 どうか宜しくお願いします。
149 名前: ◆QZaw55cn4c mailto:sage [2010/06/22(火) 20:43:07 ] >>148 codepad.org/nXIJMHE8
150 名前:デフォルトの名無しさん [2010/06/22(火) 22:25:31 ] [1] 授業単元:C++プログラミング [2] 問題文(含コード&リンク):三目並べを作成せよ。ポインタとクラスを使用。 [3] 環境 [3.1] OS:WinodwsVista [3.2] コンパイラ名とバージョン:Visual C++ 2008 Express Edition [3.3] 言語:C++ [4] 期限:6/23(水)8時半まで [5] その他の制限:C++触り始めた所です。どうかお願いします。
151 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:27:42 ] >>150 GUIでいいのか
152 名前:デフォルトの名無しさん [2010/06/22(火) 22:30:13 ] >>151 言い忘れてた。CUIでお願いします。 こんな感じにしてほしいです。 1 2 3 1 2 3 ○の横座標を入力してください: ○の縦座標を入力してください:
153 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:04:32 ] >>152 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10734.txt
154 名前:デフォルトの名無しさん [2010/06/22(火) 23:16:46 ] >>153 出来ればクラスとメソッドをしっかりと分けてほしいです。 クラスの中にメソッドが入ってる感じなのでこう分けてくれると助かります。 class game{ public: void init(); bool Player(int x, int y); }; void Game::init() { ・・・ } 他のメソッドもこんな感じに処理毎に分けてくれると助かります。あと○に座標だけでなく ×の座標も入力できるようにしてほしいです。
155 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:18:02 ] www
156 名前:デフォルトの名無しさん [2010/06/22(火) 23:18:30 ] >>154 ミス。「○に座標」じゃなくて「○の座標」でした。 入力した座標をポインタで受け取る感じにしてほしいです。 申し訳ありません。
157 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:31:38 ] 座標をポインタで受け取りたいってのがよくわからんが。。 ってかドローゲーム忘れてたw
158 名前:デフォルトの名無しさん [2010/06/22(火) 23:39:19 ] >>157 自分の中のイメージとしてg.player(&width, &height)って感じでメソッド呼び出して 座標データを取得したいのですが。。。。。 すいません。なかなか上手く説明できないです。初心者なので。。。。。。
159 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:42:24 ] クラスとメソッドを分けてほしいって表現がすごいけど、その例を書けるんならそんぐらい直せw
160 名前:デフォルトの名無しさん [2010/06/22(火) 23:45:28 ] >>159 クラスとメソッド分けるのちょっとやってみます。 挫折したらすみません。あと途中で解説欲しくなるかもしれないです。
161 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:48:40 ] >>158 こんなんでどう? get_posってヤツで座標を取るんで、これなら意味分かるわ。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10735.txt
162 名前:デフォルトの名無しさん [2010/06/22(火) 23:52:37 ] >>161 おおおおおおおおおおお。けっこうスマートになってるwwww 助かります。ちょっとソースコード読んでみます。解説欲しくなったら言うので。
163 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:54:19 ] どんだけ上から言ってんだよw ってかもうねる。
164 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 00:01:03 ] >>163 乙。 釣りなのかと思っちゃうよね。
165 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 00:15:45 ] インライン関数は使わない流儀
166 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 03:27:12 ] [1] 授業単元:プログラミング応用 ;構造体 [2] 問題文(含コード&リンク): 以下コピペ 表示例のように,名前,性別,身長,体重,腹囲(ウエスト)を3人分入力した後, 3名全員について入力データに加えてBMI値とメタボリック症候群の疑いの判定を 表示するプログラムを作成しなさい. プログラムでは,名前,性別,身長,体重,腹囲をまとめて 個人データとして表すための構造体を定義して利用すること. 注意 " 体重はkg, 身長,腹囲はcmで入力する. " 性別は 1 で男性,2で女性を表す. " BMI値 = 体重(kg) / 身長(m)2 " 男性は腹囲85cm以上,女性は腹囲90cm以上でメタボリック症候群の疑い がある 表示例 データ1を入力してください 名前: Hanako 性別: 2 身長: 156.4 体重: 65.3 腹囲: 93.4 名前: Hanako, 性別: 女, 身長: 156.4, 体重: 65.3, 腹囲: 93.4, BMI: 26.7, メタボリック症候群の疑いがあります コピペ終わり 本当はデータ3つです。改行制限で割愛 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: (cc 3.4) [3.3] 言語: (どちらでも可) [4] 期限: (6月23日15時まで) [5] その他の制限: (構造体でデータを個々で格納してお願いします。) よろしくお願いします。
167 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 10:51:24 ] >>>166 codepad.org/z3vbEcex
168 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 11:20:14 ] >>166 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10736.c
169 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 12:33:36 ] >>167 >>168 ありがとうございました。参考にさせていただきます。
170 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 15:18:36 ] 【質問テンプレ】 [1] 授業単元: C言語プログラミング [2] 問題文(含コード&リンク): 1.関数sqrtを使って1〜10までの二乗根の和を求めなさい。 2.16進数ABC.DEを10進数にしなさい。 [3] 環境 [3.1] OS: Windows XP [ [3.3] 言語: C言語 [4] 期限: 6月24日15時まで よろしくお願いします。
171 名前:デフォルトの名無しさん [2010/06/23(水) 15:33:07 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10737.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:6月28日まで [5] その他の制限:なし よろしくお願いします
172 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 15:55:30 ] 【質問テンプレ】 [1] 授業単元: プログラミングB [2] 問題文(含コード&リンク):実行したい処理を選ぶことが可能なプログラムを作りなさい。このとき、実 行できる処理は以下の三つとする。 処理1:複数の2択問題への回答に応じた結果を表示する。(例:職種選択、旅行先選び 処理2:文字コード一覧表を出力する。(文字コード32~126を一行に8文字ずつ) 処理3:本のページ数を入力し、その本を読み切るために必要な日数を表示 する。このとき、初日は10ページ、2日目は20ページ,,,と読むページ 数は増加するものとする。 以下の仕様で作成すること キーボードから入力された数に応じて、switch文で各処理に移動する。 処理1:if文を使って 処理2:for文を使って 処理3:while文またはdo・while文を使って。 [3] 環境 [3.1] OS: WindowsXP [3.3] 言語: C言語 [4] 期限: 6月25日まで よろしくお願いします。
173 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 16:03:04 ] >>171 (1)j-1 (2)printf(" ");
174 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 16:07:11 ] >>170 1. #include <stdio.h> #include <math.h> int main(void) { int i; double sum = 0; for(i = 1; i <= 10; i++) sum += sqrt(i); printf("%f\n", sum); return 0; }
175 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 16:45:32 ] >>170 2. kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10738.c
176 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 17:34:30 ] >>172 自己解決しました。
177 名前:デフォルトの名無しさん [2010/06/23(水) 21:05:54 ] >>149 ありがとうございました、参考にさせていただきました。 それにしてもわずか10分でするとは…
178 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:17:16 ] 質問させてください 当方、エントロピー値の計算するプログラムをperlで作成したのですが わけあってC++に書き直すことになりました しかし、C++にはハッシュ(連想配列)などは自分で作らなければならなく どうしてもうまく行きませんでした・・・ perlで作ったプログラムをここに張るのは良くない思うのですが どうかC++動くようにご教授お願いします
179 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:20:11 ] こちらがperlのプログラムです #! c:/perl/bin/perl open(FILE,"IPsource.txt"); #ファイル読み込み use strict; use warnings; use utf8; print "Content-type: text/html\n\n"; my $count; my $t; my $key; my $ref_freq; my %ref_freq; my @x; my $v; $count = 0; #全体IPカウント while ($t = <FILE>){ #IPファイル展開 #IP集計 if($t) { $count += 1; #全体IPカウント ++$ref_freq{$t}; } }
180 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:21:17 ] @x = values %ref_freq; print"@x \n"; close(IN); #my @x= map $_ ,$key; #エントロピー計算 my $y=$count; my $num; my @pi = map $_ / $y, @x; my $i; print"@pi \n"; #テスト用プリント #print"@x \n"; for($i=0;$i<=$#pi;$i++){ $num += -($pi[$i]*log($pi[$i]) / log(2)); } #print"@pi\n\n"; print "-Σpi*log2(pi) = $num \n";
181 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:27:16 ] std::hash_map, std::mapはC++にもある
182 名前:178 mailto:sage [2010/06/23(水) 21:32:30 ] プログラムの動きですが >>179 でtxtに入れられたIPアドレスの種類と数をカウントします ここでハッシュ(連想配列)を用いています ここを出力するとこのようになります IP 数 202.・・・ 20 そして>>180 でエントロピー計算を行います エントロピーの計算方法はlog(対数)とΣ(for文)で my $y=$count; my $num; my @pi = map $_ / $y, @x; この部分に先ほどカウントしたIPが入り for($i=0;$i<=$#pi;$i++){ ←カウントしたIP分だけループさせ $num += -($pi[$i]*log($pi[$i]) / log(2)); ←エントロピーの計算をします }
183 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:36:16 ] 文字列をキーとした連想配列はmapで代用できる。 もちろん、>>181 の言うようにhash_mapでもいい。(あれば)
184 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:39:16 ] std::tr1::unordered_map も忘れないでください。
185 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 21:55:08 ] >>178 元のコードにできるだけ合わせたつもり kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10740.cpp
186 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 22:17:25 ] CでなくC++でよかったな
187 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 22:18:45 ] 余計な言い訳せずにC++のコードくださいって言えばいいのにね。
188 名前:185 mailto:sage [2010/06/23(水) 22:54:11 ] >>185 の訂正 途中で @x 相当の変数使うの忘れてたw kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10741.cpp
189 名前:178 mailto:sage [2010/06/23(水) 23:11:42 ] >>181 、183、184 ご指摘ありがとうございます その範囲を調べてみます。 >>185 わざわざコードを作っていただき 本当にありがとうございます このコードを参考に勉強させていただきます。
190 名前:デフォルトの名無しさん [2010/06/24(木) 00:22:32 ] モンテカルロ法で√2の近似値を求めたいのですが、 ネット調べてみるとモンテカルロ法と言えばπの近似に関するばかりで・・・ どなたか教えてくださいませ
191 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 00:33:17 ] [sin θ]0〜PI に近い
192 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 00:37:45 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): 問題1:char name[20], int english, int mathematicsをメンバとする構造体 score を定義せよ 問題2:以下の5人の情報をもつ配列 seito[5] を、問題1で作成した構造体 score 型を使って宣言せよ。なお、5人の情報は初期値として宣言することにする。 name english mathematics "yamada" 50 70 "tanaka" 70 60 "suzuki" 80 70 "yamamoto" 40 60 "sakata" 90 80 問題3:問題2で初期値を代入した構造体 score 型の構造体配列 seito[5] を宣言し、各メンバ変数をソートする関数を作成せよ。 [3] 環境 [3.1] OS:Win Vista [3.2] コンパイラ名とバージョン:VB 2008 [3.3] 言語:C [4] 期限:2010年6月25日まで [5] その他の制限:無し よろしくお願いします
193 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 01:36:43 ] >>173 ありがとうございます。助かりました!
194 名前:デフォルトの名無しさん [2010/06/24(木) 01:42:16 ] >>190 #include <stdio.h> #include <stdlib.h> #define NN 10000 int main(void) { int i, w, cnt = 0, n; printf("input sample no(cf.1000)="); scanf("%d", &n); for (i = 0; i < n; i++) { w = rand() % NN; w *= w; if (w < NN * NN / 2) cnt++; } printf("PI neary equal = %f", (double) cnt * 2 / n); return 0; }
195 名前:デフォルトの名無しさん [2010/06/24(木) 11:48:13 ] [1] 授業単元:情報処理 [2] 問題文:ガウスの消去法のプログラムをピボット対応と ピボット非対応の2つ作成し、連立方程式の解を求めよ。 (ただし解くべき連立方程式は5元1次方程式で、ピボットの 発生するものと発生しないものの2種類とする) [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:VC 6.0 [3.3] 言語: C++ お願いします。
196 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 13:44:31 ] 演習6-1 複数の文字列を読み込み,それらの文字列を空白を入れて繋ぎ合わせるプログラムを作成せよ. 【実行例】 何個の文字列を入力しますか?:3 入力文字列[1]:A 入力文字列[2]:B 入力文字列[3]:C 結果:A B C 演習6-3 入力したDNA塩基配列中にある塩基 t, c, a, gそれぞれの個数をカウントするプログラムを作成せよ. 【実行例】 % ./a.out tataatccg ← 入力し,リターンを押して ^D Thymine (t) : 3 Cytosine (c) : 2 Adenine (a) : 3 Guanine (g) : 1 % よろしくお願いします!
197 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 15:07:11 ] >>196 演習6-1 #include <stdio.h> int main(void) { char buff[32], str[1024], *p, *q; int i, n; printf("何個の文字列を入力しますか?:"); scanf("%d", &n); for(i = 1, p = str; i <= n; i++) { printf("入力文字列[%d]:", i); scanf("%s", buff); for(q = buff; *q; q++, *p++) *p = *q; *p++ = ' '; } *(p - 1) = '\0'; printf("\n結果:%s\n", str); return 0; }
198 名前:デフォルトの名無しさん [2010/06/24(木) 17:15:46 ] ファイルkadai.txt に記述された数行の数値を表す文字列を読み込み、整数に変更して数値として表示 するプログラムを作成せよ。関数としてstrtol()を使用すれば問題ないが、同じ機能の関数を作成すること。 基数の設定に関する引数は必要なくデフォルト(先頭が0 なら8 進、それ以外は10 進、16 進は使用しな い)とする お願いします!
199 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 19:22:26 ] >>197 助かりました!本当にありがとうございます! >>196 の演習6-3は無事、自己解決致しました。 ありがとうございました〜
200 名前:デフォルトの名無しさん [2010/06/24(木) 20:10:46 ] >>198 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10743.c
201 名前:デフォルトの名無しさん [2010/06/24(木) 21:08:03 ] バブルソートでは, 配列のデータがすでに適正な順序, あるいはそれに近い順序で並んでいても n-1回の走査をしなければならない. すなわち, n(n-1)/2回の比較が行われなければならない. そこで, 各回の走査の終わりに, 交換が行われたか否かをチェックするようにし, 交換が行われていなければそれ以上走査の必要はないのでソートを完了するようなプログラムを作成しなさい. sizeofは使わない。 ↓のような出力結果になるようにする。 初期状態: 10, 3, 1, 15, 2, 7 [1回目の走査] 1回目の交換: 3, 10, 1, 15, 2, 72回目の交換: 3, 1, 10, 15, 2, 73回目の交換: 3, 1, 10, 2, 15, 74回目の交換: 3, 1, 10, 2, 7, 15 [2回目の走査] 1回目の交換: 1, 3, 10, 2, 7, 15 2回目の交換: 1, 3, 2, 10, 7, 15 3回目の交換: 1, 3, 2, 7, 10, 15 [3回目の走査] 1回目の交換: 1, 2, 3, 7, 10, 15 [4回目の走査] 最終状態: 1, 2, 3, 7, 10, 15
202 名前:デフォルトの名無しさん [2010/06/24(木) 21:09:51 ] #include <stdio.h> int main(void) { int str[100]={0}; int i,j, temp,x; x=0; printf("値の上限を設定してください:"); scanf("%d",&x); for(i=0;i<x;i++){ printf("%d番目の値を入力してください:",i+1); scanf("%d", &str[i]); } printf("初期状態:"); for(i=0;i<x;i++){ if(i==x-1){ printf("%d\n ",str[i]); }else{ printf("%d, ",str[i]); } }
203 名前:デフォルトの名無しさん [2010/06/24(木) 21:11:02 ] for (i = 1; i<x; i++) { for(j=x-1; j>=i; j--){ if (str[i-1] > str[i]){ temp = str[i-1]; str[i-1] = str[i]; str[i] = temp; } } } for (i = 0; i < x; i++){ if(i==x-1){ printf("%d\n", str[i]); }else{ printf("%d, ", str[i]); } } return 0; } ここまで作りましたが出力結果が上のようになりません。 誰か助けてください!お願いします。
204 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 21:50:07 ] #include <stdio.h> int main(void) { int i, j, temp, x=0, f; printf("初期状態: %d", str[0]); for(i=1;i<x;i++) printf(", %d", str[i]); printf("\n"); for (i = 1; i<x; i++) { f = 1; for(j=x-1; j>=i; j--){ if (str[j-1] > str[j]){ temp = str[j-1]; str[j-1] = str[j]; str[j] = temp; f = 0; } } if(f != 0) break; printf("%d回目の走査: %d", i, str[0]); for(j=1;j<x;j++) printf(", %d", str[j]); printf("\n"); } printf("最終状態: %d", str[0]); for(i=1;i<x;i++) printf(", %d", str[i]); printf("\n"); return 0; }
205 名前: ◆QZaw55cn4c mailto:sage [2010/06/24(木) 22:05:02 ] >>201 codepad.org/4Nxqmitu
206 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 22:05:49 ] 使うとインデント表現できるんだね
207 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 22:08:25 ] >>206 s/\&/\&/g s/ /\ /g s/"/\"/g s/</\</g s/>/\>/g
208 名前:270 mailto:sage [2010/06/24(木) 22:09:47 ] すみません、間違えました。 s/\&/\&/g s/ /\ /g s/"/\"/g s/</\</g s/>/\>/g
209 名前:208 mailto:sage [2010/06/24(木) 22:11:50 ] んー、うまくいかない。 s/\&/\&/g s/ /\ /g s/"/\"/g s/</\</g s/>/\>/g こうか?
210 名前:sage [2010/06/24(木) 22:51:25 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 再帰呼び出しを使い、入力した値の階乗を求めるプログラムを書きなさい。 なお、出来る限り大きな値の計算を出来るように工夫しなさい。 [3] 環境 [3.1] OS:Windows XP [3.2] コンパイラ名とバージョン:Borland C++ 5.5.1 [3.3] 言語: C言語 [4] 期限: 6月中 [5] その他の制限:指定なし
211 名前: ◆QZaw55cn4c mailto:sage [2010/06/24(木) 23:12:33 ] >>210 なんの工夫もしていません。 codepad.org/31sqsbvL
212 名前:デフォルトの名無しさん [2010/06/25(金) 00:18:02 ] [1] 授業単元: 数値解析 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10745.txt ニュートン・ラフソン法についての問題です。教科書に例題として載っていたプログラミングに今回問題となっている方程式の当てはめ方がわかりません(おそらく初歩的な事だと思われます) [3] 環境 [3.1] OS: Windows Vista [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語:C [4] 期限:2010年6月25日16:00まで [5] その他の制限: 半年前に教養の授業として数時間C言語の授業があった程度の知識しかありません 周囲もそのような人ばかりなので深いC言語の知識が必要な問題ではないと思われます どうかよろしくお願い致します
213 名前:デフォルトの名無しさん [2010/06/25(金) 02:14:39 ] [1] 授業単元:数値計算 [2] 問題文(含コード&リンク): 以下に示す2階の定係数線形同次微分方程式につ いて,初期値y(0)=a, y’(0)=bをキーボードから入力し, t=4における値を出力するプログラムを作成する. y''(t)+2y'(t)+2y(t)=0 条件 y(0)=2 , y'(0)=-2 答え y(4)=-0.02394 [3] 環境 [3.1] OS: (Windows/Linux/等々) vista [4] 期限:6月30日まで
214 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 10:25:17 ] >>213 精度を考慮してルンゲ・クッタ法で解いた kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10746.txt
215 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 11:43:42 ] [1] 授業単元: 画像処理 [2] 問題文(含コード&リンク): 入力した2値白黒画像をハフ変換して直線および円を検出し、結果を表示するプログラムを作成せよ。 直線の式はρ= xcosθ + ysinθを、円の式はr2= (x-a)2 + (y-b)2をそれぞれ使用する。 なお、直線について処理後のρθ平面を濃淡画像として出力せよ。 円については処理後のabrパラメータ空間をGnuplotを用いて、 1点のエッジに対する軌跡(円錐)と2点以上のエッジに対する軌跡(円錐)を出力せよ。 また、円と直線両方について、3種類以上に閾値を変化させた実験結果を逆変換し、 その結果を原画像に投影した画像も出力せよ。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: [2010年06月25日23:50まで] [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 画像として出力というくだりについては、RGBそれぞれの値を 変数名[画像サイズ].r/.g/.bという要素を持つ構造体を使って格納してください。
216 名前:デフォルトの名無しさん [2010/06/25(金) 14:26:22 ] >>147 亀ですがありがとうございました!
217 名前:デフォルトの名無しさん [2010/06/25(金) 14:32:43 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク): 午前四時から正午までは Good Morning! と、 正午から午後八時までは Good Afternoon! と、 午後八時から午前四時までは Good Evening! と、表示するプログラムを書け。ただし、境界の時刻は前の時間帯に含まれるものとする [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc 3.4 [3.3] 言語:C [4] 期限:2010年6月30日23:55 [5] その他の制限: 特になし お願いします
218 名前:デフォルトの名無しさん [2010/06/25(金) 16:58:06 ] [1] 授業単元: プログラム [2] 問題文(含コード&リンク): 番号 国語 数学 英語のメンバを持っている構造体を作って各教科の平均値と、全平均値を求めてください。(人数は4人とか5人で行ってください。あと番号っていうのは、番号は、4人なら1〜4までで5人なら1〜5までです) [3] 環境 [3.1] OS: linux [3.3] 言語: C++ [4] 期限: ([2010年6月26日まで] [5] その他の制限: #include <iostream> using namespace std; struct score { で始めて、 return文で終わってください
219 名前:デフォルトの名無しさん [2010/06/25(金) 17:13:52 ] >>214 ありがとうございました^^
220 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 17:59:13 ] >>218 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10748.cpp
221 名前:218 [2010/06/25(金) 21:51:05 ] >>218 ですが忘れてました。なるべく簡単にしてください。 あと配列を使います。
222 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 01:08:39 ] >>217 #include <stdio.h> #include <time.h> int main() { time_t now = time(NULL); struct tm* local_now = localtime( &now ); const int hour = local_now->tm_hour; if ( hour>4 && hour<=12 ) printf( "Good Morning!" ); else if ( hour>12 && hour<=20 ) printf( "Good Afternoon!" ); else // ( hour>20 && hour<=4 ) printf( "Good Evening!" ); return 0; }
223 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 02:27:00 ] 【質問テンプレ】 [1] 授業単元:画像処理 [2] 問題文:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10749.txt [3] 環境 [3.1] OS: (指定なし) [3.2] コンパイラ名とバージョン: (gcc) [3.3] 言語: (C) [4] 期限: ([2010年06月28日14:50まで] ) [5] その他の制限:ヘッダファイル"bmp.h"はこちらです kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10669.txt よろしくお願いします。
224 名前: ◆C/HmxiIl0o [2010/06/26(土) 02:42:14 ] [1] 授業単元: 解析 [2] 問題文(含コード&リンク): x=1.0, 1.1,...,3.9, 4.0が与えられた時のlogxの値をラグランジュ補間で求め、 その近似値とlogxの真値をそれぞれ出力せよ。 また、求めた値と真値との誤差(絶対値)も求め、一次多項式の誤差と2次多項式の誤差を それぞれ出力せよ。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 本日(26日)中にお願いします 宜しくお願いいたします。
225 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 02:59:03 ] >>223 codepad.org/D3nsJwKm 簡単に試したけど多分こんなん。
226 名前:デフォルトの名無しさん [2010/06/26(土) 03:40:45 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): 構造体Triangleを下のように定義する。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10750.txt この構造体により一つの三角形を表現する。 Triangle構造体の構成要素は、三つの頂点のx座標、y座標をメンバとして持つ構造体Pointである。 このTriangle構造体を用いて、以下の使用に従う関数を作成し、任意の三角形の面積、その三角形を適切な2×2行列で線形変換した結果の三角形の座標とその面積、および任意の二つの三角形が合同であるかどうかを表示するプログラムを実装しなさい。 ・一つのTriangle構造体の変数を引数とし、その構造体が表す三角形の面積を返す関数。 ・一つのTriangle構造体の変数と、double型の二次元配列(2×2行列Aとする)を引数とし、引数で与えた三角形を行列Aによって線形変換した後の三角形を返す関数。 ・二つのTriangle構造体の変数を引数とし、その構造体が合同であれば1を、合同でなければ0を返す関数。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月28日まで [5] その他の制限:特にありません。よろしくお願いします。
227 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 07:07:19 ] double area(Triangle t) { return fabs((t.p2.x - t.p1.x) * (t.p3.y - t.p1.x) - (t.p2.y - t.p1.x) * (t.p3.x - t.p1.x)); } Triangle linear(Triangle t, double a[2][2]) { Triangle ret; ret.p1.x = a[0][0] * t.p1.x + a[0][1] * t.p1.y; ret.p1.y = a[1][0] * t.p1.x + a[1][1] * t.p1.y; ret.p2.x = a[0][0] * t.p2.x + a[0][1] * t.p2.y; ret.p2.y = a[1][0] * t.p2.x + a[1][1] * t.p2.y; ret.p3.x = a[0][0] * t.p3.x + a[0][1] * t.p3.y; ret.p3.y = a[1][0] * t.p3.x + a[1][1] * t.p3.y; return ret; } int isCongruence(Triangle t1, Triangle t2) { double l1[3], l2[3]; int i, j; l1[0] = (t1.p1.x - t1.p2.x) * (t1.p1.x - t1.p2.x) - (t1.p1.y - t1.p2.y) * (t1.p1.y - t1.p2.y); l1[1] = (t1.p2.x - t1.p3.x) * (t1.p2.x - t1.p3.x) - (t1.p2.y - t1.p3.y) * (t1.p2.y - t1.p3.y); l1[2] = (t1.p3.x - t1.p1.x) * (t1.p3.x - t1.p1.x) - (t1.p3.y - t1.p1.y) * (t1.p3.y - t1.p1.y); l2[0] = (t2.p1.x - t2.p2.x) * (t2.p1.x - t2.p2.x) - (t2.p1.y - t2.p2.y) * (t2.p1.y - t2.p2.y); l2[1] = (t2.p2.x - t2.p3.x) * (t2.p2.x - t2.p3.x) - (t2.p2.y - t2.p3.y) * (t2.p2.y - t2.p3.y); l2[2] = (t2.p3.x - t2.p1.x) * (t2.p3.x - t2.p1.x) - (t2.p3.y - t2.p1.y) * (t2.p3.y - t2.p1.y); for(i = 0; i < 3; i++) { for(j = 0; j < 3; j++) if(l1[i] == l2[j]) { l2[j] = 0; break;} if(j == 3) return 0;} return 1; }
228 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 11:36:43 ] ラグランジュ補間で log(x) を求める。?
229 名前: ◆C/HmxiIl0o mailto:sage [2010/06/26(土) 12:07:55 ] >>228 問題にはそう書いてありました。 log2=0.6931,log3=1.0986 1次多項式で近似 log2=0.6931,log3=1.0986,log4=1.3863 2次多項式で近似 2点(2,0.6931)(3,1.0986)を用いてlog2.5を推定する logxの1次多項式による補間では、x0=2,x1=3より、 L-zero(x)=(x-3)/(2-3) L-one(x)=(x-2)/(3-2) であるから、p1(x)=1.0986(x-2)-0.6931(x-3) p1(2.5)=1.0986(2.5-2)-0.6931(2.5-3)=0.89585 3点(2,0.6931)(3,1.0986)(4,1.3863)を用いてlog2.5を推定する logxの1次多項式による補間では、x0=2,x1=3より、 L-zero(x)=(x-3)(x-4) / (2-3)(2-4) L-one(x)=(x-2)(x-4) / (3-2)(3-4) L-two(x)=(x-2)(x-3) / (4-2)(4-3) であるから、p2(x)=0.34655(x-3)(x-4)-1.0986(x-2)(x-4)-0.6931(x-2)(x-3) p1(2.5)=0.919575 真値=0.91629 誤差を求める式は e-k(x)=f(x) - p-k(x) = (f^(k+1)(クサイ) / (k+1)!)*(x-x0)・・・(x-xk) だそうです。 宜しくお願いします。
230 名前:デフォルトの名無しさん [2010/06/26(土) 12:17:47 ] [1] 授業単元:C++プログラミング [2] 問題文(含コード&リンク):三目並べのプログラムにCPとの対戦をつけろ。 codepad.org/wfwkEbVP [3] 環境 [3.1] OS:WinodwsVista [3.2] コンパイラ名とバージョン:Visual C++ 2008 Express Edition [3.3] 言語:C++ [4] 期限:6/27(水)8時半まで [5] その他の制限:C++初心者です。インライン関数は使わない方向でお願いします。 実行結果としてはこんな感じにしてほしいです。 1Pと2Pとの交互に対戦しますか? 1Pとコンピュータとの対戦にしますか? プレイヤ同士の対戦なら1を、コンピュータとの対戦なら2を入力してください: こんな感じで選らばせて対戦できるようにしてほしいです。 ※1Pのマスは○でコンピュータのマスは×でお願いします。
231 名前:デフォルトの名無しさん [2010/06/26(土) 12:19:15 ] >>230 ミス。 6/27(月)でした
232 名前:デフォルトの名無しさん [2010/06/26(土) 12:20:03 ] >>231 日曜でした。すいませんでした。
233 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 14:54:26 ] > であるから、p2(x)=0.34655(x-3)(x-4) - 1.0986(x-2)(x-4) - 0.6931(x-2)(x-3) > p1(2.5)=0.919575 であるから、p2(x)=0.34655(x-3)(x-4) - 1.0986(x-2)(x-4) + 0.6931(x-2)(x-3) p1(2.5)=0.9105875 物理のかぎしっぽ:計算物理学:補間法:ラグランジュ補完 moondial0.net/archives/www12.plala.or.jp/ksp/computPhys/lag-hokan/index.html
234 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 15:11:16 ] [1]授業単元:システムプログラミング [2]課題:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10751.txt [3] OS:Windows Vista コンパイラ:CygWin上のgcc 言語 C [4] 7/1迄 [5] 授業は殆ど出ておらず単位を落としそうですんでよろしくお願いしまつ
235 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 21:49:42 ] >>229 ラグランジュ補間は手持ちの本「科学技術計算ハンドブック」に 掲載されているので、一次補間も二次補間も意味はわかるけど、 logxの近似をしたかったら、x=1.0から4.0まで近似したいなら、 もっと数表x[], y[]の標本が必要だよ というのは、ラグランジュ補間は極めて振動しやすいという欠点を 持っていて、その欠点を埋め合わせるには数表の取り方を工夫 しなければならない 少なくとも、[x,y]の組み合わせが多数欲しい 今1.0〜4.0の範囲で近似しようとしているのだから、xが0.0から5.0 の範囲で5点ほどは欲しい
236 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 21:58:22 ] > 今1.0〜4.0の範囲で近似しようとしているのだから、 x=2.5 のだけで。
237 名前:デフォルトの名無しさん [2010/06/26(土) 22:13:54 ] >>218 を誰か簡単にお願いします
238 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 22:31:31 ] >>224 ideone.com/6f9pM
239 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 22:39:35 ] >>229 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10752.txt 数表が与えられていないので勝手に作ったよ。 logxはx=1.0未満になるとぐっとマイナスの方へ振れてしまい 標本としてはあまり好ましくないので、x=1.0以下の部分は 標本間隔を詰めた。
240 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 22:40:49 ] あ、ごめん>>236 が見えてなかった。 >>239 の取り扱いは好きなようにしてください。
241 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 22:48:41 ] >>237 >>218 codepad.org/3jK2ScYK 簡単というのがSTLを使いまくることだったらすまない。
242 名前: ◆C/HmxiIl0o mailto:sage [2010/06/26(土) 23:51:34 ] >>239 ありがとうございます。>>236 は偽者です。 問題文には数表は全く書かれていなかったのですが、授業で使うスライドを見ていったところ、 1枚だけ、端っこの方に小さくy=f(x)= 1/(1+25*x^2)と書かれていました。 宜しくお願いします。
243 名前:デフォルトの名無しさん mailto:sage [2010/06/26(土) 23:55:23 ] よろしく
244 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 00:37:41 ] >>242 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10753.txt うーん標本の取り方がいまいちかな・・・ 一次補間が振動しちゃってます 適当に数表をいじって誤差が少なくなるようにトライしてみてください
245 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 00:47:15 ] 数値計算理論の問題でC/C++のコーディング技術の問題じゃなさそう
246 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 03:08:48 ] [1] 授業単元:計算機とアルゴリズム [2] 問題文(含コード&リンク):数列と漸化式を表示できるように9行目からお願いします。kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10754.txt [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン: [3.3] 言語:C [4] 期限: 2010年6月28日 [5] その他の制限:whileを使うと思います。 お願いします。
247 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 08:46:12 ] >>246 #include <stdio.h> main() { int n, m, an, sum; m = 5; printf("数列 an = n*n とその和を %d 項目まで表示します\n", m); n = 1; sum = 0; while (n <= m) { an = n * n; sum += an; printf("a[%d] = %d, sum = %d\n", n, an, sum); n++; } }
248 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 08:50:58 ] >>246 #include <stdio.h> main() { int n, m, an; m = 5; printf("漸化式 a(n) = 2*a(n-1), a1 = 2 で生成される数列を %d 項目まで表示します\n", m); n = 1; an = 2; while (n <= m) { if (n == 1) { printf("a[%d] = %d\n", n, an); n++; continue; } an = 2 * an; printf("a[%d] = %d\n", n, an); n++; } }
249 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 10:35:20 ] >>224 ideone.com/vVi7u 期限すぎてるけど、いいどらえもんがかけた。
250 名前: ◆QZaw55cn4c mailto:sage [2010/06/27(日) 16:20:11 ] >>210 codepad.org/2uVp97hy 100! まで確認しています。#define で指定している定数を増加させれば、もっと大きな数値にも対応できるかもしれません。
251 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 16:39:40 ] 【質問テンプレ】 [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク): 入力した2つの整数の間 (入力した数も範囲に含める) にある 「2の倍数でない」かつ「3の倍数でない」かつ「5の倍数でない」 の条件を満たす整数を順に表示し,最後にその個数を表示するプログラムを作成せよ [3] 環境 [3.1] OS:VineLinux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 2010年7月4日 [5] その他の制限:なお,整数の入力には get_int() を用いること。 # define BUFFER_SIZE (256)//get_int()です int get_int(void) { char buf[BUFFER_SIZE]; fgets(buf, BUFFER_SIZE, stdin); return atoi(buf); } よろしくおねがいします
252 名前: ◆QZaw55cn4c mailto:sage [2010/06/27(日) 16:46:14 ] >>251 codepad.org/kofHJzGi
253 名前:251 mailto:sage [2010/06/27(日) 17:12:01 ] >>252 迅速な回答本当にありがとうございます
254 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 20:04:24 ] [1] 授業単元:情報処理学 [2] 問題文(含コード&リンク): do-while文を用いて、キーボードから入力された値が素数であるかどうかを 判別するプログラムを作成せよ。入力された値が素数の場合は"素数"と出力し、 素数でない場合は最小の因数を出力せよ。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:すいませんがわからないです。 [3.3] 言語:C [4] 期限:2010年6月30日まで
255 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 20:17:03 ] 1] 授業単元:情報処理学 [2] 問題文(含コード&リンク): 1次元配列に34 57 45 21 89 63 39 48 78 68 76 84 92 53 62 のデータをセットして、 これらの平均値を求めよ。さらにint eval[3]という1次元配列を用意して eval[0]には0〜60の数の個数 eval[1]には61〜80の数の個数 eval[2]には81〜100の数の個数 を格納するようにし、それらを出力するプログラムを作成せよ。(配列、for文、if文を使って) [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月30日まで
256 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 20:30:25 ] >>254 #include <stdio.h> int main(){ int i,n,f; printf("> "); scanf("%d",&n); f=1; i=1; do{ ++i; if(n%i==0){ f=0; break; } }while(i*i<=n); if(f)printf("素数\n"); if(!f)printf("%d\n",i); }
257 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 20:33:36 ] >>255 #include <stdio.h> int main(void) { int array[] = {34, 57, 45, 21, 89, 63, 39, 48, 78, 68, 76, 84, 92, 53, 62}, eval[3] = {0}, i; double ave; for(i = 0, ave = 0.0; i <sizeof array / sizeof *array; i++) { ave += array[i]; if(array[i] < 0) continue; else if(array[i] <= 60) eval[0]++; else if(array[i] <= 80) eval[1]++; else if(array[i] <= 100) eval[2]++; } printf("平均値:%f\n", ave / (sizeof array/ sizeof *array)); printf("0〜60の数の個数:%d\n", eval[0]); printf("61〜80の数の個数:%d\n", eval[1]); printf("81〜100の数の個数:%d\n", eval[2]); return 0; }
258 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 21:44:01 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 次のように表示するプログラムを作りなさい。 私の学籍番号は0000000Aです。 氏名は aaaaa aaaaaaaaです。 ↑半角スペース [3] 環境 [3.1] OS:Windows XP [3.2] コンパイラ名とバージョン:C++ [3.3] 言語: C言語 [4] 期限: 6月28日午前0時 [5] その他の制限: char型の配列no name を使う。 noに学籍番号、nameに氏名を格納し表示に使う。 自分の学籍番号、氏名はchar型の配列、no nameを初期化して配列に格納する。
259 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 21:52:25 ] #include <stdio.h> int main(void) { char no[] = "0000000A", name[] = "aaaaa aaaaaaaa"; printf("私の学籍番号は%sです。\n", no); printf("氏名は %sです。\n", name); return 0; }
260 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 22:23:44 ] >>256 ありがとうございます。
261 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 22:35:45 ] >>257 ありがとうございます。
262 名前:デフォルトの名無しさん [2010/06/27(日) 22:45:00 ] >>241 >>241 で書いてもらったみたいな感じです。ありがとうございました
263 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 23:22:42 ] a
264 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 23:25:25 ] >>259 本当に助かります(涙)ありがとうございます!!!!
265 名前:デフォルトの名無しさん mailto:sage [2010/06/27(日) 23:45:11 ] >>264 いえいえ
266 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 00:33:27 ] お礼を言われると返って心苦しくなるなw
267 名前:デフォルトの名無しさん [2010/06/28(月) 00:41:58 ] >>241 忘れてました 全部の平均ってどういう意味なんですかね?これがいまいちわからないです
268 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 00:47:00 ] >>267 例えば、 英数国合計の平均=(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点)/3
269 名前:268 mailto:sage [2010/06/28(月) 00:56:58 ] これのほうがまだわかるかな (Eavg) +(Mavg) +(Javg) =(Aさんの英語の点+Bさんの英語の点+Cさんの英語の点+Dさんの英語の点) +(Aさんの数学の点+Bさんの数学の点+Cさんの数学の+Dさんの数学の点点) +(Aさんの国語の点+Bさんの国語の点+Cさんの国語の点+Dさんの国語の点) =(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点+Dさんの英数国合計点)/4 =英数国合計の平均
270 名前:みすった mailto:sage [2010/06/28(月) 00:58:13 ] (Eavg) +(Mavg) +(Javg) =(Aさんの英語の点+Bさんの英語の点+Cさんの英語の点+Dさんの英語の点) +(Aさんの数学の点+Bさんの数学の点+Cさんの数学の+Dさんの数学の点点) +(Aさんの国語の点+Bさんの国語の点+Cさんの国語の点+Dさんの国語の点) =(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点+Dさんの英数国合計点) これを人数分で割ると (Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点+Dさんの英数国合計点)/4 =英数国合計の平均
271 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 01:15:43 ] すみっこつつきで申し訳ないけど、変数名がavgなのがちょっと変かもね。 質問者がそれで理解できてるようだからいいけれど。
272 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 06:33:29 ] >>271 うざいです(>_<)
273 名前:デフォルトの名無しさん [2010/06/28(月) 07:26:32 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): 社員の情報を管理するプログラムを作りたい。 そこで、以下の例のような構造体Employeeを考える。 以下の構造体Employeeの例は、社員の名前を保存するchar型の配列変数name、年齢を保存するint型の変数age、年譜を保存するint型の変数salaryを有している。 名前は、アルファベットで記述することとし、この構造体では名字だけを管理することとする。(ただし、この構造体のメンバは変更してもかまわない。) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10756.txt このような構造体を用いて、下の実行例のような社員データベースを処理するプログラムを実装しなさい。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10757.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月29日まで [5] その他の制限:特にありません。よろしくお願いいたします。
274 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 10:31:05 ] 1] 授業単元: プログラム入門 [2] 問題文(含コード&リンク): 2つの自然数 n と m を入力し、その積 n×m を たし算のみで計算するプログラムを作成せよ。 [3] 環境 [3.1] OS: Windows [3.2] borland c++ compiler 5.5 [3.3] 言語: C [4] 期限: 2010年06月28日14:30まで [5] その他の制限: 特になし よろしくお願いします
275 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 10:36:05 ] #include <stdio.h> int main(void) { int n, m, ans; scanf("%d%d", &n, &m); printf("%d * %d = ", n, m); for(ans = 0; m; m--) ans += n; printf("%d\n", ans); return 0; }
276 名前:246 mailto:sage [2010/06/28(月) 11:02:07 ] >>247 >>248 ありがとうございます。 助かりました。
277 名前:274 mailto:sage [2010/06/28(月) 12:02:00 ] >>275 ループ変数使用して、printf 文をまとめた方がよくないですか?
278 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 14:05:40 ] [1] 授業単元: C言語プログラミング入門 [2] 問題文:関数の再帰的呼び出しによりAckermann(アッカーマン)関数を計算するプログラムを作れ。同じプログラムを繰り返し処理(ループ計算)により実現できるか考えよ。Ackermann関数は次式で定義される。 [3] 環境 [3.1] OS: Mac OS [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 2010年6月30日 [5] その他の制限: 特にはないです。 よろしくお願いします。
279 名前:278 mailto:sage [2010/06/28(月) 14:07:58 ] Ackermann関数は次式で定義される。の次式を書き忘れてましたすいません。 n+1 m=0 and n>_0 ack(m,n)= ack(m-1,1) m>0 and n=0 ack(m-1,ack(m,n-1)) m>0 and n>0
280 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 14:19:21 ] >>277 足し算で #include <stdio.h> int main(void) { int a,b,c; scanf("%d %d",&a,&b); if (a<b){c=a;a=b;b=c;}c=0;b=-(b); while (b++)printf(b?"%d + ":"%d = %d\n",a,c+=a); return 0; }
281 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 14:20:10 ] >>274 #include <stdio.h> int main(void) { int i, n, m, ans; printf("input:"); scanf("%d", &n); printf("input:"); scanf("%d", &m); if(n<0 || m<0) { printf("error"); return 1; } ans = 0; if(n < m){ for(i=n; i > 0; --i) ans += m; }else{ for(i=m; i > 0; --i) ans += n; } printf("\nans:%d * %d = %d", n, m, ans); return 0; }
282 名前:224 ◆C/HmxiIl0o mailto:sage [2010/06/28(月) 16:02:40 ] >>224 について、教えていただいたプログラムで提出したのですが、 logxの真値と補間で求めた値の誤差を比較していないとのことで受理されませんでした。 >>249 さんのような結果を出さないといけないようなのですが、c++だったので、 Cに作り直そうとしたのですが、うまくできませんでした。 大変申し訳ないのですが、Cで作り直していただけないでしょうか? 宜しくお願い致します。
283 名前: ◆/91kCCQXBo mailto:sage [2010/06/28(月) 16:05:01 ] いいよCで作り直して。 >>280 文章よめ
284 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 16:16:58 ] >>282 ideone.com/Kc5i7
285 名前:224 ◆C/HmxiIl0o mailto:sage [2010/06/28(月) 16:26:08 ] >>284 ありがとうございました。
286 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 17:36:30 ] [1] プログラミング1 [2] 現在のインターネットを実現しているTCP/IP通信プロトコルでは主にIPv4 を用いており、コンピュータを一意に識別するために32ビットのIPアドレスを 用いている。これを踏まえ、IPアドレスの4つの数字を入力させ、これらを32ビットの データ型であるunsigned int型の変数にIPアドレスを示す2進数の数値として保存せよ。 保存したIPアドレスがunsigned intの整数値として解釈するといくつとなるか表示する プログラムを作成せよ。 [3] 環境 [3.1] OS Linux [3.2] gcc [3.3] 言語 C言語 [4] 期限:2010年6月30日19:00まで [5] 特に制限はありませんが、while文は習っていません。 if文、for文、配列など基本的なものを習いました。 どうぞよろしくお願いします。
287 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 18:07:05 ] >>286 int main(int argc, char* argv[]) { int i; unsigned int val; unsigned int addr = 0; for (i = 0; i < 4; i++) { printf("%d:", i + 1); addr <<= 8; scanf("%d", &val); addr |= val; } printf("addr=%u\n", addr); return 0; }
288 名前:デフォルトの名無しさん [2010/06/28(月) 18:24:56 ] [1] 応用プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10758.txt [3] 環境 [3.1] OS: WindowsXP [3.2] コンパイラ名とバージョン:Microsoft Visualstadio 2008 [3.3] 言語:C [4] 期限:30日まで [5] その他の制限:プログラミング経験はほとんどないです。 構造体の授業での宿題です。 構造体はまだわかるのですがそれに苦手なポインタが加わるとどうにもわかりません。 宜しくお願いします。
289 名前: ◆QZaw55cn4c mailto:sage [2010/06/28(月) 18:35:59 ] >>278 codepad.org/P5qj1UBe
290 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 18:40:17 ] >>287 ありがとうございました!
291 名前: ◆QZaw55cn4c mailto:sage [2010/06/28(月) 18:46:34 ] >>288 codepad.org/boZTLkkn
292 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 18:49:03 ] >>288 codepad.org/XnGsYKmG
293 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 18:59:13 ] >>292 > scanf("%s",p[i].name); buffer overrun...
294 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:07:57 ] 元がそうなってんだからそっちに文句つけろよw
295 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:15:50 ] >>294 氏ねといわれたら氏ぬんですね、よくわかります。
296 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:19:18 ] 長すぎる文字列入れたら正しく動作しないのは>>291 もかわらないしw
297 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:36:54 ] >>295 原要求を無視したらテンプレの意味が(ry
298 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 19:50:14 ] >>291 = >>293 か?
299 名前: ◆QZaw55cn4c mailto:sage [2010/06/28(月) 20:05:36 ] >>296 たしかにうまく処理できませんね。標準で入力バッファをクリアする方法はなんでしょうかね。 >>298 違います。
300 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 20:46:00 ] [1] 授業単元:情報処理学 [2] 問題文(含コード&リンク): 例1は、3教科5人の生徒の合計得点を求めるプログラムである。 これを実行し、動作を説明せよ。さらに、教科毎の平均点、 生徒毎の平均点を計算して表示できるようにプログラムを修正し、 結果とともに示せ。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年6月30日 よろしくお願いします。
301 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 20:47:24 ] >>300 の例1 例1 #include<stdio.h> #define KAMOKU 3 #define SEITO 5 int main() { int ten[][KAMOKU]={{ 80, 65, 70}, { 70, 55, 75}, { 75, 80, 70}, { 80, 60, 60}, { 90, 80, 75}}; int j,k,s; printf(“ kokugo sugaku eigo gokei\n”); printf(“------------------------------------------------\n”); for (j=0;j<SEITO;j++) { s=0; for (k=0;k<KAMOKU;k++) { printf(“%8d”,ten[j][k]); s=s+ten[j][k]; } printf(“%8d\n”,s); } return 0; }
302 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 21:18:08 ] >>300 > これを実行し、動作を説明せよ。 codepad.org/EfWyhSTD > 教科毎の平均点、生徒毎の平均点を計算して表示できるようにプログラムを修正し、 結果とともに示せ。 codepad.org/9EYyajom
303 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 21:29:23 ] [1] 授業単元:プログラミング演習 [2]問題文:長いので次のレスに書かせていただきます [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名:gcc [3.3] 言語:C [4] 期限:2010年6月29日17:00まで [5] その他の制限:特に制限はありませんが、なるべく簡単な文法で書いていただけるとありがたいです
304 名前:303 mailto:sage [2010/06/28(月) 21:31:23 ] 次レスにまとめても規制されてしまったので・・・・ [2] 問題文:[1],[2]のプログラムを作成せよ。 [1]多項式の次数nと係数a,(i=0,1・・・・,n)を入力し、 その多項式f(x)=a_nx^2+a_n-1x^n-1+・・・+a_2x^2+a_1x+a_0と その微分の多項式f'(x)を出力するプログラムを作成せよ。 ただし、nはint型,a_iはdouble型の配列とせよ。n<100と仮定してよい。 以下に入力例を示す n=5 a5=1 a4=0 a3=2 a2=0 a1=3 a0=0 f(x)=x^5+2x^3+3x f'(x)=5x^4+6x^2+3
305 名前:303 mailto:sage [2010/06/28(月) 21:32:41 ] 続きです [2]以下の要領で、平均点、分散、標準偏差、最小値、最大値を求めるプログラム を作成せよ。 (1)100人分の点数(int型)を記憶するための配列変数aを定義する (2)人数(int型)を記憶するための変数nを定義する。 (3)人数nの初期値を0とする (4)点数をa[n]に入力する (5)点数が負の数ならば終了する (6)人数nを1つ増やす (7)全員の点数を空白で区切って表示する。例:83 52 64 (8)平均点を出力する (9)分散を出力する (10)標準偏差を出力する (11)最小値を出力する (12)最大値を出力する (13)(4)へ戻る ※標準ライブラリのsqrt関数を使わずニュートン法によって平方根を 求める自作の関数を使え。 ※平均点、分散、標準偏差を求めるとき、キャスト演算子を用いてdouble型へ 型変換せよ。 多いですがどうぞよろしくお願いします
306 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 21:38:30 ] >>210 やっと規制が解けた。 3000!の桁数=9131なので、#define文を変えればもう少しいけるはず。 codepad.org/6S9o89xk
307 名前:デフォルトの名無しさん [2010/06/28(月) 21:56:52 ] >>273 もどなたかお願いいたしますm(_ _)m
308 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 22:29:23 ] >>304 #include <stdio.h> int main(void) { int n, i; double a_i[100], a; printf("n="); scanf("%d", &n); for (i = n; i >= 0; i--) { printf("a%d=", i); scanf("%lf", &a); a_i[i] = a; } printf("f(x)="); for (i = n; i >= 0; i--) if (a_i[i]) printf(a_i[i] > 0 ? " +%lgx^%d" : " %lgx^%d", a_i[i], i); printf("\n"); for (i = 0; i < n; i++) a_i[i] = a_i[i + 1] * (i + 1); a_i[n] = 0; printf("f'(x)="); for (i = n; i >= 0; i--) if (a_i[i]) printf(a_i[i] > 0 ? " +%lgx^%d" : " %lgx^%d", a_i[i], i); printf("\n"); return 0; }
309 名前:デフォルトの名無しさん [2010/06/28(月) 22:44:17 ] [1] 授業単元:C++プログラミング [2] 問題文(含コード&リンク):○×ゲームのプログラムにコンピュータとの対戦をつける。 コンピュータと対戦するかしないかは選べれるようにする事。 codepad.org/wfwkEbVP [3] 環境 [3.1] OS:WinodwsVista [3.2] コンパイラ名とバージョン:Visual C++ 2008 Express Edition [3.3] 言語:C++ [4] 期限:6/29(火)AM9時まで [5] その他の制限:C++触り始めたばかりです。インライン関数は使わない方向でお願いします。 実行結果としてはこんな感じにしてほしいです。 1Pと2Pとの交互に対戦しますか? 1Pとコンピュータとの対戦にしますか? プレイヤ同士の対戦なら1を、コンピュータとの対戦なら2を入力してください: こんな感じで選らばせて対戦できるようにしてほしいです。 ※1Pのマスは○でコンピュータのマスは×でお願いします。 大変だと思いますがどうかお願いします。
310 名前:デフォルトの名無しさん mailto:sage [2010/06/28(月) 22:46:03 ] 礼も言わないヤツか
311 名前:デフォルトの名無しさん [2010/06/28(月) 22:57:23 ] >>310 あの時は本当にありがとうございました。 本当に申し訳ありません。
312 名前:デフォルトの名無しさん [2010/06/28(月) 23:57:38 ] >>258 おい!同じ大学だw >>259 助かりました ありがとうございます。
313 名前:303 mailto:sage [2010/06/29(火) 00:11:24 ] >>308 ありがとうございます。 どなたか>>305 に書いてある[2]の方もよろしくお願いします
314 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 00:15:38 ] >>273 codepad.org/IKYypUgq とりあえずここまで。 昇級については仕様を推測できなかった。 他の機能については適当に推測した。 リファクタリングし甲斐があると思うから,がんがれ。
315 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 01:09:05 ] >>312 char型ならまとめ方一緒だったの? 俺的には全然違ったw
316 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 02:14:34 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10760.txt [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月1日 よろしくお願い致します。
317 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 04:05:10 ] [1] 授業単元:プログラミング言語 [2] # リストに格納したデータを,データファイルとは 別のファイル(出力先ファイルとよぶ)に書き出す. データファイルと出力先ファイルのファイル名は コマンドライン引数として指定する 下記テンプレートを使用すること codepad.org/d9CUmfae [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月2日 お願います
318 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 04:13:02 ] 言い忘れてました >>310 以外の方にお願いします
319 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 04:59:18 ] windows+gccな人って具体的にどういう環境なんだろ。
320 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 05:05:35 ] CygwinかMinGWだろ
321 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 05:22:04 ] そういう予想じゃなくてさ。 出題者がちゃんと理解してるのかどうかを知りたいという意味合いも含んでた。 実はteratermでredhatにつないでました、とかありえない話じゃないと思うのよ。
322 名前:デフォルトの名無しさん [2010/06/29(火) 09:22:02 ] >>316 #include <stdio.h> #define NN 3 #define loop(i,NN) for (i = 0; i < NN; i++) int main(void) { int i, j, seq[3], n; char s[NN][100]; loop(i, NN) { printf("入力文字列[%d]=", i); scanf("%s", s[i]); } printf("繋ぎ合わせる順番を入力してください\n"); loop(i, NN) { scanf("%d", &n); seq[i] = n; } printf("結果 -> "); loop(i, NN) { loop(j, NN) { if (seq[j] == i + 1) printf("%s", s[j]); } } return 0; }
323 名前:デフォルトの名無しさん [2010/06/29(火) 10:06:01 ] >>316 の2番目 #include <stdio.h> #include <string.h> #define NN 100 #define loop(i,NN) for (i = 0; i < NN; i++) int main(void) { int i = 0, linemax = 0, cnt = 0; char s[NN][100], *p, str[] = "abc"; while (fgets(s[i++], 100, stdin) != NULL) linemax++; loop(i, linemax) { for (p = s[i]; *p; p++) { if (!strncmp(p, str, 3)) cnt++; } } printf("#%s is %d\n", str, cnt); return 0; }
324 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 11:49:06 ] >>322-323 さん 助かりました。ありがとうございました。
325 名前:デフォルトの名無しさん [2010/06/29(火) 12:48:44 ] 画像上のある点からy=ax^2の2次曲線を赤線で描画しなさい(画像 320×240) (x,y)=(160,120) a=1/3のとき a=1/2のとき a=1のとき a=2のとき 描画範囲 yの範囲は40 xの範囲は60
326 名前:224 ◆C/HmxiIl0o mailto:sage [2010/06/29(火) 14:19:04 ] >>283 すみません。折角作っていただいたのですが、データが>>242 の通り、 x=1.0〜4.0,y=1/(1*25*x*x)でそれぞれ31個づつあります。 何度もお願いするのも申し訳ないと思い自分で拡張を試みたのですが、 Interpolationの部分が出来ませんでした。 startが最大で31まで増えるため、そのまま入れてもオーバーフローしてしまい、 かといって、iやjを消してdata[0][start]のような記述をするとnanになってしまいます。 何度も申し訳ないのですが、forの部分だけで構いませんので、作っていただけないでしょうか?
327 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 14:30:53 ] >>325 こっちにも投げたか
328 名前:278 mailto:sage [2010/06/29(火) 15:09:56 ] >>289 ありがとうございます。
329 名前:デフォルトの名無しさん [2010/06/29(火) 15:11:29 ] >>305 codepad.org/LiIrNdPK
330 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 15:17:38 ] >>324 >>328 はい
331 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 17:26:05 ] [1] 授業単元:一般情報処理 [2] 問題文(含コード&リンク):次のような動作をするプログラムを作成せよ。 配列内のデータの最小値を返す。int min() 配列内のデータの最大値を返す。int max() 配列内のデータの平均値を返す。double mean() 配列内のデータの標準偏差を返す。double stdev() ただしmain関数は次のものを使うこと。 int main(void){ int a[15]={81,36,45,67,73,98,62,56,77,61,65,70,25,51,18}; printf("min=%d\n",min(15,a)); printf("max=%d\n",max(15,a)); printf("average=%lf\n",mean(15,a)); printf("standard deviation=%lf\n",stdev(15,a)); return 0; } さらに、配列a[]の各要素の偏差値を表示するプログラムを作成せよ [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名:gcc [3.3] 言語:C [4] 期限:[2010年06月30日18:30まで] [5] 文章中の示された関数・main関数を使ってください よろしくお願いしますm(_ _)m
332 名前:デフォルトの名無しさん [2010/06/29(火) 18:18:32 ] >>226 です。 >>227 を作って頂いたのですが、main関数の部分も含め、プログラム全体を作って頂きたいです。
333 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 18:34:36 ] >>331 codepad.org/hXydfZTX
334 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 18:53:33 ] [1] 授業単元:画像処理 [2] 問題文(含コード&リンク):16×16サイズの白黒ビットマップ画像を読み込んで、 上下反転させた画像をビットマップで保存するプログラムを作成。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: [無期限] [5] その他の制限: ビットマップのファイル構造は少し勉強しました。 画像のデータを取り込むところと処理を行う部分がよくわかりません。 RGB値、malloc、Loadbmp等わかりやすく載ってるHPや本があれば教えてください。 よろしくお願いします。 試しに書いてみた上下反転プログラム → codepad.org/4iL9agVw 反転させたい画像を作ったプログラム → codepad.org/8z8MCdZG
335 名前:デフォルトの名無しさん [2010/06/29(火) 21:00:18 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク):ファイルに保存された会員情報を指定された項目をキーとしてソートするプログラムを作成する. 出力形式は,入力データと同じ,つまり1行に1人分のデータを格納し,各項目間はカンマで区切るものとする. また,ソート済みのデータはファイルではなく標準出力に出力するものとする. 整数型のデータについては数値として,文字列型のデータについては大文字/小文字を区別せずにソートをすること. ソートアルゴリズムはこれまでの演習で使用したもの,していないものに関わらず,何を用いてもよい. また,会員数は最大で20,000人と仮定してもよい. 会員情報の入ったファイルのファイル名,キーとなる項目,正順か逆順かの指定はプログラム実行時の引数として与える.第一引数が会員情報の入ったファイル名,第二引数が項目番号(表1参照),第三引数がソート方法(0なら昇順,1なら降順)とする. 表1: データ型 項目名 項目番号 型 会員ID 1 整数(int) 姓 2 文字列(最大で50文字) 名 3 文字列(最大で50文字) 年齢 4 整数(int) 州 5 文字列(最大で50文字) 郡 6 文字列(最大で50文字) [3] 環境 [3.1] OS: UNIX [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 2010年6月30日20:00まで [5] その他の制限: 特になし よろしくお願いします。
336 名前:デフォルトの名無しさん [2010/06/29(火) 21:25:33 ] >>291 >>292 ありがとうございました。 返事送れて申し訳ありません。 書き込んでから20分とはおどろきました
337 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 21:44:13 ] >>302 ありがとうございます!
338 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 21:46:47 ] >>317 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10762.txt
339 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 22:55:19 ] >>335 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10763.txt
340 名前:デフォルトの名無しさん mailto:sage [2010/06/29(火) 23:39:54 ] [1] 授業単元: プログラミング開発基礎 [2] 問題文 複数ありますのでこちらで kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10764.txt [3] 環境 [3.1] OS:(Windows [3.2] VC 6.0 [3.3] 言語:C [4] 期限:なし [5] 制限:なし 問題数が多くて恐縮なのですがなにとぞよろしくお願いします
341 名前:デフォルトの名無しさん [2010/06/29(火) 23:56:51 ] >>339 ありがとうございます!
342 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 00:18:49 ] >>340 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10766.txt
343 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 00:29:31 ] >>326 テンプレ嫁
344 名前:デフォルトの名無しさん [2010/06/30(水) 01:09:50 ] >>335 ピキーーーン・・・麻呂のク(ry
345 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 02:44:25 ] >>342 ありがとうございますこれでどうどうと学校にいけます
346 名前:331 mailto:sage [2010/06/30(水) 08:20:03 ] >>333 ありがとうございます。 ただ、コンパイルしてみたところ /tmp/ccSDhYV6.o: In function `stdev': test.c:(.text+0x18a): undefined reference to `sqrt' collect2: ld returned 1 exit status このようにエラーがでてしまうのですがどうすればコンパイルできるでしょうか?
347 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 09:03:08 ] -lm
348 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 10:48:45 ] >>346 次回からは、undefined reference to `sqrt' でGoogle検索するとかして、自分で調べてくれ。 対策は、コンパイル時に -lm オプションを付ける。 例:gcc -lm test.c
349 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 11:11:24 ] >>346 もう一度言うぞ。 対策は、コンパイル時に -lm オプションを付ける。 わかったな。
350 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 12:19:22 ] こういうときどういう反応したらいいのだろうか とりあえず、笑えばいいのかな
351 名前:デフォルトの名無しさん [2010/06/30(水) 14:36:15 ] >>350 最近、IDなしのスレに粘着してるなりすましのかまってちゃんが居るから、本人とは限らない。 「俺が348だ、349は偽物だ」と言っても確認出来ないからね。 という訳で、不快に思ったらスルーが一番。
352 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 16:17:43 ] そうすることにするよ
353 名前:335 [2010/06/30(水) 16:32:15 ] 何度もすみません。 せっかく解いていただいたのですが、「昇順か降順でしかソートできない」として、もう一度お願い致します。
354 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 18:16:33 ] >>325 >>1 環境によってはとけるかもしれません。(最近apiを勉強しているところでして) テンプレートを書くときには条件をもっと詳しく書いてください。 ・描画範囲の意味がよくわかりません。±40, ±60 ということですか? ・y = ax^2 を平行移動したものを描画すればいいのでしょうか? ・(x, y) = (160, 120) というのは頂点なんですか? 以上よろしくお願いいたします。
355 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 18:33:45 ] >>354 mixiに似たような質問あったけど(既に削除済み) 背景が真黒のbmpに白で線を書き込みたいようだよ。
356 名前:346 mailto:sage [2010/06/30(水) 18:48:06 ] 本当にすみませんでした; 回答してくださった方、ありがとうございます 無事にコンパイルできました
357 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 19:55:42 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10767.txt [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:Visua lstadio [3.3] 言語:C [4] 期限:2010年7月1日 よろしくお願いします
358 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 20:27:38 ] >>357 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10769.txt
359 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 20:56:55 ] >>358 すいません、こちらの環境(Microsoft Visual Studio 2008)ではエラーが2つ出て動きませんでした。
360 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:12:49 ] >>353 もともと昇順か降順かしかないんじゃ? コードもascとdescしかないように見えるし。 どこが気に入らないのか具体的に
361 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:13:19 ] >358, 359 確保したら開放ぐらいきちんと書けとも思ったがまぁいいや C言語としてコンパイルすればエラーはでない VS2008のclは使ったことないので、どんなスイッチ指定すればいいか知らないが、原因はC++ではvoid *から他のポインタへの暗黙の型変換がされないから C++のソースコードとしてコンパイルしたければ、malloc()の戻り値を適当にキャストすれば良い
362 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:13:32 ] >>359 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10770.txt これでどうですか? VisualStudio使ったことないもので、すいません。
363 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:13:53 ] >>359 エラーの内容はなんとなく予想できるけど、コンパイルの仕方が悪い。 具体的には/Tcスイッチをつけるといいと思う
364 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:21:01 ] >>358 >>361 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10771.txt
365 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 21:36:58 ] >>364 49行目、と思わんでもないけど別にいいや、としたいところだけど 学生はしっかりやっておいた方がいいのかもな、とも。。。
366 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 22:05:33 ] [1] 授業単元:Cプログラミング演習 [2] 問題文(含コード&リンク): 登録番号 (int no) と名前 (char *name) と年齢 (int age) を含む構造体 person 型のポインタ変数を宣言し、登録人数分だけの動的メモリ確保をせよ。そして、データをファイルから入力せよ。 ファイルの形式は、先頭に登録する人物とし、そのあとに人数分のデータを登録番号、名前、年齢の順に書いていく(下の例を参照。登録番号は入力順に1,2,3,4,5,・・・とする。そして、入力した全員データを表示せよ。) (ファイルの例) 3 1 田中 20 2 大田 40 3 井上 35 [3] 環境 [3.1] OS:Windows Vista [3.2] コンパイラ名とバージョン:Visual Studio 2008 [3.3] 言語:C [4] 期限:2010年7月2日まで [5] その他の制限:無し よろしくお願いします
367 名前:デフォルトの名無しさん mailto:sage [2010/06/30(水) 22:42:19 ] >>366 >>357 といっしょ
368 名前: ◆QZaw55cn4c mailto:sage [2010/06/30(水) 23:23:11 ] >>344 fgetc() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。 どうですか?成長しましたか?
369 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 01:48:52 ] >>338 ありがとうございます
370 名前:デフォルトの名無しさん [2010/07/01(木) 06:24:44 ] >>368 麻呂じゃないが、勘違いしたのはお前だろ?しつこいぞw 麻呂の偽者との区別もつかず、いつまでも相手が勘違いしたと思い込んでろ。 自分が勘違いしてた癖にw 資料をきちっと読めよ、青二才。 あと、お前の言っている事は本当に意味不明。
371 名前:デフォルトの名無しさん [2010/07/01(木) 06:25:39 ] >>368 そ・れ・か・ら、getchar() と EOF について理解できましたか? どうですか?成長しましたか?
372 名前:デフォルトの名無しさん [2010/07/01(木) 06:28:28 ] >>368 ttp://www.bohyoh.com/CandCPP/C/Library/getchar.html > int getchar(void); getchar() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。 どうですか?成長しましたか?
373 名前:デフォルトの名無しさん [2010/07/01(木) 06:32:27 ] >>368 EOF がマクロで定義されているであることを、そろそろ理解していただきたいのですが。 どうですか?成長しましたか?
374 名前:デフォルトの名無しさん [2010/07/01(木) 06:39:34 ] >>368 あぁ、あなた、結局ここで質問された課題に答えられず麻呂に負けたヘタレですか?w いつまでも根に持つ陰険。お前の人生はクソだなw 一生こんなスレでネット弁慶をやってろ。お前が見ず知らずの人間に偉そうな態度で 上から目線で優越感を感じられるのは、せいぜいこのスレだけなんだろ?実に寂しい人生だ。 【話題】2ちゃんねる・ネット弁慶には困ったものだ 自らが叩きやすそうな対象を見つけたとたん、ムキになっ tsushima.2ch.net/test/read.cgi/newsplus/1277889771/ ↑まさにお前のことだなw それも自分の勘違いだと気づかずに、揚げ足取りをしたつもりのバカ
375 名前:デフォルトの名無しさん [2010/07/01(木) 06:41:27 ] >>368 戻り値がどうしたって?リストの課題で麻呂のクソースは付き物。 しかし、今回は提示される事はなかった。それが何を意味しているか分かるか? 麻呂はもう居ないってことだ。俺は何となく麻呂のクソースが出るか扇動してみたが 出なかったしw
376 名前:デフォルトの名無しさん [2010/07/01(木) 06:42:01 ] >>368 お前のおつむは成長していないようだなw 精神レベルもw
377 名前:デフォルトの名無しさん [2010/07/01(木) 06:45:23 ] >>368 そろそろお前が痛いって気づけよ
378 名前:デフォルトの名無しさん [2010/07/01(木) 06:46:19 ] >>368 悔しかったらお前オリジナルのリストのソースを書いて公表しろよ 他人のパクリしか出来ないコピーキャット
379 名前:デフォルトの名無しさん [2010/07/01(木) 06:48:06 ] >>368 ん〜〜、みっともない。このスレに何しに来てんの?分かりきった答えの問題を 解き続けるだけがお前の人生?このスレから離れて自分の人生を見つめ直したら? どうせいつかは死ぬ限り有る時間を生きている人生だぞ? こんな場所で揉めるのに使った時間も、過去のものとなるがそれが未来に役に立つ 有意義な時間になるとは思えないね。
380 名前:デフォルトの名無しさん [2010/07/01(木) 06:50:01 ] >>368 戻り値が重要ではないとは言わないが、いきなりそんなことを書くお前は何者だ? 麻呂がいつそんなことを言ったか、ログを参照してくれ。それが麻呂だという証拠も付けてな。 こんなIDも出ない、本人がトリップを使ってない騙りが可能な場所で、見えない敵と 戦い続ける恥ずかしい戦士めw
381 名前:デフォルトの名無しさん [2010/07/01(木) 06:56:00 ] >>368 > そろそろ理解していただきたいのですが。 相手を茶化すにしても痛すぎ。そんな態度だから周りから干されて孤立したんだろ。 言動が陰険過ぎ。いつまでも理解していないみたいな勘違いとか、粘着していることも含めて 人間として終わってる。
382 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 06:59:49 ] 368は人気者?
383 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 07:02:14 ] >>382 この間隔で書き込まれているのを見ていると、 一人で騒いでいるだけのようにしか見えない
384 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 07:25:34 ] あいかわらずですね。
385 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 07:37:16 ] 見えない敵と戦っているんだろう プログラマなら魔法で戦えよ
386 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 07:47:46 ] >>383 一度に多数の人間が同時に書き込んだ、というのを演出したいらしい。
387 名前:デフォルトの名無しさん [2010/07/01(木) 12:11:13 ] vectorをリファレンス引数で扱う意味を教えてください
388 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 12:53:33 ] >>387 コピーするコストがもったいないから コピーだと中身に変更を加えても呼び出し元に影響を与えられないから
389 名前:デフォルトの名無しさん [2010/07/01(木) 12:59:28 ] >>388 つまり、コピーだとその後代入などの手間がかかるため リファレンス引数で扱い、その手間を省くということですね ありがとうございます。
390 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 14:36:20 ] [1] 授業単元: プログラミング言語 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10772.txt [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:Vc [3.3] 言語: C++ [4] 期限:2010年07月10日まで [5] その他の制限:なし
391 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 14:50:54 ] >>383 その感覚じゃ連続投稿に引っかかることくらい、ここの住人なら知っているだろう。 バイバイさるさんにも引っかかる可能性はある。
392 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 18:39:51 ] >>391 抜け道はいくらでもある。
393 名前:デフォルトの名無しさん mailto:void main() (笑) [2010/07/01(木) 21:27:49 ] >>390 void main (笑)
394 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 21:29:53 ] >>389 コンストラクタ・デストラクタのコストを避けるのが主目的。
395 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 21:32:19 ] >>379 なに、ほんの手遊びですよ。ちょろちょろっと書いてみるのもまた楽しいものです。
396 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 21:35:24 ] >>378 つ>>250 オリジナルの多桁演算ライブラリです。いつのまにか乗算・除算もできてしまいました。 効率は悪いのですが、それでもわりに重宝しています。
397 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 21:44:08 ] トリップ付けずに代弁するとか、大人しくトイレで大便しといれw
398 名前:デフォルトの名無しさん [2010/07/01(木) 21:53:17 ] >>396 横レスで失礼。除算をどうやったのか興味があります。
399 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 21:59:57 ] >>398 2進法での除算そのものです。ちょっとググってみたところでは homepage2.nifty.com/ttoyoshima/Computer/Multiply.htm など。 多桁数を1bit ずつシフトさせながら引き算できるときは引き算をする、という感じです、言葉にすれば。 >>250 も、折をみて、剰余を出力させるように改良しなくては。
400 名前:デフォルトの名無しさん [2010/07/01(木) 22:25:54 ] >>399 なるほど。繰り返しで処理出来るからハードウェア化も可能、というのが理解出来ました。 有難う御座います。
401 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 22:39:01 ] >>400 手近な環境でマシン語を習得し、割り算を実装することができれば、そのマシン語は卒業したといってもいいと思います。 x86 がいいでしょうが、casl でもできます。
402 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 22:54:25 ] >>401 CASLには虎馬が...ww
403 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 23:05:13 ] >>390 の前半 // ◎ソースコード #include <stdio.h> #define N 10 #define ID "/0000/" #define NAME "/やまだ/" static int fib(int n) { int r; if (n <= 2) r = 1; else r = fib(n - 1) + fib(n - 2); return r; } //----------------------------------------------------- int main(void) { int i; printf("%s %s\n\n", ID, NAME); for (i = 1; i <= N; i++) { printf("F%2d = %7d\n", i, fib(i)); } return 0; }
404 名前:デフォルトの名無しさん mailto:sage [2010/07/01(木) 23:09:06 ] >>403 ついでに改造版。 #include <stdio.h> #define N 40 #define ID "/0000/" #define NAME "/やまだ/" #define fib(n) fib2(n,1,1) static int fib2(int n, int a, int b) { return (n <= 2) ? b : fib2(n - 1, b, a + b); } //----------------------------------------------------- int main(void) { int i; printf("%s %s\n\n", ID, NAME); for (i = 1; i <= N; i++) { printf("F%2d = %7d\n", i, fib(i)); } return 0; }
405 名前:デフォルトの名無しさん [2010/07/01(木) 23:15:15 ] 摂氏から華氏,及び華氏から摂氏に換算する関数を作成して、 main関数でキーボードから温度とその値が摂氏であるか華氏であるかを 入力し,摂氏ならば華氏に,華氏ならば摂氏に換算した値を小数点以下1桁までで出力するプログラムを作成しなさい。 なお出力は main関数で行うこと。
406 名前:デフォルトの名無しさん [2010/07/01(木) 23:29:03 ] #include <stdio.h> float power(float x,float y) { float ans; char i; ans=0; if((char)y='C'){ ans=9/5 * x + 32; y='摂氏'; i='華氏'; }else{ ans=5/9 * (x - 32) ; y='華氏'; i='摂氏'; } return ans; }
407 名前:デフォルトの名無しさん [2010/07/01(木) 23:29:54 ] int main(void) { float a; char b,i; a=0; printf("温度を入力してください: "); scanf("%f", &a); printf("%d度が「摂氏」なら 'C' を「華氏」なら'F' を入力してください: ",(int)a); scanf("%s", &b); printf("\n"); printf("%c %8.3f = %c %8.3f\n",b, a, i, CelsiusFahrenheit(a, b)); return 0; } ここまでできたんですが、出力がうまくいきません。 誰か教えてください。
408 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 00:20:43 ] >>405 #include <stdio.h> float CelsiusFahrenheit(float a, char *b) { return (*b == 'C') ? (a - 32) * 5 / 9 : a * 9 / 5 + 32;} int main(void){ float a = 0; char b[2]; printf("温度を入力してください: "); scanf("%f", &a); printf("%g度が「摂氏」なら 'C' を「華氏」なら'F' を入力してください: ", a); scanf("%s", b); b[1] = (*b == 'C') ? 'F' : 'C'; printf("%5.1f °%c = %5.1f °%c\n", a, b[0], CelsiusFahrenheit(a, b), b[1]); return 0; }
409 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 02:19:37 ] [1] 授業単元:プログラミングC [2] 問題文(含コード&リンク): 極座標(r,θ)の値を入力すると、直交座標(x,y)に変換するプログラムを作成せよ。 但し,θの値はdegree(度)で入力すること。また、πの値は逆三角関数(arctan(x))を使って計算をすること。 [3] 環境 [3.1] OS:WinodwsVista [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:7/5(月)迄 [5] その他の制限:特になし よろしくお願いします
410 名前:デフォルトの名無しさん [2010/07/02(金) 02:42:39 ] [1] 授業単元:アルゴリズム論 [2] 問題文(含コード&リンク):分離連作法と外部ハッシュ法の性能比較 [3] 環境 [3.1] OS:windows XP [3.2] gcc [3.3] 言語:C++ [4] 期限:2010年7月10日00:00 [5] その他の制限: 特になし
411 名前: ◆QZaw55cn4c mailto:sage [2010/07/02(金) 05:55:41 ] >>409 codepad.org/Md5TRgzM
412 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 07:22:59 ] >>403 ありがとうございます よろしければ演習2のほうもお願いします・・・
413 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 12:17:45 ] >>411 ありがとうございます!
414 名前:デフォルトの名無しさん [2010/07/02(金) 12:56:28 ] [1] 授業単元:C言語 [2] 問題文(含コード&リンク):switch 文を使用して 1. データファイルの新規作成 2. データファイルの追加作成 3. データファイルの読み込みと表示 4. 終了 をメニュー形式で処理するプログラムを作成せよ。 ・ ファイル名はキーボードから入力する。 ・ 1〜4の処理はユーザ関数として定義すること。 void data_write(void) void data_append(void) void data_read(void) void the_end(void) ・1〜4以外の数値が入力されたら再入力させること。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:cc [3.3] 言語:C言語 [4] 期限:7月5日
415 名前:デフォルトの名無しさん [2010/07/02(金) 17:27:31 ] もう麻呂のク(ryで十分じゃんw
416 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 18:26:04 ] >>415 コードを出したり引っ込めたりしなければね。
417 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 19:01:48 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 正の整数を引数とし、その階乗(n!)を計算して戻り値とする関数 factを作成して動作を確認せよ。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月5日 よろしくお願いします。
418 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 19:04:56 ] >>417 >>211 , >>250 , >>306 あたりを参考にしてはいかが?
419 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 19:43:49 ] >>417 codepad.org/vNVYL56R
420 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 20:35:07 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 実数値(xとする)と正の実数値(yとする)を引数としてx^yを戻り値とする 関数mypowを作成し、プログラムリストと実行結果を示せ。 ただし、xとyについてはmain関数でキーボードから入力するようにし、 出力結果としては、mypow関数の計算結果と数学関数pow関数の結果を 両方表示するようにせよ。また、mypow関数のプロトタイプ宣言も行うこと。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月5日 よろしくお願いします。
421 名前:デフォルトの名無しさん [2010/07/02(金) 20:35:15 ] [1] 授業単元: プログラム言語 [2] 問題文(含コード&リンク): 10 人の成績を入力し,その順位を成績と共に表示したい。以下の考え方に基づいた プログラムを作成せよ。 1 ? 2次元配列s[10][2] を用意する。 2 ? i=0〜9 のfor 文を用いてs[i][0] に成績を入力する。 3 ? s[0][0] とs[j][0],j=0〜9 を比較し,s[0][0] より大きい数値の個数n を数え る。その個数+1 が成績順位になるので,s[0][1] にn+1 を代入する。 4 ? 同様の操作をs[i][0],i=0〜9 に対して行なえば,その成績順位がs[i][1] とし て求められるので,あとは成績と共に表示すればよい。 [3] 環境 [3.1] OS: WindowsXP [3.2] コンパイラ名とバージョン:VC 6.0 [3.3] 言語: C++ [4] 期限: 2010年7月6日まで [5] その他の制限: main関数 よろしくお願いします
422 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 20:39:26 ] >>419 ありがとうございます!
423 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 21:27:52 ] >>408 遅れてすいません。ありがとうございます!
424 名前:デフォルトの名無しさん [2010/07/02(金) 21:44:46 ] >>416 しつけぇw
425 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 22:02:53 ] >>423 ですが、何度もすいません。 >>408 を 80度が「摂氏」なら "C" を「華氏」なら "F" を入力してください: F 日本基準 80.0 度 = 欧米基準 176.0 度 と出力できるようにはできませんか?
426 名前: ◆QZaw55cn4c mailto:sage [2010/07/02(金) 22:47:29 ] >>420 codepad.org/7QLze0b2 もっとまじめにmypow()を定義しなければならないのでしたら、その旨ご返事ください。考え直します。
427 名前: ◆QZaw55cn4c mailto:sage [2010/07/02(金) 23:06:15 ] >>421 codepad.org/BowfSESU VC6 でコンパイルできなかったらごめんなさい。
428 名前:デフォルトの名無しさん mailto:sage [2010/07/02(金) 23:47:19 ] >>424 質問でも宿題でもないのにあげている、という点で同一人間っぽいですね。 いわゆる自意識過剰ってやつですか。もっと大人になりましょうね。
429 名前: ◆QZaw55cn4c mailto:sage [2010/07/03(土) 00:49:16 ] >>390 codepad.org/dxhtULqH
430 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 00:56:52 ] >>425 計算違いがありましたので修正しました。 #include <stdio.h> #define c1(c) (c=='C')?"日本基準":"欧米基準" float CelsiusFahrenheit(float a, char *b) { return (*b == 'F') ? (a - 32) * 5 / 9 : a * 9 / 5 + 32;} int main(void) { float a = 0; char b[1]; printf("温度を入力してください: "); scanf("%f", &a); printf("%g度が「摂氏」なら 'C' を「華氏」なら'F' を入力してください: ", a); scanf("%s", b); printf("%s %5.1f 度 = %s %5.1f 度\n", c1(*b), a, c1('C' + 'F' - *b), CelsiusFahrenheit(a, b)); return 0; }
431 名前:デフォルトの名無しさん [2010/07/03(土) 06:36:17 ] >>428 し・つ・こ・い。このスレに何しに来てんの?基地外。自分のレスを読み返せ。 浮いてるぞ
432 名前:デフォルトの名無しさん [2010/07/03(土) 06:43:38 ] >>428 > いわゆる自意識過剰ってやつですか。もっと大人になりましょうね。 自己紹介しているし、このバカw お前の揚げ足取り、反論はどれも論点がズレている。もう少し自分の方が 勘違いをしてコミュ力がないと気づけよ、お子ちゃま。 で、fgetc()の戻り値なんて今更持ち出す池沼乙w
433 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 06:45:57 ] >>234 よろしければお願いします
434 名前:バカ晒しage [2010/07/03(土) 06:48:26 ] ageているからという理由で勘違いしているなら ピエロのお前を晒し続けてやるよw お前がこのスレに無関係な話を延々と見えない敵に噛み付いて し始めているからきめぇつってんだよ。スレタイ読めや、文盲かてめぇは?
435 名前:いつまでもおつむは成長しないお子ちゃま [2010/07/03(土) 06:49:18 ] 368 名前: ◆QZaw55cn4c 投稿日:2010/06/30(水) 23:23:11 >>344 fgetc() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。 どうですか?成長しましたか?
436 名前:見えない敵に噛み付く自分こそ自意識過剰のスレチバカ [2010/07/03(土) 06:50:06 ] 428 名前:デフォルトの名無しさん 投稿日:2010/07/02(金) 23:47:19 >>424 質問でも宿題でもないのにあげている、という点で同一人間っぽいですね。 いわゆる自意識過剰ってやつですか。もっと大人になりましょうね。
437 名前:デフォルトの名無しさん [2010/07/03(土) 06:53:32 ] >>368 = >>428 EOF がマクロで定義されていることを、そろそろ理解していただきたいのですが。 どうですか?精神レベルとプログラミングの技能は成長しましたか? ttp://www.bohyoh.com/CandCPP/C/Library/getchar.html > int getchar(void); getchar() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。 どうですか?成長しましたか?
438 名前:433=234 mailto:sage [2010/07/03(土) 07:10:46 ] ちなみに期限のほうですが、来週の月曜日にまで延長して貰えました
439 名前:デフォルトの名無しさん [2010/07/03(土) 07:18:56 ] このスレがどんなスレか、そろそろ理解していただきたいのですが? スレタイも>>1 も読めないアホ
440 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 12:50:16 ] 内容: [1] 授業単元:プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10774.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:7/6まで [5] その他の制限:特になし 2問ありますがよろしくお願いします
441 名前:デフォルトの名無しさん [2010/07/03(土) 13:27:17 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): UNIXコマンドのgrep(指定したファイルを読み込み、指定した文字列とマッチする行を出力するコマンド)と同じ動作をするプログラムを実装しなさい。 ただし、オプションなどの副次的な機能はつけなくてもよい。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月5日まで [5] その他の制限:とくにありません。よろしくお願いします。
442 名前: ◆QZaw55cn4c mailto:sage [2010/07/03(土) 15:41:24 ] >>441 codepad.org/dQt9ehKW
443 名前:334 [2010/07/03(土) 17:20:02 ] codepad.org/gKSA4OIw コンパイルが上手く行ったので実行したらゴミができた タイミングよく救急車のサイレンがきこえてきた 死にたいw (gdb) run Starting program: /cygdrive/c/works/1/rev/rev [New thread 2376.0x258] [New thread 2376.0xbf0] 6 [main] rev 2376 exception::handle: Exception: STATUS_ACCESS_VIOLATION 3713 [main] rev 2376 open_stackdumpfile: Dumping stack trace to rev.exe.stack dump Program received signal SIGSEGV, Segmentation fault. 0x611203f8 in _fread_r () from /usr/bin/cygwin1.dll
444 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 17:26:03 ] >>443 画像開く前から画像の幅と高さがわかるとかどんなエスパーだよバカ
445 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 17:29:08 ] ワロタ
446 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 19:06:49 ] >>426 ありがとうございます。
447 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 19:44:18 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 例を修正し、double型の配列変数に格納されている値の 平均値を求める関数aveを作成せよ。また、aveもdouble型とする。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月5日
448 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 19:46:04 ] >>447 の例は以下の通りです。よろしくお願いします。 #include<stdio.h> #define N 10 int sum(int num[]) { int n, s=0; for (n=0;n<N;n++) s+=num[n]; return 0; } int main() { int aa[N], bb; /* 配列変数aaに値を代入 */ bb = sum(aa); printf(“sum=%d\n”,bb); return 0; }
449 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 20:06:46 ] >>447 #include<stdio.h> #define N 10 double sum(double num[]) { int n; double s=0.0; for (n=0;n<N;n++) s+=num[n]; return s; } int main() { int i; double aa[N], bb; /* 配列変数aaに値を代入 値は適当*/ for (i=0;i<N;i++) aa[i]=i*2.5; bb = sum(aa); printf("sum=%f\n", bb); return 0; }
450 名前: ◆GmgU93SCyE mailto:sage [2010/07/03(土) 20:08:55 ] >>447 #include <stdio.h> #define N 10 double ave( const double arr[] ) { int i; double total = 0; for ( i=0; i<N; ++i ) total += arr[i]; return total/N; } int main() { const double arr[N] = { 1.23, 9.87, 5.94, 0.157, 7.2, 1.23, 9.87, 5.94, 0.157, 7.2 }; printf( "average = %f", ave(arr) ); return 0; }
451 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 20:47:22 ] >>408 ありがとうございます!
452 名前:デフォルトの名無しさん [2010/07/03(土) 20:52:37 ] [1] c言語活用: [2] 例を改造して、ガウス関数に関する折れ線グラフにしなさい。 codepad.org/bsUmakKX [3] 環境 [3.1] OS : Linux [3.2] コンバイラ名 : gcc [3.3] 言語 : C [4] 期限: 7月 5日まで 例をガウス関数で定義するところまでは自力でできましたが、 グラフが点集合でしか表せません。 現在のX座標の点と隣のX座標の点を直線で結ぶために2組の座標の組 (x1, y1, disp_x1, disp_y1), (x2, y2, disp_x2, disp_y2) を用意するとうまくいくそうですが どうしてもわかりませんでした。 御助力お願いします。
453 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 21:42:14 ] >>452 handy.h とはなんでしょうか? あと、X Window ?
454 名前:デフォルトの名無しさん mailto:sage [2010/07/03(土) 22:01:38 ] >>390 誰かコレの演習2お願いしますっ
455 名前: ◆QZaw55cn4c mailto:sage [2010/07/03(土) 22:35:14 ] >>390 >>454 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10777.txt >>431 宿題しにきていますが、なにか? >>432 べつに当たり前のことをいってるだけですけどね。でも、当時話題になったが fgetc() ではなくて getchar() マクロや EOF だっただなんて、よくご存知ですね。やっぱり当事者だったんですね。つれた、つれた。 >>434 そういいながらも sage で投稿できないところなんか、末期的としかいわざるを得ないでしょうね。一度 sage で投稿してごらんなさい? まあ一匹の自意識障害者をあぶりだすことができたようで、満足しています。
456 名前: ◆QZaw55cn4c mailto:sage [2010/07/04(日) 00:21:30 ] >>390 >>454 訂正します。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10779.txt
457 名前:デフォルトの名無しさん [2010/07/04(日) 00:31:44 ] [1] 授業単元:プログラム演習 [2] 問題文(含コード&リンク): 以下のプログラムに、下に示す二つの関数を実装し、組み込みなさい。 ファイル中に保存するデータはアスキー形式でも、バイナリ形式でもどちらでも構わないものとする。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10778.txt ・構造体Employee型のデータが順に保存されているファイルからデータを読み込む関数。 ・作成したデータをファイルに書き出す関数。 例えば、構造体Employeeを下に示すものと同じ定義にしたとする。 この構造体に従ったASCII形式のデータベースファイルを読み込み、社員の追加や、給与の変更をした後、同様なデータベースファイルとして保存できるようにしなさい(もちろん、バイナリ形式のファイルにしても構わない)。 [構造体Employeeの例] typedef struct { char name[16]; int age; int salary; } Employee; [データベースファイルの例] TANAKA 32 620 SUZUKI 25 500 CHIBA 35 650 NAKAMURA 50 1000 IIDA 45 800 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月5日まで [5] その他の制限:特にありません。よろしくお願いします。
458 名前:457 mailto:sage [2010/07/04(日) 00:43:11 ] >>459 ありがとうございます。
459 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 00:50:36 ] どういたしまして
460 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 01:02:03 ] >>456 ありがとうございます、助かりました
461 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 01:03:27 ] 1] 授業単元: プログラミング実験 [2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10780.zip [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: [3.3] 言語: C言語 [4] 期限: ([2010年07月05日22:00まで] [5] その他の制限: よろしくお願いします!
462 名前:デフォルトの名無しさん [2010/07/04(日) 01:03:42 ] >>455 精神障害者だろ、お前?いつまでも昔の(自分の勘違いのせいで起こった論争)を引き摺るとか。 気持ち悪い。このスレ、お前のオナニースレじゃないんだが?周りを見ろよ。 日頃、現実世界でまともに相手にされていないのがバレバレだぞ。
463 名前:デフォルトの名無しさん [2010/07/04(日) 01:05:26 ] >>1 > 気に入らない質問やその他の発言はスルーの方向で。 最初の1行も読めないとか、日本人かも疑わしいわ。 ageられているのはお前みたいなキモイ奴を晒しageされていると気づけよ。 このスレにsageルールはないけど?
464 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 01:15:35 ] ID希望
465 名前:精神障害者アスペ君の恥ずかしいレス [2010/07/04(日) 01:15:35 ] 368 名前: ◆QZaw55cn4c 投稿日:2010/06/30(水) 23:23:11 >>344 fgetc() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。 どうですか?成長しましたか?
466 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 01:23:04 ] どなたか教えてください。ずっと考えてたけど、答えがわかりませんorz。 <標準関数>文字列と削除文字列を入力し、文字列中から削除文字列を削除しなさい。 ※配列の使用は2つだけ。 例) 文字列入力→ABCDEFAABCDABC 削除文字列→ABC 結果文字列→DEFAD どなたか教えてください、お願いします。
467 名前:デフォルトの名無しさん [2010/07/04(日) 01:35:50 ] IDが表示されない、だから相手が特定できないから自分にレスした奴を 虱潰しに煽る事で炙り出そうって魂胆だろ。一生見えない敵と戦うぞ、こいつw
468 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 02:00:45 ] >>467 今来産業の俺にもう少し分かりやすく
469 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 02:05:50 ] >>466 #include <stdio.h> #include <string.h> int main(void) { char source[] = "ABCDEFAABCDABC"; char target[] = "ABC"; size_t l = strlen(target); char *p; puts(source); puts(target); while (p = strstr(source, target)) { while (p[0] = p[l]) { p++; } } puts(source); return 0; }
470 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 02:06:11 ] 麻呂のクソースを超えるクソースは出てこない、間違いない
471 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 02:21:25 ] >>469 ※配列の使用は2つだけ。 って言われてるけど
472 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 02:35:20 ] >>471 はあ?確保してる配列は2つだけだろうが 脳みそヒヨコかよ
473 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 11:33:13 ] >>449 「ave」という文字がないのですがこれでいいんですかね?
474 名前:デフォルトの名無しさん [2010/07/04(日) 14:29:58 ] >>453 handy.h はHandyGraphic という グラフィックスライブラリを使うことを意味しています。 また学校のパソコンなのでわかりませんがおそらく X Windowかと思われます。いいかげんですみません。 明日提出なのでよろしければ、どなたかよろしくお願いします。
475 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 14:41:34 ] [1] 授業単元:プログラミング [2]問題文: ファイルseiseki.txt から氏名と点数を読み込んで、成績順に並べ替え、結果を画 面に表示するプログラムを作成せよ。 ・氏名は2次元配列、点数は1次元配列に格納する。 ・ データの並べ替えには単純挿入法、単純選択法またはバブルソートを使用する。 ・ 文字列 x[]と文字列y[]の入れ替えは、文字列操作関数strcpy を用いて行う。 strcpy(z,x); strcpy(x,y); strcpy(y,z); [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限: ([2010年07月06日0:00まで] この問題が解ける方はいらっしゃいますでしょうか。
476 名前: ◆QZaw55cn4c mailto:sage [2010/07/04(日) 15:11:12 ] >>475 codepad.org/1E7wG9Fa >>463 >>1 を読めないのはおまえさんも同じ。私?いちおう宿題といてますけどね。 なによりこれだけの過剰反応を示していること自体が、つれた、つれた、と判断されてもしかたのないことでは? さらしあげ?専用ブラウザを使っている私にはなんのことだか。 >>467 それはおまえさんのことですがな。
477 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 15:21:19 ] >>469 よみにくいから段下げをつけてくれ
478 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 15:24:06 ] >>473 >>450
479 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 15:36:07 ] >>477 ついてるよ メモ帳にコピペしてみ
480 名前:デフォルトの名無しさん [2010/07/04(日) 15:41:04 ] >>457 もお願いします。
481 名前:デフォルトの名無しさん [2010/07/04(日) 16:04:42 ] [1] 授業単元:方程式の解 [2] 問題文(含コード&リンク):方程式exp(-x^2/2)=0.5の解を求める [3] 環境 [3.1] OS:Windows Vista [3.2] コンパイラ名とバージョン:Cygwin [3.3] 言語:C [4] 期限:7/9 [5] その他の制限: double f(double x); int main(void){ double x,min_f,solution; min_f=1e100; for(x=0;x<=3;x+=dx){ printf("%e,%e\n",f,min_f); if(fabs(f(x))<min_f){ solution=x; min_f=fabs(f(x)); }} printf("f(%e)=%e\n",solution,min_f); return 0; } double f(double x){ double y; y=exp(-x*x/2)-0.5; return y; } と組んで実行できたんですが、なぜmin_fを最初に10^100とするのでしょうか? なんか私の感覚的には10^-100な気がするのですが・・・ この部分の解説お願いします。
482 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 16:20:47 ] >>479 確かにソースをみるとついてますな。
483 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 16:44:30 ] >>481 範囲をdx刻みで分割して、|f(x)|が最小となるxを求める。 min_fは暫定の最小。もしあるxで|f(x)|<min_fなら、min_fを更新する。 dxに対してmin_fを小さくしすぎると、|f(x)|<min_fなxがない可能性がある。
484 名前:デフォルトの名無しさん [2010/07/04(日) 20:06:11 ] >>476 うわっ、お前マジキモイ・・・そのままトリップを付けたまま書き込めよ。 必死に自分の不満、苛立ちを露にする長文を書くしバカ丸出しw
485 名前:デフォルトの名無しさん [2010/07/04(日) 20:06:54 ] >>476 > それはおまえさんのことですがな。 いや、お前のことだよ。第一、お前はトリップを付けているが お前にレスした奴が特定の一人とは限らないだろ?
486 名前:デフォルトの名無しさん [2010/07/04(日) 20:07:19 ] >>476 見えない敵と戦う必死な戦士、かっちょわりぃ〜w
487 名前:デフォルトの名無しさん [2010/07/04(日) 20:08:06 ] >>476 >>1 >あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他の発言はスルーの方向で。 読めませんか?相手をいちいち自分の勘違いで挑発するお前が一番幼稚
488 名前:デフォルトの名無しさん [2010/07/04(日) 20:08:28 ] >>476 日本語でおk
489 名前:デフォルトの名無しさん [2010/07/04(日) 20:09:12 ] >>476 自分はさっぱり分かりません、みたいなしらばっくれた書き込みをして 自分がした 勘違い を認めないとか、頭おかしいぞw 自覚が無いなら責任が問われる社会では通用しません。
490 名前:デフォルトの名無しさん [2010/07/04(日) 20:09:55 ] >>476 最後の1行がみっともないです ><; 早くこのスレから出て行くか、大人になって下さい ><; ねぇ、まだ社会に出て働いた事の無いお子ちゃまw
491 名前:デフォルトの名無しさん [2010/07/04(日) 20:10:37 ] >>476 やっぱりお前が>>1 の注意書きを読めてないじゃんw
492 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 20:11:40 ] >>476 そろそろ、自分の苛立ちを見えない敵にぶつけないで良いよ。 今後無駄なレスをしても、スルーされるだけだからw で、お前は俺を麻呂と思っているんだろ?麻呂があれから 騙りもあり、しばらく来ていなかったことも知らないとは・・・ そうやって見えない敵に噛み付いてなさいw
493 名前:デフォルトの名無しさん [2010/07/04(日) 20:14:39 ] >>476 の書き込み全てが恥ずかしい。このスレに何しに来てんですか? 他人にお前こそと言う前に、議論するスレは他にありますので、そちらでやって下さい。 トリップ付けてまでバカ晒すなよ、ガキw
494 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 20:16:42 ] >>493 お前はコテハンかトリップつけろクズ
495 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 20:28:46 ] >>469 解答ありがとうございます。もしよろしかったら、使用する標準関数は、strncmp(),strcpy(),strlen()で書いてもらえないでしょうか?
496 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 20:47:34 ] 少しも勉強しないんだな。それでいいのか若者
497 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 20:56:45 ] >>476 ありがとうございます。助かりました。
498 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 21:23:46 ] >>495 codepad.org/T48qu3kj
499 名前:481 [2010/07/04(日) 21:37:31 ] >>483 どうもありがとうございます。納得できました。 ifの条件文に引っかからなくなる直前のxがsolutionとなる、という認識で大丈夫ですか?
500 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 23:15:12 ] >>478 ありがとうございます。
501 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 23:29:02 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 次式の値を返す関数を作成せよ。 f(x)=e^{-x} cos(2πx) その関数を用いて0≦x≦3の間で0.1刻みで計算し、結果をリダイレクトで ファイルに記録せよ。その結果をgnuplotでグラフにして示せ。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月6日 よろしくお願いします。
502 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 00:35:56 ] だれか>>440 お願いします。
503 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 04:14:21 ] >>440 【1】 (1) return ; (2) shift_down(heap, s, 2*s, n); 【2】 (2) swap(&heap[1], &heap[i]); (2) shift_down(heap, 1, 2, i-1); 酷いコードだ。 教育だからこそ、スマートなコードにしてくれることを切に願う。
504 名前:デフォルトの名無しさん [2010/07/05(月) 05:16:09 ] [1]授業単元:プログラミング演習 [2]問題文;離散探索木(26進)と外部ハッシュ法の比較(探索関数) キー: 文字列 使用ファイル: wordE100KR.dat 上記ファイルを読み込み、通常の配列に格納する。 この配列から要素を読み込み、分離連鎖法および離散探索木(26進)を生成する。 格納された要素と同一の要素集合すなわち、配列に格納された用語集合に対して、1万語毎に探索を行い、照合回数、および探索時間を測定する。 結果として、照合回数について20個のデータ(2×10)、同様に探索時間について20個のデータ(2×10)が得られる。 これらのデータをExcelに格納し、表、グラフを作成し、分析せよ。 [3]環境 [3.1]OS;windowsXP [3.2]コンパイラ名とバージョン:gcc [3.3] 言語:C/C++どちらでも可 [4]期限;7月8日 使用ファイルはrg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm にあります。 丸投げで申し訳ありません。よろしくお願いします。
505 名前:デフォルトの名無しさん [2010/07/05(月) 06:49:51 ] すみません、>>457 もお願いします。
506 名前:デフォルトの名無しさん [2010/07/05(月) 12:32:23 ] [1] 授業単元: C言語プログラミング [2] 問題文メモリや実行時間の許容範囲内の、最大完全数、最大友愛数、および最大婚約数を算出プログラムを作成 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:Microsoft Visualstadio 2003 [3.3] C言語・C++ [4] 期限: ([2010年7月6日12:00まで よろしくお願いします。
507 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 16:52:56 ] >>461 おねがいします
508 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:01:57 ] >>507 zipはめんどくさいので放置。 できれば1レス、最低でもWEBだけで確認できる様に書きなおせ。
509 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:03:46 ] >>506 > 許容範囲内 とは誰が許容する範囲内なんだ。 具体的に書きなおせ。
510 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:50:36 ] 最大友愛数、最大婚約数…
511 名前: ◆QZaw55cn4c mailto:sage [2010/07/05(月) 18:29:52 ] >>501 codepad.org/GosjtHA7
512 名前:デフォルトの名無しさん mailto:age [2010/07/05(月) 20:24:06 ] >>507 問題文の 確率指定 p って何?>
513 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:28:32 ] あれだけISOの標準スタイルについて述べられていたのに未だに int main() 笑 の奴がいるとかw
514 名前: ◆QZaw55cn4c mailto:sage [2010/07/05(月) 20:28:45 ] >>457 >>505 codepad.org/7YlltRQG
515 名前: ◆QZaw55cn4c mailto:sage [2010/07/05(月) 20:34:19 ] >>513 pc12.2ch.net/test/read.cgi/tech/1269438098/101 で述べられ済み。 ISO/IEC 9899TC2 6.7.5.3 Function declarators (including prototypes) 14 An identifier list declares only the identifiers of the parameters of the function. An empty list in a function declarator that is part of a definition of that function specifies that the function has no parameters. とあり、関数の定義のときには、空のリストは no parameters である。 すなわち引数が void の場合と等価であり、int main() は int main(void) と同じ。
516 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:36:40 ] >>513 void main()でも別に構わんぞ コンパイル通ればいいんだよ
517 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:45:25 ] >>516 これには異論があり。 個人的には、int main() でコンパイルできる環境で、main() が引数をかえさない、という main() 側の都合で void main() と宣言するのには疑問がある。
518 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:51:48 ] ま〜たこの話題かw ちょっと前にもどっかのスレで泥沼化してただろう? だれか過去ログはっておやり。
519 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:53:34 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): 四則演算と平方根を求める事が出来る電卓プログラムを作成せよ. [3] 環境 [3.1] OS: Windows xp [3.2] コンパイラ名とバージョン:visual C++ 2008 [3.3] 言語: C++ [4] 期限: 2010年7月7日22:00頃まで [5] その他の制限: 数学関数等は利用不可,関数ライブラリは標準入出力ライブラリ stdio.h のみを利用可 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10781.txt math.h等の利用が出来ないため平方根はニュートン法により求めるプログラムを使用したいと思っています. URLに記載した二つのプログラムを組み合わせて上記の条件を満たすような電卓プログラムを作りたいのですが, 私なりに見よう見まねで組み合わせて見たのですが,知識が足りず平方根を求める動作が働きません. 根本的に間違っている可能性もありますが,どなたか修正点を教えて頂けると幸いです. よろしくお願いいたします.
520 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:55:25 ] あのな、isoだかなんだか知らんが、そんなもんただの標準だろ。 守らなきゃいけないルールじゃない。 単にコンパイラやソースが標準に沿っていますということを表明できるだけの意味しかないんだよ。 この世にはmainが存在しないプログラムをCで書くケースだって腐るほどあるし、 エントリ関数がWinMain()になっている世界で最も普及したコンパイラだってあるんだぞ。
521 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 20:58:04 ] >>518 このスレの先々代(135)、3月〜4月にかけて宿題が欠乏し宿題解き人が暇になったために泥沼化した。 結論としては、規格の上では void main() も int main() も合法だったかと。
522 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 21:01:57 ] >>521 情報トンクス! ていうかこのスレだったかw
523 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 21:30:58 ] [1] 授業単元: Visual Studio 入門 [2] 問題文 3問ほどあるのでリンクを kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10782.txt [3] 環境 [3.1] OS:Windowsvista [3.2] Microsoft Visual Studio 2008 [3.3] 言語:c言語 [4] 期限:なし [5] 制限:なし 問題が多いのですがひとつお助けください
524 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 22:14:53 ] >>523 gccでの確認になりますが。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10784.txt
525 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 22:23:17 ] x(1)、 x(2)、・・・とaは2000次元ベクトルとします。 N Σ || x(n)-a || / N || ・|| はノルム。 を高速に計算する方法わかりますか。
526 名前: ◆QZaw55cn4c mailto:sage [2010/07/05(月) 22:30:05 ] >>523 codepad.org/QpeyhPJI codepad.org/zWPlVycN codepad.org/ysQFpPnA
527 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 22:32:14 ] X=(x, y) Y=(z, w) A=(a ,b) とすると、 ||X-A|| + ||Y-A|| = SQRT( (x-a)^2 + (y-b)^2 ) + SQRT( (z-a)^2 + (w-b)^2 ) を高速で計算したいという訳なんです。 2000次元だと、かけ算とSQRTが相当あって時間掛かりますが。 短縮する方法ありますか。
528 名前:527 mailto:sage [2010/07/05(月) 22:35:42 ] 面倒なので、 ||X-A|| = |x-a| + |y-b| と定義してしまうか。 すると、 |x-a| + |y-b| + |z-a| + |w-b| を求めるだけで簡単。
529 名前: ◆QZaw55cn4c mailto:sage [2010/07/05(月) 23:23:14 ] >>519 codepad.org/LQ8UIyYT キー入力の具合はこれでいいですか?
530 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:24:23 ] ◆QZaw55cn4c はもりもりがんばってるなぁ。 定期的に叩かれるみたいだけどがんばれ。
531 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:29:13 ] やってることは怠け者の成績を上げてやることだけどなw
532 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:31:38 ] >>530 叩いてもらえる、というのは、コードをみてくださっている、というありがたい反応ですから、ウェルカムです。 ちょっと前の、あいかわらず頭の変な奴にかかわってしまったのは失敗ですが、スルーすることにしました。 でも今日はおやすみなさいです。
533 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:51:43 ] >>532 じゃあたまにのぞいて気になるとこあったらレスすることにするよ。 っても地力ぼちぼちありそうに見えるんで、重箱の隅ぐらいしか突っ込めないかも。
534 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:53:45 ] [1] 授業単元: Visual Studio 入門 [2] 問題 半乱順列の関数作成 [3] 環境 指定なし [3.1] OS:Windowsvista [3.3] 言語:c言語 [4] 期限:なし [5] 制限:なし 半乱順列の関数を作ってください!お願いします!!
535 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 23:54:08 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク):data.txtに書かれている氏名と成績を読み込み、氏名を2次元配列、成績を1次元配列に格納せよ。 [3] 環境 [3.1] OS:Ubuntu 10.4 [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C [4] 期限:7/7まで [5] その他の制限: data.txtの中身は aoyama 36 oomura 42 sugiyama 50 morita 14 となっております。
536 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 00:06:46 ] >>535 >>476 は読み込んだあとソートしていますが、そのソート部分を削ればご所望のコードになるかと。
537 名前:535 mailto:sage [2010/07/06(火) 00:18:01 ] >>536 似た問題があったのですね。ありがとうございました。
538 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 16:11:53 ] >>529 お答え頂きありがとうございます。 動作は申し分無いのですがこのプログラムだとstdio.h以外にmath.h等の関数ライブラリが見られます。 すみませんがstdio .h のみで動作することを前提でお願いしたいと思います。 また、授業では本当に基礎的な内容のみしか扱っておらず、ネットや本を見て勉強している段階ですので、なるべく基本的な分かりやすい形でプログラムを組んでいただけたら幸いです。
539 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 16:15:25 ] このとき、穏やかな表情の>>529 の脳裏に、 慇懃無礼、という言葉が頭をよぎったという。
540 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 16:17:37 ] >>538 せっかく答えてくれた人に喧嘩売るのはやめようね
541 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 16:48:46 ] >>538 ソースよく読めよ
542 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 16:53:32 ] はいはい、もう答えなくて結構です
543 名前:デフォルトの名無しさん [2010/07/06(火) 17:44:44 ] int main() 笑 なんて使う奴はスルーしてヨシ!
544 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 18:04:56 ] 538です。 せっかく解答をして下さったにも関わらず、不快感を与える表現をしてしまいすみませんでした。 if 0とend ifの意味を理解していませんでした。 こちらの理解不足で本当に失礼しました。
545 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 18:17:15 ] ◆QZaw55cn4c は古い人間でしょ?コードの書き方でバレバレ
546 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 18:26:10 ] >>545 どの辺が古いの?
547 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 18:54:59 ] >>546 無理しないで良いよ、爺ちゃん。
548 名前:デフォルトの名無しさん [2010/07/06(火) 19:01:50 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): #include <stdio.h>typedef struct { char *fname, *mname, *lname; int byear, dyear; } writer_t; writer_t writers[] = { {"Edward", "Elmer", "Smith", 1890, 1965}, {"Robert", "Anson", "Heinlein", 1907, 1988}, {"Arthur", "Charles", "Clarke", 1917, 2008}, {"Isaac", " ", "Asimov", 1920, 1992}, {"Raymond", "Douglas", "Bradbury", 1920, 0}}; int main(void){ int i; char s[10]; for (i = 0 ; i < sizeof(writers)/sizeof(writer_t) ; i++){ printf("%c. ", writers[i].fname); if (writers[i].mname[0] != "\0") { printf("%c. %-10s", writers[i].mname[0], writers[i].lname); } else { printf("%-13s", writers[i].lname); } printf("%4s - ", writers[i].byear); if (dyear > 0){ printf("%4s", writers[i].dyear); } printf("\n"); } return 0;} 上記のエラープログラムを正しく直す。 [3] 環境 [3.1] OS: UNIX [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: ([2010年7月28日20:00まで [5] その他の制限: なるべく簡潔に(新しい変数を定義したり)お願いします。見づらいですが改行が多いと怒られるので・・
549 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:09:55 ] お・に・い・ちゃ・ん、じゃなくて、お・じ・い・ちゃ・ん ♥
550 名前: ◆QZaw55cn4c mailto:sage [2010/07/06(火) 19:11:24 ] >>538 #if 0 から #endif までの間を削除してください。 わかりやすさについては、これが限界です。
551 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:12:43 ] >>543 pc12.2ch.net/test/read.cgi/tech/1269438098/101 で述べられ済み。 ISO/IEC 9899TC2 6.7.5.3 Function declarators (including prototypes) 14 An identifier list declares only the identifiers of the parameters of the function. An empty list in a function declarator that is part of a definition of that function specifies that the function has no parameters. とあり、関数の定義のときには、空のリストは no parameters である。 すなわち引数が void の場合と等価であり、int main() は int main(void) と同じ。
552 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:15:17 ] >>545 確かに古いといわれたらそうかもしれません。 func(a, b) int a; char *b; { ... return 0; } と書いていたころもありました。 setq とか car とか cdr とかを乱発していたこともあります。
553 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:17:21 ] >>494 お前がコテハンかトリップつけろ塵
554 名前: ◆QZaw55cn4c mailto:sage [2010/07/06(火) 19:18:17 ] >>544 いえいえ、全然。
555 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:22:15 ] >>553-554 コテハン付けたり、外したり大変だなw
556 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:24:57 ] >>555 専用ブラウザを使っていますから、簡単ですよ。
557 名前:デフォルトの名無しさん [2010/07/06(火) 19:31:06 ] >>547 >setq とか car とか cdr とかを乱発していたこともあります。 横レスだけど、そのネタはww [H|T] -> とか言い出さないようにw>>552 まあ、コード書けない煽りは無視で行きましょう。
558 名前: ◆GmgU93SCyE mailto:sage [2010/07/06(火) 19:34:15 ] >>548 codepad.org/Wng6j1dW
559 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:35:47 ] >>552 その頃は return (0); と書いてたりしないか?
560 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:37:06 ] >>557 処理系をCで書く、という解説本を集めているんです。でも、いまんところ2冊しかみつかっていません。 やっぱり、そんな本は売れないんですかね。おもしろいんですけれどね。
561 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:38:44 ] >>559 しまった!
562 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:39:30 ] >>560 訳されてない本が沢山あるよ
563 名前:デフォルトの名無しさん [2010/07/06(火) 19:51:18 ] >>560 ,562 Cに限らず、技術資料とかサンプルは英語の方が多いよね。 Google codeもよく使ったなあ。
564 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:51:18 ] お爺ちゃんお口くちゃ〜い、クソースなんて書くなよw
565 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 19:53:06 ] >>562 洋書まではあさる実力がない‥‥‥。でもながめてみたいもの。 著者名でよければ教えてください。
566 名前:デフォルトの名無しさん [2010/07/06(火) 20:06:48 ] >>558 ありがとうございました〜
567 名前:523 mailto:sage [2010/07/06(火) 20:42:03 ] >>526 >>524 回答ありがとうございます。 まさか一日かからずに終わらせてくれるとは思いませんでした。
568 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 21:09:00 ] C言語と関係無いじゃん。 OSやコンパイラを作るって事だろ。
569 名前:デフォルトの名無しさん [2010/07/06(火) 22:11:38 ] コインの種類(例えば、1円、5円、8円、10円、15円)に対して、金額を入力すると その金額を払うのに最も枚数が少なくて済むコインの出し方を出力してくれる プログラム。 例えば、23円と入力すると、「10円1枚・8円1枚・5円1枚の計3枚」と出力できるプログラムです。 ただし、「10円2枚・1円3枚の計5枚」は「最小」ではないため、上の出力を優先します。 入力された金額が負の場合は、「Error」を出力するようにします。 そこで、下のようなプログラムを書いたのですが、うまく起動しません。 このプログラムを、上の出力例のように出力してくれるように書きなおしてくれませんか?? 下のプログラムでは合計枚数を出力する部分しか書いてません。 ちなみに、再帰を使ってプログラミングお願いします。
570 名前:デフォルトの名無しさん [2010/07/06(火) 22:14:36 ] 569質問者のプログラム(続き) #include<stdio.h> int coinfunc(int *C, int k, int M){ /* *C・・・コインの種類の配列(小さい順にソートされているとする) M・・・支払う金額/ k・・・コインの種類の数 */ if(M == 0){ return(0); } else if(M < 0){ return(Error); } else{ int min = 100000; int i; for(i = 0; i <= k - 1; i++){ int tmp = coinfunc(C, k, M - C[i]); if(tmp < min){ min = tmp; } } return(min + 1); } } int main(){ int C[5] = {1,5,8,10,15}; int k = 5; int M; printf("支払う金額M="); scanf("%d",&M); printf("%d\n",coinfunc(C, k, M)); }
571 名前: ◆QZaw55cn4c mailto:sage [2010/07/06(火) 22:36:25 ] >>506 codepad.org/dYsw25Et 許容範囲云々は考えていません。
572 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 22:38:55 ] 明日までにある宿題あるんですけど頼めますかね? すぐ貼ります
573 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 22:40:44 ] 頼めます
574 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 22:42:55 ] >>572 ここまでは作った #include<stdio.h> int main(void) { return 0; }
575 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 22:54:22 ] [1] 授業単元:プログラミング演習 [2] 問題文:このプログラムを拡張して、個人ごと平均点と科目ごとの平均点を小数点以下1桁まで 表示できるプログラムを作成せよ。 #include <stdio.h> main() { int score[4][3]: int total[4]: int i , j ; for (i = 0; i < 4; i++) { total[i] = 0 ; printf("No . %d\n" , i + 1); for( j = 0 ; j < 3; j++) { printf("score %d : " , j + 1) ; scanf("%d", &score[i][j]); total[i] += score[i][j]; } } printf("\n"); printf("No . | s1 s2 s3 | total\n"); printf("---+----------+------\n"); for ( i = 0; i < 4; i++) { printf("%2d | " , i + 1) ; for( j = 0; j < 3; j++) { printf("%3d " , score[i][j]); } printf("| %4d\n" , total[i]) ; } }
576 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 22:56:36 ] 連投すみません [3]環境 Windows、VC6.0、C [4]期限 7月7日 [5]配列まで よろしくお願いします。
577 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 23:36:32 ] >>570 再帰は駄目だな、100円でいっぱいいっぱいだw #include<stdio.h> #include <limits.h> int coinfunc(int *c, int k, int m) { int i, tmp, min = INT_MAX; if (m == 0) return 0; else if (m < 0) return -1; for (i = 0; i < k; i++) { tmp = coinfunc(c, k, m - c[i]); if (tmp < 0) continue; else if (tmp < min) min = tmp; } return min + 1; } int main(void) { int m, c[] = {1, 5, 8, 10, 15}; while (scanf("%d", &m) != 1) scanf("%*[^\n]"); printf("%d\n", coinfunc(c, sizeof(c)/sizeof(*c), m)); return 0; }
578 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 23:38:48 ] 低額は計算済みにしておいて、再帰使えば。
579 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 23:45:42 ] 結局イタチごっこだろ じゃあ非再帰ならいいのかと思って試したら、100000000円くらいが限界だった(メモリ確保できず) 割り算で出来る貨幣制度にしろってこった
580 名前:デフォルトの名無しさん [2010/07/06(火) 23:50:38 ] コインに関する問題への解答ありがとうございます。 >>577 さんありがとうございます。 >>579 さん、非再帰の場合のプログラムをのせてください。お願いします。
581 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 23:53:49 ] >>580 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10789.c
582 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 23:56:49 ] 最終的には、低額の計算だけにできるだろ。 基本は、一番高いコインで、埋めていき、最後(低額)だけ考慮する。
583 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 23:59:29 ] 予想では、コインの最小公倍数になるまでは最大値のコインで支払って 最小公倍数を下回る所になったら、組み合わせを考慮する。
584 名前:デフォルトの名無しさん [2010/07/07(水) 00:01:27 ] <<579さん、ありがとうございます。 ここで、第2問↓↓ 今も上で議論されていますが、このプログラム(<<577)の効率の解析をしてください。 「ある重要な演算1つに注目し、その実行回数(最悪の入力時における)を、入力 サイズを表すパラメータの関数として表す。最終的にはT(n,...)=O(n^2×・・・) のような評価式を求めてください。」できれば、その式を求める過程をお願いします。
585 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:06:30 ] >>568 ええ、lisp 用として。
586 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:07:51 ] O(1)だろ。
587 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:08:29 ] >>582 確かにそれで大分削れそうだな
588 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:08:29 ] >>575 分かる人これも頼みます
589 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:26:32 ] >>583 #include<stdio.h> #include<stdlib.h> int gcd(int a, int b){ int c; while((c=a%b)) a=b, b=c; return b; } int lcm(int a, int b){ return a/gcd(a, b)*b; } void coin_func_r(int *result, int c[], int m, int n){ int i; if(m<0 || c[0]<0 || (*result>0 && n>=*result)) return; if(m==0){ if(*result<0 || *result>n) *result=n; return; } for(i=0;c[i]>0;i++) coin_func_r(result, c+i, m-c[i], n+1); } int coin_func(int c[], int amount){ int i, lcm_all=1, result=-1, rest, c_max=1; for(i=0;c[i]>0;i++){ lcm_all=lcm(lcm_all, c[i]); if(c_max<c[i]) c_max=c[i]; } rest=amount%lcm_all; coin_func_r(&result, c, rest, 0); return result+(amount-rest)/c_max; } int main(int argc, char *argv[]){ int c[]={15, 10, 8, 5, 1, -1}, x=100, result=-1; if(argc==2) x=atoi(argv[1]); result=coin_func(c, x); printf("%d\n", result); return 0; }
590 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:36:26 ] >>589 とてもいい感じだが、コインの最小公倍数の大きさに極めて依存 - int c[]={15, 10, 8, 5, 1, -1}, x=100, result=-1; + int c[]={777, 128, 100, 15, 10, 8, 5, 1, -1}, x=100, result=-1; // tekitou として 100000をコマンドライン引数で与えると帰ってこねえ 最小公倍数よりも範囲を狭くする方法はありそうだけどなぁ
591 名前: ◆QZaw55cn4c mailto:sage [2010/07/07(水) 00:37:41 ] >>575 codepad.org/VmHF0iio 表示具合の微調整はお願いいたします。
592 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 00:40:32 ] >>591 ありがとうございます! 本当に助かりました。
593 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 01:07:22 ] >>503 ありがとうございました!
594 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 01:58:42 ] >>551 そこでも述べられているがそれTC2
595 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 02:06:02 ] [1] 授業単元:プログラミング演習 [2]Q1. 問題文:4つの整数を入力し、それらを要素とする行列を求め、その値を以下のような 形式で表示するプログラムを作成せよ。 例 100 20 30 40と入力すれば | 100 20 | =3400 | 30 40 | と表示される Q.2ディスカウントストアでどの商品でも5個以上買えば1割引、10個以上で2割引、20個以上で 4割引となっていた。キーボードから買う商品の単価と個数を入力し、合計金額を計算するプログラミングを 作成せよ。 [3]環境 Windows、VC6.0、C [4]期限 7月8日 [5]配列よりちょっと前 Q.1に関してはできそうだったのですが、バーが表示されないために却下となってまいました。 皆さんにとっては大変簡単だと思いますがよろしくお願いします。 初心者ですみません。
596 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 02:10:06 ] >>551 ちがう。そういうことじゃない。ISO、ANSI準拠はプログラムの開始、主体となる関数を mainとし、引数がある時と無い時でどう記述するか、標準スタイルを提唱している。 ただし、それはあくまでも 標準スタイル であり、各自の環境によって準拠しなくても構わない。
597 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 02:12:37 ] また、main関数の戻り値はint型とする。これは散々既出だから議論する必要なし。 自分はどうこうすると、根拠も無く意味も分からないスタイルを用いると 他者とコードをやり取りする場合は、弊害が起こるかもしれないが。 そもそも、ここでは個人的なやり取り、スタイルが通用するが C言語は何も個人が私用で使うだけでなく、世界に通じて商業用としても 普通に用いられている。それは工業規格も同じ事。だから少しでも 幅広く通用するスタイル、規格というのが必要になる。 ちなみに、CDやDVDなどもISO準拠で世界で通用する方式、規格が使われている。
598 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 02:25:18 ] さらに、C++では引数が無い場合は int main() としている。 あくまでも ANSI、ISO準拠の標準スタイルの話。個人的なスタイルには言及せず。
599 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 05:44:31 ] >>590 最大のコインを選ぶか選ばないかのときだけやればいい。 777円が最大なら 777*2-1以上までは777円を選んでおいてokのはず。 一枚選べる最大価格は777*2-1円だからこの辺から調べる。
600 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 06:08:18 ] コインが100円と99円としたとき。 297円 = 99*3円で100円を選ぶと失敗するから 599は間違えだな。 やっぱどのコインの倍数でもある最小公倍数がよさげか。
601 名前:デフォルトの名無しさん [2010/07/07(水) 12:20:52 ] >>582 >最終的には、低額の計算だけにできるだろ。 >基本は、一番高いコインで、埋めていき、最後(低額)だけ考慮する。 >>11 を改造させてもらいました。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10790.c
602 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 13:24:29 ] [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10791.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) [3.3] 言語: C [4] 期限: ([2010年07月10日22:00まで] [5] その他の制限: よろしくおねがいします!
603 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 15:23:20 ] [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク): 10人の成績を入力し、その順位を成績と共に表示したい。以下の考えに基づいたプログラムを作成せよ。 1. 2次元配列s[10][2]を用意する。 2. i=0〜9のfor文を用いて、s[i][0]に成績入力する。 3. s[0][0]とs[j][0], j=0〜9を比較し、s[0][0]より大きい数値の個数nを考える。 その個数+1が成績順位になるので、s[0][1]にn+1を代入する。 4. 同様の操作をs[i][0]にi=0〜9に対して行えば、その成績順位がs[i][1]として求められるので、 あとは成績と共に表示すればいい。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: (VC 6.0) [3.3] 言語: C [4] 期限: ([2010年07月9日15:00まで] [5] その他の制限: 初心者で申し訳ないですが頼みます。
604 名前:デフォルトの名無しさん [2010/07/07(水) 15:25:25 ] >>603 >>421 ,427
605 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 15:28:54 ] >>604 おお同じ人がいたとはw ありがとうございます!
606 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 17:49:16 ] >>604 これC++用だからできなかったorz
607 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 18:00:51 ] >>606 codepad.org/HReXj7Ky
608 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 18:15:29 ] >>607 ありがとうございます。 感謝感謝です。
609 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 18:20:35 ] >>595 暇ならでいいんでこれも頼みます
610 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 18:35:12 ] >>609 Q2. codepad.org/Nhl8WS7Q
611 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 18:42:57 ] >>610 ありがとうございます。
612 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 19:14:20 ] >>609 Q1 codepad.org/yXo3FhWm
613 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 19:26:52 ] >>550 ありがとうございました。 プログラムをしっかり理解出来るようもっと知識を深めたいと思います!
614 名前:デフォルトの名無しさん [2010/07/07(水) 19:29:25 ] >>612 ありがとうございます! 助かりました。
615 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 20:57:40 ] >>612 重くて開かないですね
616 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 21:24:39 ] 見れました!
617 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 21:58:05 ] 独自のライブラリも悪くは無いが 標準ライブラリ で済むならそれでおk
618 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 22:39:34 ] 【質問テンプレ】 [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): 円形テンプレートマッチングのプログラムを作成せよ。 白い楕円が複数書いてあるBMP画像を読み込み(適当にペイントで作成)画像左下からラスタ走査し、円形テンプレートマッチングをするプログラムを作成せよ。 円形テンプレートはサイズA〜Bまで変化させ、一致率(円形テンプレートの円周上に一致する白画素と一致している数/円形テンプレート円周のプロット数、円形テンプレート内の黒画素に一致している黒画素数/円形テンプレート内の黒画素数) 上位5つを色を変えて描画せよ。 また、一致率上位5つの半径、一致率、座標(画像の左下をx=0、y=0とする)をdos窓上に標示せよ。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:VC [3.3] 言語:C++ [4] 期限:2010年7月10日まで [5] その他の制限: よろしくお願いします
619 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 23:37:51 ] [1] 授業単元:Cプログラミング演習 [2] 問題文(含コード&リンク): 問題1. 10進数1234を2進数で表示するプログラムを作成せよ。 問題2. 変数の下位16ビット中の1のビット数を数える関数 int bit_count(int x) を作成せよ [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:Visual Stduio 2008 [3.3] 言語:C [4] 期限:2010年7月9日まで [5] その他の制限:無 よろしくお願いします
620 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 23:53:18 ] #include <stdio.h> int main() { int a, b, c, d; scanf( "%d", &a ); scanf( "%d", &b ); scanf( "%d", &c ); scanf( "%d", &d ); int value= a*d - b*c; printf( "| %d %d | =%d\n", a, b); printf( "| %d %d |\n", c, d ); return 0; } エラー z:\プログラミング演習\sample\sample\sample01c.c(12) : error C2143: 構文エラー : ';' が 'type' の前に必要です。 cl.exe の実行エラー どこを直せば良いのですか?
621 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 23:54:42 ] #include <stdio.h> int main() { int unit_price; // 単価 int num; // 個数 printf( "買う商品の単価: " ); scanf( "%d", &unit_price ); printf( "個数: " ); scanf( "%d", &num ); int total_price = unit_price * num; // 小数を使うと誤差がでるので使わない if ( num >= 20 ) total_price = total_price*6/10; else if ( num >= 10 ) total_price = total_price*8/10; else if ( num >= 5 ) total_price = total_price*9/10; printf( "合計金額: %d", total_price ); } エラー Z:\プログラミング演習\sample\ensyu8\ensyu8.c(14) : error C2143: 構文エラー : ';' が 'type' の前に必要です。 Z:\プログラミング演習\sample\ensyu8\ensyu8.c(18) : error C2065: 'total_price' : 定義されていない識別子です。 cl.exe の実行エラー これもお願いします。
622 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 23:58:40 ] >>621 変数の宣言場所をブロックの先頭に移動
623 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 23:59:05 ] #include <stdio.h> const int n = 10; int main() { int i, j; int s[n][2]; for (i = 0; i < n; i++) { printf( "%d: ", i ); scanf( "%d", &s[i][0] ); } for (i = 0; i < n; i++) { s[i][1] = 0; for (j = 0; j < n; j++) { if (s[i][0] < s[j][0]) s[i][1]++; } s[i][1]++; } for (i = 0; i < n; i++) printf( "s[%d]: %d\n", i, s[i][1] ); return 0; } /* end */ Z:\プログラミング演習\sample\sample33\ensyu33.c(7) : error C2057: 定数式が必要です。 Z:\プログラミング演習\sample\sample33\ensyu33.c(7) : error C2466: サイズが 0 の配列を割当てまたは宣言しようとしました。 Z:\プログラミング演習\sample\sample33\ensyu33.c(7) : error C2133: 's' : サイズが不明です。 cl.exe の実行エラー すみませんこれも駄目でした。 お願いします。
624 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:01:53 ] >>622 ありがとうございます。 しかし警告が出てしまいました。 Z:\プログラミング演習\sample\ensyu8\ensyu8.c(7) : warning C4700: 値が割り当てられていないローカルな変数 'unit_price' に対して参照が行われました。 Z:\プログラミング演習\sample\ensyu8\ensyu8.c(7) : warning C4700: 値が割り当てられていないローカルな変数 'num' に対して参照が行われました。
625 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:18:06 ] もしかして↓みたいな感じにしてない? int unit_price; // 単価 int num; // 個数 int total_price = unit_price * num;
626 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:19:39 ] >>625 なってます。 初心者ですみません。 正しいやり方教えてください。
627 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:27:29 ] int unit_price; // 単価 int num; // 個数 int total_price; printf( "買う商品の単価: " ); scanf( "%d", &unit_price ); printf( "個数: " ); scanf( "%d", &num ); total_price = unit_price * num;
628 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:30:08 ] >>627 できました! どうもありがとうございました。
629 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:34:44 ] >>620 自己解決できました。
630 名前:デフォルトの名無しさん [2010/07/08(木) 02:22:04 ] [1] 授業単元:Cプログラミング [2] 問題文(含コード&リンク): [3] 環境 [3.1] OS: (Windows) [3.2] コンパイラ名とバージョン: (visual stadio 2008) [3.3] 言語: (C) [4] 期限: [2010年07月08日13:00まで] [5] その他の制限:ほんの入門級なので、if,for,whileぐらいしか使えません あと配列は禁止 概要:数値を1つ(2〜9の数字)入力し、その個数分の"*"を1辺とする 完成図(*=★、空白=☆): 3を入力した場合 ★★★ ☆☆★ ★★★ 9を入力した場合 ★★★★★★★★★ ☆☆☆☆☆☆☆☆★ ★★★★★★★☆★ ★☆☆☆☆☆★☆★ ★☆★★★☆★☆★ ★☆★☆☆☆★☆★ ★☆★★★★★☆★ ★☆☆☆☆☆☆☆★ ★★★★★★★★★ ーーーーーーーーーーーーーーーー 自分の考え方で進んでみましたが、ifの条件式の部分が分からなくて 助力を求めます
631 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 07:27:39 ] >>630 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10793.c 奇数のみ出力できるモノで良ければ
632 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 10:01:13 ] [1] 授業単元:C・プログラミング [2] 問題文(含コード&リンク): 下記のGPA計算のプログラムを読み込んだ数値を入れる配列を指すポインタを用いて書き換えよ.ただし,配列は1次元配列を用い,また関数を使う必要はない. kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10794.txt [3] 環境 [3.1] Windows 7 [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限:2010年7月10日迄 よろしくお願いします。
633 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 10:51:09 ] >>632 void input(int sei[][N2], int n); ↓↓↓↓ void input(int (*sei)[N2], int n); for(i=0; i<n; i++){ ↓↓↓↓ int (*p)[N2]; for (p = sei; p < sei + n; p++) { sei[i][2]= 0; ↓↓↓↓ (*p)[2]= 0;
634 名前:デフォルトの名無しさん [2010/07/08(木) 11:18:09 ] C言語プログラミング(再帰)について質問です。 コインの種類(例えば、1円、5円、8円、10円、15円)に対して、金額を入力すると その金額を払うのに最も枚数が少なくて済むコインの出し方を出力してくれる プログラムを書こうと思っています。 例えば、23円と入力すると、「10円1枚・8円1枚・5円1枚の計3枚」と出力できるプログラムです。 ただし、「10円2枚・1円3枚の計5枚」は「最小」ではないため、上の出力を優先します。 そこで、下のようなプログラムを書いたのですが、合計枚数を出すまでしかできませんでした。 これを、それぞれのコインが何枚必要か出力するように書き換えてください!お願いします。 ソースコードは次の書き込みで。
635 名前:デフォルトの名無しさん [2010/07/08(木) 11:19:16 ] #include<stdio.h> #include<limits.h> int coinfunc(int *c, int k, int m) { int i, tmp, min = INT_MAX; if (m == 0) return 0; else if (m < 0) return -1; for (i = 0; i < k; i++) { tmp = coinfunc(c, k, m - c[i]); if (tmp < 0) continue; else if (tmp < min) min = tmp; } return min + 1; } int main(void) { int m, c[] = {1, 5, 8, 10, 15}; printf("m=?\n"); while (scanf("%d", &m) != 1) scanf("%*[^\n]"); printf("%d\n", coinfunc(c, sizeof(c)/sizeof(*c), m)); return 0; }
636 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 11:21:49 ] 23円は15と8じゃダメですか? ><;
637 名前:デフォルトの名無しさん [2010/07/08(木) 11:28:10 ] >>636 すいません!!23円のときは15と8が最小ですね。。
638 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 11:57:17 ] >>634 codepad.org/GanifMOO
639 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:01:39 ] 性帝トーマス△
640 名前:デフォルトの名無しさん [2010/07/08(木) 12:17:43 ] >>638 33円 -> 15円1枚、10円1枚、8円1枚 が最小。
641 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:26:46 ] 1 #include<stdio.h> 2 #include<string.h> 3 typedef struct K{ 4 char* name; 5 int tensuu; 6 }K; 7 int main(void) 8 { 9 FILE *fp; 10 char str[256]; 11 char *p1,*p2; 12 int i,j,n; 13 double d,e,f; 14 int a[250]; 15 char b[250][250]; 16 int x; 17 18 if((fp=fopen("seiseki.txt","r"))==NULL){ 19 printf("ファイルがありません\n"); 20 return -1; 21 }else{ 22 /*while(fgets(str,256,fp)!=NULL){ 23 p1=strtok(str," "); 24 p2=strtok(NULL," "); 25 a.name=p1; 26 a.tensuu=atoi(p2);*/ 27 i=0; 28 while(fscanf(fp,"%s %d",&b[i],&a[i])!=EOF){ 29 i=i+1;
642 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:28:08 ] 30 } 31 n=i; 32 printf("----------入力データ------------\n"); 33 for(i=0;i<n;i++){ 34 printf("%s %d\n",b[i],a[i]); 35 } 36 for( j=0; j<n; j++){ /* 未処理データの先頭 */ 37 for( i=1; i < n-j; i++){ 38 if( a[i-1] < a[i] ){ /* 隣り合うデータの交換*/ 39 x = a[i-1]; 40 a[i-1] = a[i]; 41 a[i] = x; 42 43 strcpy(str,b[i-1]); 44 strcpy(b[i-1],b[i]); 45 strcpy(b[i],str); 49 } 50 } 51 } 52 53 } 54 printf("----------出力データ------------\n"); 55 for(i=0;i<n;i++){ 56 printf("%s %d\n",b[i],a[i]); 57 } 58 fclose(fp); 59 return 1; 60 } 61
643 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:29:05 ] ファイル処理の応用 switch 文を使用して 1. データファイルの新規作成 2. データファイルの追加作成 3. データファイルの読み込みと表示 4. 終了 をメニュー形式で処理するプログラムを作成せよ。 ファイル名はキーボードから入力する。 1〜4の処理はユーザ関数として定義すること。 void data_write(void) void data_append(void) void data_read(void) void the_end(void) 1〜4以外の数値が入力されたら再入力させること。 switch 文については教科書 56 ページを参照すること。
644 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:31:22 ] 1. 新規作成の実行例 ********** 成績処理 ********* ← メニューの表示 ファイルの新規作成・・・・・1 ファイルの追加作成・・・・・2 ファイルの読み込みと表示・・3 終了・・・・・・・・・・・・4 ← データ入力の誤り 処理番号を入力して下さい(1〜4):9 ********** 成績処理 ********* ファイルの新規作成・・・・・1 ファイルの追加作成・・・・・2 ファイルの読み込みと表示・・3 終了・・・・・・・・・・・・4 処理番号を入力して下さい(1〜4):1 ← ファイル名の入力 Input file name= abc.txt name=?oota tensuu=?10 oota 10 name=?yamada tensuu=?50 yamada 50 name=? ← 入力の終了 Ctrl + D
645 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:33:27 ] 2. 追加作成の実行例 ********** 成績処理 ********* ファイルの新規作成・・・・・1 ファイルの追加作成・・・・・2 ファイルの読み込みと表示・・3 終了・・・・・・・・・・・・4 処理番号を入力して下さい(1〜4):2 name=?isida tensuu=?90 isida 90 name=?torii tensuu=?70 torii 70 name=? ← 入力の終了 Ctrl + D 3. 読み込みと表示の実行例 ********** 成績処理 ********* ファイルの新規作成・・・・・1 ファイルの追加作成・・・・・2 ファイルの読み込みと表示・・3 終了・・・・・・・・・・・・4 処理番号を入力して下さい(1〜4):3 Input file name= abc.txt oota 10 yamada 50 isida 90 torii 70
646 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 18:25:35 ] >>633 ありがとうございます。助かりました。
647 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 18:25:53 ] >>641-645 >>1
648 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 18:29:13 ] [1] 授業単元: [2] 問題文(含コード&リンク): 2〜9の数字を入力その数字に応じて図形を表示させる関数を作る 正方形 三角形 六角形 菱形 星 渦巻き 星と渦巻き以外できたからこの2つについて知りたい 例 7を入力したとき 左:渦 右:星 ******* * * * * * * * ***** * *** * * * ******* * *** * *** * * * * * ******* * * * [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: よくわからない 申し訳ないVS2008使ってる [3.3] 言語: C [4] 期限: 2010年7月13日 [5] その他の制限: 配列は禁止
649 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 18:44:06 ] >>648 ほー。配列は禁止。 printf("******* * * * \n"); printf(" * * * * \n"); printf("***** * *** \n"); printf("* * * ******* \n"); printf("* *** * *** \n"); printf("* * * * * \n"); printf("******* * * * \n"); は禁止?
650 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 18:51:34 ] 面白いと思ってやってんの?
651 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 19:11:07 ] >>648 渦巻きの偶数パターンが分かればコードが書けるんだが
652 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 22:56:04 ] >634 ってさ、たとえば 36 のときみたいに解が複数あるときはどうすんの? 15,15,5,1 の4枚と、10,10,8,8 の4枚。
653 名前:デフォルトの名無しさん [2010/07/08(木) 23:06:15 ] >>630 ありがとうございます 助かりました
654 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 23:20:25 ] >>653 いえいえ
655 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 23:32:53 ] [1] 授業単元:C言語 [2] 問題文(含コード&リンク): 以下の仕様に従って,分数の四則演算を行うプログラムを作成せよ。 [仕様1] 以下のような構造体を定義し,分数のデータ構造に利用すること。 struct fraction{ int parent; /* 分母(denominator) */ int child; /* 分子(numerator) */ }; [仕様2] 以下の実行結果となるようなプログラムを作成せよ。 プログラムの実行結果↓ 1つ目の分数を入力して下さい。 3/4 ←キーボードより入力 2つ目の分数を入力して下さい。 1/4 ←キーボードより入力 演算方法(1.加算,2.減算,3.乗算,4.除算)を入力して下さい。 2 ←キーボードより入力 3/4 - 1/4 = 1/2 計算結果は約分をして表示 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C言語 [4] 期限: 7月9日 [5] その他の制限:ポインタ変数、データ構造まで習いました よろしくお願いします
656 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 23:41:48 ] >>651 特に指示はないからこっちに任せただと思う だから左上からスタートで ******** * ****** * * * * * * * * * **** * * * ******** >>649 ifかswitchでそれをつくろうかと思ったがさすがにふざけてると思われそうなのでやめた
657 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 23:51:27 ] >>656 日本語でおk。偶数パターンを出力してからものを言え
658 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 00:02:35 ] >>657 すまなかった 6 4 2の順で ****** * **** * * * * * * ****** **** * * * **** 2は正方形でも右の形でもどっちでもいい ** ** ** *
659 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 00:34:07 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): yonex1.cis.ibaraki.ac.jp/~yonekura/Socket-base/Sock-prog9.html [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc 4.3.4 [3.3] 言語:C [4] 期限:2010年7月11日 [5] その他の制限: よろしくお願いします。
660 名前:デフォルトの名無しさん [2010/07/09(金) 01:28:45 ] 次のプログラムを、分かりやすく疑似コードに直してください!! 分かり易ければOKです! static int coin[] = {1, 5, 8, 10, 15}; int main(void){ int *nr, *hist, money, c, n, new; printf("input money : "); while (scanf("%d", &money) != 1) { scanf("%*[^\n]"); printf("input money again : "); } scanf("%*[^\n]"); nr = (int *)malloc((money + 1)*sizeof(*nr)); if (nr == 0) { perror("calloc"); return 1; } hist = (int *)calloc(money + 1, sizeof(*hist)); if (hist == NULL) { perror("calloc"); goto err; } for (n = 0; n <= money; n++) nr[n] = n; for (c = 0; c < sizeof(coin)/sizeof(*coin); c++) for (n = coin[c]; n <= money; n++) { new = nr[n - coin[c]] + 1; if (new < nr[n]) { nr[n] = new; hist[n] = c;} } printf("total number : %d\n", nr[money]); printf("coins : "); for (n = money; n > 0; n -= coin[hist[n]]) printf("%d ", coin[hist[n]]); printf("\n"); free(nr); free(hist); return 0; err: free(nr); return 1; }
661 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 02:34:47 ] >>648 > 2〜9の数字を入力 2はどうなのよ、2の時は?
662 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 04:46:59 ] >>602 お願いします!!
663 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 07:59:57 ] >>655 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10795.txt
664 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 16:09:48 ] >>661 星は正方形で 渦巻きは>>658 でおねがいします
665 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 20:03:15 ] codepad.org/hm0UfG3p
666 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 20:21:22 ] > codepad.org ↑便利だ。 コンパイルまでしてくれる必要は無いんだけど、 もっと色々な言語(Pascalとかverilogとか)貼り付けて、 整形して表示してくれるアプローダ無いかな?
667 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 20:26:18 ] ideone.comは?整形して表示の意味がよく分からないけど
668 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 20:40:12 ] >>667 ありがとう。これでいいです。 こんなんとかPascal似の言語とか貼り付けたかったのです。 ideone.com/zrjGj
669 名前: ◆QZaw55cn4c mailto:sage [2010/07/09(金) 22:04:40 ] ideone.com は対応している言語が多いけれども、コンパイルエラーの表示に難があるからなあ。 ideone.com/ffzm5 正解は、 transform(radians.begin(), radians.end(), sines.begin(), (double (*)(double))sin);
670 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 22:41:13 ] 整数を入力:18 1 2 3!? (中略) 13!? 14 15!? 16 17 18!? こんなプログラムはどうやって書くんですか?
671 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 22:48:40 ] さぁ、世界のナベアツ先生に聞いてちょっ
672 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 22:49:53 ] 誘導されてきたんだなぁ。ってか宿題だったのか。 次は>>1 を読もう。
673 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 22:57:56 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク):3の付く数字と3の倍数の時にアホになりなさい。 [3] 環境 [3.1] OS: (Windows/Linux/等々)windows [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)Borland C++ 5.5.1 [3.3] 言語: (C/C++/どちらでも可 のいずれか) C [4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) 20日(火)
674 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 23:19:04 ] >>673 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10796.txt
675 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 23:27:09 ] >>674 こうすれば文字列操作が不要になるんでは。 int isAho(int n) { if (n % 3 == 0) return 1; while (n) { if (n % 10 == 3) return 1; n /= 10; } }
676 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 23:28:12 ] >>675 最後にreturn 0;するの忘れてた。
677 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 23:45:55 ] 30台もどうかとは思うが300、3000台にもなるとアホばかりで疲れるわ・・・
678 名前:デフォルトの名無しさん mailto:sage [2010/07/10(土) 00:17:05 ] [1] 授業単元:C言語 [2] 問題文(含コード&リンク): 以下の機能を持つプログラムを作ること。 -1から100の数字の中から素数を抽出する (配列に直接数字を指定することは不 可) -抽出した素数を大きい順(降順)にソートする -ソートした素数を1行につき5個表示する(6個目以降は次の行に表示する) 但し、以下の4つの機能を使ったプログラムにすること。 -サブ関数 -配列 -if文 -for文 以下の点に関して工夫をした場合は加点の対象とする -素数の計算時間の低減 -見つけた素数の数のカウント -ソートのアルゴリズム高速化 -実行時間の表示 作成したプログラムの特徴を提出時のコメントに記入すること (素数の見つけ方、ソートの仕方、表示方法での工夫など) [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010/07/23 初心者ですがよろしくお願いします。
679 名前:デフォルトの名無しさん mailto:sage [2010/07/10(土) 02:06:24 ] >>678 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10797.c
680 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 09:13:45 ] ソートはなんならクイッ クソート があるでおじゃる
681 名前:618 mailto:sage [2010/07/10(土) 09:33:45 ] その他制限はありません。一通り学びましたが初心者です。 よろしくおねがいします
682 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 10:10:43 ] >>589 該当する関数をこれに置き換えると早くなる int coin_func_r(int result[], int c[], int m, int n){ int i, num; if(m<0 || result[m]==0) return -1; if(result[m]>0) return result[m]; for(i=0;c[i]>0;i++){ num=coin_func_r(result, c, m-c[i], n+1); if(num>0 && (result[m]<0 || result[m]>num+1)) result[m]=num+1; } if(result[m]<0) result[m]=0; return result[m]; } int coin_func(int c[], int amount){ int i, lcm_all=1, rest, c_max=1, *result, ret; for(i=0;c[i]>0;i++){ lcm_all=lcm(lcm_all, c[i]); if(c_max<c[i]) c_max=c[i]; } result=calloc(lcm_all, sizeof(int)); for(i=0;i<lcm_all;i++) result[i]=-1; for(i=0;c[i]>0;i++) result[c[i]]=1; rest=amount%lcm_all; coin_func_r(result, c, rest, 0); ret=result[rest]+(amount-rest)/c_max; free(result); return ret; }
683 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 10:24:32 ] >>511 ありがとうございます!
684 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 10:28:20 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 二つのint型整数の小さい方の値を返す関数 int i_minof(int x, int y){ /* ... */} を作成せよ。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月12日まで よろしくお願いします。
685 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 10:40:05 ] [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 下に示すように、整数値を読み込んで、その値を0までカウントダウン しながら表示するプログラムを作成せよ。なお、負の値を読み込んだ時は 何も表示しない(改行も表示せず終了する)ようにせよ。 ===== 整数を入力してください:9 9 8 7 6 5 4 3 2 1 0 ===== [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月12日まで よろしくお願いします。
686 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 10:41:38 ] >>684 int i_minof(int x, int y){ return rand()&1?x:y; }
687 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 11:41:06 ] >>684 の訂正です。 [1] 授業単元:C言語入門 [2] 問題文(含コード&リンク): 二つのint型整数の小さい方の値を返す関数 int i_minof(int x, int y){ /* ... */} を作成せよ。 ===== 二つの整数を入力してください。 整数1:49 整数2:92 小さい方の値は17です。 ===== [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月12日まで よろしくお願いします。
688 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 11:42:32 ] >>687 ×小さい方の値は17です。 ○小さいほうの値は49です。 何度も訂正すいません。
689 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 12:21:49 ] >>687 int i_minof(int x, int y){ if(x<y){ return x; } else{ return y; } }
690 名前:689 mailto:sage [2010/07/10(土) 12:24:03 ] 補足すると 条件演算子を使えばもっと簡単になる 参考 ttp://www5c.biglobe.ne.jp/~ecb/c/05_08.html
691 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 14:55:54 ] >>685 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10798.txt
692 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 17:55:41 ] >>691 ありがとうございます。
693 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 18:01:33 ] 【質問テンプレ】 [1] 授業単元:プログラミングC [2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10799.txt [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限:[無期限] お願いします。
694 名前:名無しさん@そうだ選挙に行こう [2010/07/10(土) 23:01:52 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): バイナリ形式で保存されたWindows Bitmap形式の画像ファイルを読み込み、3つの色成分(Blue, Green, Red)に分離し、 それぞれを異なるファイルに保存するプログラムを実装しなさい。 プログラム中でやることは以下のことである。 1.ヘッダ部分を適切に読み込む 2.読み込んだヘッダ部分(ファイルヘッダ、情報ヘッダ)を用いて、適切なバイト数(画素数×1画素あたりのバイト数)を読んでくる。 3.分離したい色成分以外を0に書き換え、ヘッダ部分と色情報をファイルに書き込む。 ただし、以下のような構造体を使用する。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10800.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月12日 [5] その他の制限:特にありません。よろしくお願いします。
695 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 02:36:18 ] クイックソートのソースをとりわけ、クイックソースと言うでおじゃる
696 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 10:40:06 ] 【質問テンプレ】 [1] 授業単元:Visual C++ でのプログラミング演習 [2] 問題文(含コード&リンク):課題4.3.bをお願いします。www.dotup.org/uploda/www.dotup.org1020755.jpg [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:Visual C++ 200 [3.3] 言語:C++ [4] 期限:[無期限]
697 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 11:07:13 ] >>696 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10801.txt 動作例から推測するに、恐らく最小の整数ではなく最小の自然数を出力するのだろう。 (1+1/n)^n は n>0 で単調減少だから、二分探索で解を求める。
698 名前:697 mailto:sage [2010/07/11(日) 11:12:36 ] 単調減少ではなく、単調増加でした
699 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 11:14:30 ] > while 型繰り返し > #include <stdio.h> ん〜〜〜
700 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 11:26:33 ] >>696 C言語でかいた #include<stdio.h> #include<math.h> int main(void){ int n = 0; double fn; while((fn=pow(1+1.0/n, n))<=2.71 || 2.72<=fn) n++; printf("n = %d\n", n); return (0); }
701 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 11:41:33 ] math.hを使うことを宣言し マス! って言ってみたかった
702 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 11:53:54 ] >>697 さま >>700 さま 有難うございました。無事解決できました。 また質問で申し訳ないのですが while((fn=pow(1+1.0/n, n))<=2.71 || 2.72<=fn) n++; ↓ while((fn=pow((double)(1+1/n), n))<=2.71 || 2.72<=fn) n++; のようにdouble型にキャストをすると実行中にエラーが出るのですが何故でしょうか?
703 名前:700 mailto:sage [2010/07/11(日) 11:56:42 ] >>702 ごめん 0 除算エラーだね n の初期値を 0 から 1 に変更してちょ
704 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 11:59:42 ] >>702 n>=2 のとき (double)(1+1/n) は常に 1.0 になってしまうぞ
705 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 12:11:50 ] >>703 n=0→1でエラーはでなくなりました! >>704 Googleさんで調べても分からなかったのですが キャストするとなぜだめ(1.0になる)なのでしょうか・・・?
706 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 12:13:47 ] 除数をキャストしてごらん。あるいはnをdouble型にする
707 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 12:33:26 ] >>706 割り算は整数だけではだめなのですね・・・。 最初から最後までご教授いただきありがとうございました。 #include <stdio.h> double a = (double)1/2; double b = 1/(double)3; double c = 1/4; printf("%f\n%f\n%f\n",a,b,c); 実行結果 0.500000 0.333333 0.000000
708 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 16:02:06 ] インチをセンチに変換するプログラムを作れという課題が出たのですが、わかりません! 明日の1限までに仕上げなければならないので、大至急お願いします! 下のところまでは書けたのですが、???のところがわかりません。 定数を掛けるというところまでは想像出来るのですが、何を掛けたらいいのか全然想像付きません。 #include <stdio.h> #include <stdlib.h> #include <string.h> double to_cm(double in) { return in * ???; } int main(int argc, char *argv[]) { double in; char str[32]; if (argc > 1) { strncpy(str, argv[1], 31); } else { printf("input inch: "); fgets(str, 31, stdin); } in = atof(str); printf("%f [in] = %f [cm].\n", in, to_cm(in)); return 0; }
709 名前: ◆QZaw55cn4c mailto:sage [2010/07/11(日) 16:05:01 ] >>708 return in * 2.56 あと、 fgets(str, 31, stdin); は fgets(str, 32, stdin); でいい。
710 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 16:07:24 ] >>709 出来ましたああああ!!!!!!!!111 先週出た課題でずっと悩んでたんですがこれで提出できそうです! あとプログラムの問題点まで指摘してくださってありがとうございました。 それから、次からはちゃんとテンプレを守ります。すみませんでした。
711 名前:709 mailto:sage [2010/07/11(日) 16:08:05 ] >>708 失礼、 return in * 2.54; だった。1 inch = 2.54 cm。
712 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 16:43:25 ] ちなみに、12インチ=1フィート=30.48cm、3フィート=1ヤード=91.44cm これ豆知識な。マイルの計算もしっかり出来ないと、参るぜ?
713 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 16:45:13 ] ∧_∧∩)) ( ・∀・)彡 パーン! ((⊂彡☆∩ _, ,_ ⊂(⌒⌒(;`Д´) `ヽ_つ ⊂ノ ←>>712
714 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 16:50:16 ] >>713 まぁそうフィートアップするなよ
715 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 17:11:59 ] パンパンパーン ∧_∧ ∩ ( ・∀・)彡☆ ⊂彡☆))Д´) >>714 ☆
716 名前:名無しさん@そうだ選挙に行こう [2010/07/11(日) 18:26:12 ] [1] 授業単元: プログラム [2] 問題文(含コード&リンク): imepita.jp/20100711/659870 画像のプログラムを下のEOFを探して処理を行う方法に書き換えてプログラムを実行せよ また、input.dataの中身を10行未満にしても正常に動く事を確かめてみよ。 int counter=0; while (!input_file.eof()){ input_file>>data[counter]; counter++ } for(i=0;i<counter;i++) output_file << data[i]*2 << '\n'; [3] 環境 [3.1] OS: linux [3.3] 言語: C++ [4] 期限: ([2010年7月11日22時まで] [5] その他の制限: なるべく簡単にしてください。お願いします。
717 名前:名無しさん@そうだ選挙に行こう [2010/07/11(日) 18:29:40 ] [1] 授業単元: プログラム [2] 問題文(含コード&リンク): imepita.jp/20100711/660110 画像のプログラムの九九表を以下の様に書き換えよ 1 画面に表示してた部分(coutの部分)をファイルに書き出す様にする 2 一番目のcoutにある''を','に変更する 3 出力ファイル名を"output.csv"とする。 この九九表が入っているファイルをExcelで読み込んで、九九表を見ることができるか確かめてみよ [3] 環境 [3.1] OS: linux [3.3] 言語: C++ [4] 期限: ([2010年7月11日22時まで] [5] その他の制限: なるべく簡単にしてください。お願いします。
718 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 19:19:51 ] >>693 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10802.c
719 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 22:01:05 ] >>717 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10803.txt
720 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 22:46:43 ] [1]授業単元:プログラミング基礎 [2] 課題文:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10804.txt [3] 環境:指定無し 言語C(なるべく) [4] 9/1迄(夏期課題) [5]意味がよくわからないので丸投げします
721 名前:名無しさん@そうだ選挙に行こう [2010/07/11(日) 23:08:44 ] >>719 ありがとうございます。でも、このプログラムをコンパイルしても、 続行するには何かキーを押してください で終わってしまいます
722 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 23:13:01 ] >>721 実行ファイルと同じところに、なにか新しいcsv ファイルが作成されていませんか?
723 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 23:15:40 ] >>20 といい >>720 といい、変な傾向の宿題が出るようになったものですね。
724 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 23:20:59 ] 別に変でもないよ。処理の内面的な部分を知る課題だろ。
725 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 23:25:41 ] 仕様をもとにプログラムを作成する、というのがまっとうだと思うんですが。 判じ物の問題は、「プログラム基礎」とか「暗号理論」という単元名とは全然違うのでは。
726 名前:デフォルトの名無しさん [2010/07/11(日) 23:37:13 ] >>722 プログラムのコンパイルした時にExcelを開いておけばいいって事ですか
727 名前:名無しさん@もう選挙は終わってるんで mailto:sage [2010/07/11(日) 23:37:20 ] >>725 それいうなら結局誰も答えなかったみたいだけど >>234 とかがある意味最もC言語の宿題っぽいw(けど学校の宿題としては やはり不適なんだろなw)
728 名前:デフォルトの名無しさん [2010/07/12(月) 00:04:27 ] >>722 実行ファイルと同じところに、Excelで保存したものがはいっているんですが、もしかしてそれですか
729 名前:デフォルトの名無しさん [2010/07/12(月) 00:14:16 ] 誰か716の問を助けてください
730 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 01:27:34 ] >>679 亀レスですみません ありがとうございました
731 名前: ◆QZaw55cn4c mailto:sage [2010/07/12(月) 02:39:35 ] >>716 単に指示通りにプログラムを入力しただけです。 codepad.org/73sQ9rsX
732 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 02:58:38 ] >>725 何が言いたいのかさっぱり分からんが、プログラムを動かしている電子機器の 基本的な仕組みも知らないでコードを書くとか・・・どれも基本は同じだし。 IFや数値を扱うにしても、もう既に実装されているコンピュータの仕組みが 大きく関与しているし。
733 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 03:01:15 ] >>732 >>20 >>720 のような出題を批判しているだけです。
734 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 03:02:17 ] >>720 っつか、学んだ内容が分かればヒントが得られるかもしれないが・・・ 法則が分からん。511までで何か数字を弄れば気づくかもしれんが。
735 名前:デフォルトの名無しさん [2010/07/12(月) 06:29:39 ] 2進数にしたときに1の数が順番に増えていくのだけはわかった。 ソートの条件はさっぱりだが。
736 名前:デフォルトの名無しさん [2010/07/12(月) 07:07:43 ] >>694 お願いします。。。
737 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 08:16:55 ] 順応性を高めなさい!そしてあるがままを受け止めなさい。
738 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 10:12:44 ] 実験(数値実験、確認、解析) システムプログラミング(アプリケーション実装) マネジメント(ネットワーク構築 etc) 開発(OS,言語、処理系、ライブラリの整備) 教育(カルチャーの紹介) ....まだあるかも ことコンピュータの世界(実世界に非ず)の教育を 単一言語で行うことには相当無理があるよな
739 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 10:34:43 ] そんなのだいたいCでやってるという現実。
740 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:02:57 ] まアセンブラを言語と考えるのならこれ以上に万能な 言語は無いな
741 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:03:01 ] だからCみたいな面倒な言語を経験しておけば他のスクリプト言語も 簡単に使えるという意図なんだろう
742 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:05:00 ] お前らのCに対する意見、気持ちはよーく分かった。だから早く 初めてのCもしてこい、なっ!
743 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:21:10 ] >>735 当たり前だろwww
744 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:34:36 ] >>738 Cが他の言語に対して圧倒的に強いのは 開発 だろな 教育できるような世界じゃないだろうけど
745 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:37:42 ] はい、Cなら色々と開発できます!
746 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 11:40:07 ] Cは非プログラミング言語で言うと英語みたいなもんだよ。 言語設計が優れてるか否かというよりも(まぁ優れてはいるんだろうが)、 みんなが使って、長い間使ったから、デカイ顔できるし信頼も置ける。
747 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 12:54:06 ] >>720 1 になっている bit の数を x とすると x に対して昇順にするのが大前提 x%3==0 のとき数値で昇順 x%3==1 のとき数値で降順 x%3==2 のときが分からない 数値を昇順にソートし大きい方から使う x=2 の場合だと逆順に見て 8 ? 7 ? 6 ? 5 ? 4 ? 3 ? 2 ? 1 こんな感じ x=5 の場合だと逆順に見て 5 ? 4 ? 3 ? 2 ? 1 ? ? ? 4 ? 3 ? 2 ? 1 ? ? ? 3 ? 2 ? 1 ? ? ? 2 ? 1 ? ? ? 1 ? ? ? こんな感じ
748 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 13:18:12 ] >>720 >>747 の条件分岐 x%3==0 と x%3==1 のときだけ実装 #include<stdio.h> #include<stdlib.h> int bit_count(int value){ int ret=0; while(value>0){ ret+=value&1; value>>=1; } return ret; } int num_cmp(const int *a, const int *b){ int a_bits, b_bits, ret=0; a_bits=bit_count(*a); b_bits=bit_count(*b); if(a_bits<b_bits) return -1; if(a_bits>b_bits) return 1; if(*a<*b) ret=-1; if(*a>*b) ret=1; if(a_bits%3==1) ret=-ret; return ret; } int main(void){ int num[4096], i; for(i=0;i<4096;i++) num[i]=i; qsort(num, 4096, sizeof(int), num_cmp); for(i=0;i<4096;i++){ if(bit_count(num[i])%3!=2) printf("%d:%d\n", i, num[i]); else printf("%d:???\n", i); // よく分からないので数値を出力しない } return 0; }
749 名前:デフォルトの名無しさん [2010/07/12(月) 13:40:45 ] 1 乱数を使って計算機とじゃんけんをするゲームを作成せよ。 人間の入力はグーは0、チョ基は1、パーは2とし、勝ち、負け、引き分けの判定をすること。 乱数の初期設定のために srand((unsigned int)time(NULL)); を使うこと。 2 1を改良して0,1,2以外の値が入力されるまで繰り返し勝負を続けるものを作成せよ。 よろしくお願いします。
750 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 17:20:04 ] >>749 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10806.txt kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10807.txt
751 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 18:47:31 ] [1] 授業単元:プログラミング演習 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10808.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名:gcc [3.3] 言語:C [4] 期限:7月14日まで [5] その他の制限: お手数をおかけしますが、よろしくお願いします。
752 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 18:53:30 ] >>751 (1) i = left - 1; //(1)________ j = right + 1; //(2)________
753 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 18:57:22 ] >>751 (2) return a->height - b->height; // (1)______ /*高さで比較*/ qsort(a, N, sizeof(person_t), (int (*)(const void *, const void *))compare); // (2)___________________________);
754 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:29:58 ] 内容: [1] 授業単元: プログラミング開発基礎 [2] 問題文 複数あるのでこちらで kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10809.txt [3.1] OS:(Windows [3.2] VC 6.0 [3.3] 言語:C [4] 期限:なし [5] 制限:なし 毎週毎週申し訳ありませんがよろしくお願いします
755 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:50:19 ] [1] 授業単元: 応用プログラミング [2] 問題文(含コード&リンク): 任意のサンプル値(2のべき乗)を入力し、計算結果を出力する2次元FFTのプログラムを作成せよ。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Visual Studio2008 [3.3] 言語: どちらでも可 [4] 期限: 7月17日まで www.kurims.kyoto-u.ac.jp/~ooura/fftman/index.html FFT、二次元FFTに関しては、上記のサイトの1.2、3.1を参考にしていたのですが、 入出力表示の仕方などが良く分からなかったので、よろしくお願いします。
756 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 19:53:35 ] [1] 授業単元: ソフトウェア信頼性 [2] 問題文(含コード&リンク): 問題文+自分で作った部分は以下のファイルに kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10810.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: bcc [3.3] 言語: C [4] 期限: 2010年7月12日 24時
757 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 21:14:47 ] >>754 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10811.txt
758 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 21:35:17 ] [1] 授業単元:プログラミング実習 [2] 問題文(含コード&リンク):53!を正確に計算して出力するjavaプログラムを作成せよ。ここでは1桁 分の数を記憶するオブジェクトを多数作りそれらの協調で計算を進めること。 [3] 環境 [3.1] OS: unix [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: c [4] 期限: 7月13日 よろしくおねがいします
759 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 21:37:27 ] >>758 ちょっと何を言っているのかわからない
760 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 21:53:46 ] [1] 授業単元:プログラミングT [2] 問題文(含コード&リンク):3+6+9+12+・・・+n≧100の成立する最小のnの値と nがその値をとる場合の左辺の値(3〜nまでの和)を 求めて表示するプログラムをdo-while文を使って作成せよ。 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ:gcc [3.3] 言語:C言語 [4] 期限:2010年07月13日17:00まで [5] その他の制限:問題文中にある制限以外に制限はありません。 どうかよろしくお願いします
761 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:00:27 ] >>756 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10812.txt
762 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:02:40 ] [1] 授業単元:プログラミング実習 [2] 問題文(含コード&リンク):53!を正確に計算して出力するjavaプログラムを作成せよ。1桁 分の数を記憶するオブジェクトを多数作り計算するプログラムにすること。 [3] 環境 [3.1] OS: unix [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: c [4] 期限: 7月13日 よろしくおねがいします
763 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:05:40 ] うぜえな
764 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:08:49 ] >>761 ありがとうございます 助かりました
765 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:11:12 ] >>762 が理解できないんだけど
766 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:14:10 ] >>760 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10813.txt
767 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:14:16 ] >>758 >>762 C なのか JAVA なのか?
768 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 22:19:49 ] >>767 問題文だけ読むとjava 環境だけを見るとcっぽい あくまで推測ですが・・・
769 名前:760 mailto:sage [2010/07/12(月) 23:02:37 ] >>766 ありがとうございました
770 名前:デフォルトの名無しさん [2010/07/12(月) 23:18:18 ] すみません、どなたか>>694 お願いいたします。
771 名前:デフォルトの名無しさん [2010/07/12(月) 23:52:39 ] >>762 codepad.org/rW111uZW
772 名前: ◆QZaw55cn4c mailto:sage [2010/07/13(火) 01:05:09 ] >>694 codepad.org/xqiSFBEr コマンドライン第一引数に対象となる bmp ファイルを指定すると、r.bmp, g.bmp, b.bmp を出力します。 24bit bmp ファイルにしか対応していません。そのほかのタイプの bmp ファイルに対応する必要があれば、ご連絡ください。
773 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 02:02:59 ] そういえば、より汎用的なソースコードに書き換えた麻呂に負けた悔しさなのか 素人麻呂相手に必死にに噛み付いていたあいつはどこへ行ったんだろうか?
774 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 02:19:51 ] >>773 そのより汎用的なソースとやらを教えてくださいな。
775 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 02:24:58 ] こんな時間に釣れるとは思わなかったよ、麻呂と勘違いして意味不明な 戻り値の話をしちゃったおバカさんw
776 名前: ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ mailto:sage [2010/07/13(火) 02:35:36 ] /二__,--、r'"___、 ヾト、.ヽ レ'"~,-,、 ! ! ' '" ̄ .ノ\ヾ:、 K/ー'~^~_/ ヽミ:ー‐‐'" ヽ i !〉ー―'"( o ⊂! ' ヽ ∪ Y」_ i ∪ ,.:::二二ニ:::.、. l 、... ! :r'エ┴┴'ーダ ∪ ! !l .i、 . ヾ=、__./ ト=. ヽ 、∪ ― .ノ .,!
777 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 02:36:43 ] またおまえかよ。。。 コテつけろよ>>775
778 名前:デフォルトの名無しさん [2010/07/13(火) 02:45:16 ] 【質問テンプレ】 [1] 授業単元:画像処理プログラミング [2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10814.zip 画像を8×8 画素のブロックに分割します。各ブロック毎に平均値を求めます。 ※average という関数を作ってブロック内の平均値を求めても良いでしょう。 ブロック内の画素すべての輝度値を平均値で置き換えます。どのような画像が得られますか? 8×8画素のブロックサイズでモザイク処理を行うプログラムと、モザイク処理後の画像を提出しなさい。 [3] 環境 [3-1] OS:Windows [3-2] VC 2008 [3-3] 言語:C言語 [4] 期限: 7/13 13時がリミット [5] その他の制限: getPixelは使わない方法で現状のコードを変更した程度で完成できればベストです。
779 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 04:14:26 ] lennaたん、かわいいよ、lennaたん
780 名前:デフォルトの名無しさん [2010/07/13(火) 05:39:44 ] >>750 ありがとうございます。
781 名前:デフォルトの名無しさん [2010/07/13(火) 08:53:35 ] [1] 授業単元:プログラミングC [2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10816.txt いっぱいあります。 [3] 環境 [3-1] OS:Windows [3-2] VC 2008 [3-3] 言語:C言語 [4] 期限: 7/20 お願いします。
782 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 09:08:53 ] 1*3*5*7*9*・・・*111を11で割った剰余を求めよ
783 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 09:51:05 ] A=1*3*5*7*9 B=13*・・・*111 とおくと、 与式は A*11*B と書ける。 これは 11 で割り切れる。 つまり、題意の剰余は 0 。
784 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 11:32:47 ] [1] 授業単元:プログラミング演習III [2] 問題文(含コード&リンク): 以下の機能を含む整数版秀丸エディタ用のDLLを作成せよ。 ・返り値がint型で、パラメータ(整数)を渡すと、「整数*5」の結果を返す。 ・返り値がchar型で、パラメータ(文字列)を渡すと、文字列の先頭にHello!!を付けた「Hello!!+文字列」の結果を返す。 以下のサイトも参考にする事。 homepage3.nifty.com/kons/hidemaru/helpsite/hidemac/html/200_Dll.html [3] 環境 [3.1] OS:Windows 32bit [3.2] コンパイラ名とバージョン: Visual C++ 2010 Express [3.3] 言語:C++ [4] 期限: 2010/07/14 10:40 [5] その他の制限: なし
785 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 12:28:53 ] >>762 は環境はcですが、問題はjavaです。 どうかよろしくお願いします。
786 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 13:57:12 ] コンピュータ基礎1 OS windows7 32bit gcc2.9.5 言語 c 期限 なし 課題でいくつかc言語の課題が出て、本当に簡単なのは何とか解いたのですが2つほど分からないものがあったので よろしければ教えていただきたいです。 @キーボードから1つの実数値xを入力し、絶対値を表示するプログラムを作りなさい Aキーボードからテストの得点m(0以上100以下)を入力し (1) m<60 の場合は「不合格」 (2) 60≦m<80 の場合は「普通」 (3) 80≦m の場合は「優秀」 と表示するプログラムを作りなさい。
787 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 14:09:43 ] >>786 48 名前:デフォルトの名無しさん[sage] 投稿日:2010/07/13(火) 14:00:23 >>46 int main() { double x; scanf("%lf", &x); printf("%f\n", fabs(x)); } int main() { int m; scanf("%d", &m); printf("%s\n", m < 60 ? "不合格" : m < 80 ? "普通" : "優秀"); } 転載
788 名前:デフォルトの名無しさん [2010/07/13(火) 15:12:30 ] [1] 授業単元:プログラミング演習I [2] 問題文(含コード&リンク): 課題 (1000以下の完全数)正整数kが等式 k=(kの約数の内、k以外のものの総和) を満たす時、kは完全数であるという。たとえば、6の約数は 1,2,3,6の4個であり、6=1+2+3であるため、6は完全数である。1000以下の完全数をすべて出力するJavaプログラムを作れ。 [3] 環境 [3.1] OS:unix [3.2] コンパイラ名とバージョン: gcc [3.3] 言語:C [4] 期限: 2010/07/14 [5] その他の制限: 環境はcですがjavaの問題です。 お願いします。
789 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 15:44:30 ] それ自身を含まない約数を足してイークォールか比較すりゃええがな 俺はメルセんヌ素数を使うけど
790 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 16:28:51 ] 以下の入力をして、これを二次元配列に代入していく方法がわかりません。 当方scanf+Enterによる単純な入力しかしたことがありません。 空白を認識して代入先を変える方法?と考えて手が止まりました。 /*以下入力*/ 3 /*変数int nへ代入する。今から3*3行列を入力するという意味*/ 3 5 7 2 5 8 6 8 1 /*入力ここまで*/ for(i=0;i<n;i++){ for(j=0;j<n;j++){ printf("%d ", a[i][j]); }printf("\n"); }printf("\n"); の結果は上記の 3 5 7 2 5 8 6 8 1 を表示するように二次元配列aに代入する。
791 名前:790 mailto:sage [2010/07/13(火) 16:31:19 ] テンプレ忘れ [1] 授業単元:プログラミング [2] 問題は>>790 [3] 環境 [3.1] OS: Windows [3.2] Visual C++ 2008 [3.3] 言語: C [4] 期限: 明日 [5] その他の制限: 入力はscanfにこだわらなくても良いですが、なるべく単純にお願いします。
792 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 18:13:07 ] >>790 #include <stdio.h> #define loop(i,n) for (i = 0; i < n; i++) int main(void) { int i, n, j, a[10][10]; printf("n="); scanf("%d", &n); for (i = 0; i < n; i++) for (j = 0; j < n; j++) scanf("%d", &a[i][j]); for (i = 0; i < n; i++) { for (j = 0; j < n; j++) printf("%d ", a[i][j]); printf("\n"); } printf("\n"); return 0; }
793 名前: ◆QZaw55cn4c mailto:sage [2010/07/13(火) 18:38:51 ] >>694 バグがありましたので修正いたします。 codepad.org/es0chPgG
794 名前: ◆QZaw55cn4c mailto:sage [2010/07/13(火) 18:46:36 ] >>778 >>694 と並行して作成しておりました。とりあえずできているものをあげておきます。 >>778 に示されているソースコードに沿って書き直す作業は、余裕があれば行います。 第一引数にターゲットとなる bmp ファイル名、第二引数に平均化した bmp ファイル名を指定します。 入力ファイルとしては、256色 bmp と 24ビット bmp に対応しています。出力ファイルは 24ビット bmp です。 codepad.org/M7WwUgUS
795 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 18:47:54 ] >>775 汎用的なソースとやらは、実は無いんですね。
796 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 19:07:59 ] >>792 どうもありがとうございました。
797 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 19:46:44 ] >>788 >>785 も同一人物だとしたら頭の中身がどこかから漏れてないか?
798 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:14:14 ] >>785 > >>762 は環境はcですが、問題はjavaです。 完成ソースをコンパイルする時のコマンドは、gcc、javacのどっち?
799 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:48:50 ] >>788 >>506 , >>571
800 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 22:18:55 ] >>784 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10818.txt
801 名前:デフォルトの名無しさん [2010/07/13(火) 22:52:55 ] 【質問テンプレ】 [1] 授業単元: 計算機プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10819.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Visual Studio2008 [3.3] 言語: C [4] 期限:7/24 [5] その他の制限: なし 電気電子系の問題です。 よろしくお願いします
802 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:10:48 ] [1] 授業単元:オペレーティングシステムプログラミング演習 [2] 問題文 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10820.txt [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C言語 [4] 期限: 2010年7月15日17:00まで [5] その他の制限:特にありません よろしくお願いします
803 名前:デフォルトの名無しさん [2010/07/13(火) 23:27:12 ] >>800 ありがとうございます
804 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:28:45 ] / ̄\ │34nm | \_/ インテル! _|_|_ n: / \ n: || / ヽ || f「| |^ト | :::\::/::: | 「| |^|`| エーーックス |: :: ! } | <(゚)>::::<(゚)> | | ! : ::} ニジュウゴ ヽ ,イ ヽ (__人__) / ヽ ,イ エーーーッムッッ! \ `⌒´ /
805 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:37:07 ] >>798 javacです。 よろしくお願いします。
806 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:13:03 ] >802 778lenna-tan10815.c kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10822.c
807 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:30:21 ] >>806 ファイルが消えてるみたいで あつかましいのですが、もう一度あげていただくことは出来ないでしょうか
808 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:35:30 ] >>795 単にマクロで求める数値を適当に変えられる仕様にしただけであって 大して改変はしていなかったしw
809 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:55:05 ] >807 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10823.c だった
810 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:58:36 ] >>809 すいません、ありがとうございます
811 名前:デフォルトの名無しさん [2010/07/14(水) 01:00:16 ] [1] C言語プログラミング演習 [2] 問題文(含コード&リンク):www.dotup.org/uploda/www.dotup.org1025743.jpg [3] 環境 [3.1] OS: (Windows vista [3.3] 言語: C [4] 期限: 2010年7月14日まで [5] その他の制限: 特になしです。 よろしくお願いします。
812 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 01:02:15 ] AKB48の篠田と板野が好きです、けど モー娘。の石川梨華はもっと好きです。
813 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 01:18:57 ] >>752 >>753 ありがとうございました!
814 名前:デフォルトの名無しさん [2010/07/14(水) 01:59:24 ] >>811 codepad.org/9aQwdDgL
815 名前:デフォルトの名無しさん [2010/07/14(水) 03:28:55 ] [1] C言語プログラミング演習 [2] 問題文 name(名前: char型配列), height(身長: float型変数), bloodType(血液型: char型変数)をメンバに持つ構造体を宣言し, 128名分が記憶可能になるようその構造体の配列を定義せよ.また,その配列に対して値を入力し, さらに表示できるようにせよ.構造体のメンバ値を表示するには、ひとつの構造体の各メンバの値を表示する関数を作成すること。 % ./bodyData 1人目のデータ: 立命太郎 175.5 A 2人目のデータ: 野路花子 169.0 B 3人目のデータ: 衣笠一郎 180.4 O 4人目のデータ: 0 0 0 ← 0 0 0 と入力すると終わる. 名前 身長 血液型 立命太郎 175.5 A 野路花子 169.0 B 衣笠一郎 180.4 O % ヒント: 各人の名前、身長、血液型のデータを1行で入力するためには、参考12.1に示されたfgets()関数で、これらを1度に取り込み、最初の空白までを名前とみなし、次の空白までを身長とみなし、 次に改行までを血液型をみなせばよい。これらを別々の文字列として、必要に応じて整数や浮動小数点数に変換し、構造体のメンバに設定すること。 ヒント: ひとつの構造体の各メンバの値を表示する関数に構造体を引渡すことを繰り返えせばよい。 [3] 環境 [3.1] OS: (Windows vista [3.3] 言語: C [4] 期限: 2010年7月14日まで [5] その他の制限: 実行結果までできれば表示してほしいです
816 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 03:48:45 ] >>806 ん、例の出したり引っ込めたりか‥‥‥。
817 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 03:49:02 ] くせぇくせぇ、麻呂のクソースの臭いがぷんぷんすんぜっ
818 名前:816 mailto:sage [2010/07/14(水) 03:50:48 ] 失礼。
819 名前:デフォルトの名無しさん [2010/07/14(水) 03:58:00 ] [1] C言語プログラミング演習 [2] 問題文(含コード&リンク 整数を各要素の値とする、2つの2次元ベクトルが与えられたときに、それらの内積を計算する関数innerProduct()を使って、この2つのベクトルが直行しているかどうかを判定するプログラムを作成せよ。 2つの2次元ベクトル U(ux,uy)とv(vx,vy) の内積は, ux × uy + vx + vy で計算でき、2つのベクトルが作る角度は、 内積が正なら90°より小さく 内積が0なら 90° 内積が負なら90°より大きい この考え方は3次元のベクトルでも同じである。上記のプログラムを、3次元のベクトルにも対応したものにすぐに修正できるようにするには、マクロを使うことが有効である。 どのようにすればよいかを考えよ。 2次元の場合 % ./innerProduct input u[0]: 2 input u[1]: 6 input v[0]: 9input v[1]: -1 u=[ 2 6 ], v=[ 9 -1 ] inner product is 12 The angle of the vectors is less than 90 degree. % 3次元の場合 % ./innerProduct input u[0]:input u[1]: 1input u[2]: 2input v[0]: 6input v[1]: 3input v[2]: -2 u=[ 0 1 2 ], v=[ 6 3 -2 ] inner product is -1 The angle of the vectors is greater than 90 degree. % [3] 環境 [3.1] OS linux [3.3] 言語: C [4] 期限: 2010年7月14日まで [5] その他の制限 特になし
820 名前:デフォルトの名無しさん [2010/07/14(水) 04:00:27 ] [1] C言語プログラミング演習 [2] 問題文(含コード&リンク 標準入力から正の整数値を読み込み,0が入力されたらそれらの整数を小さい順に表示するプログラムを作成せよ. 以下のような処理の流れでプログラムを作成すること。 数字を読み込むごとに, それまでに入力された数値が格納された配列の最後の要素から, 先頭に向かって順に大小の比較を行う. これにより、読み込んだ数字の方が入るべき位置がわかる. 読み込んだ数字が入るべき箇所を空けるために、 既に記憶されている配列の要素のうち、 この数字よりも大きな数字をひとつ後ろにずらす。 空いた箇所に読み込んだ数字を代入する. 次に入力される数字の処理へ移る. % ./ordering 正整数: 17 正整数: 3 正整数: 9 正整数: 4 正整数: 0 入力された整数は小さい順に 0, 3, 4, 9, 17 です. % [3] 環境 [3.1] OS linux [3.3] 言語: C [4] 期限: 2010年7月14日まで [5] その他の制限 特になし
821 名前:デフォルトの名無しさん [2010/07/14(水) 04:08:05 ] [1] C言語プログラミング演習 [2] 問題文(含コード&リンク 文字列yを文字列xの最後に連結する関数stringcat(char [], char [])を作成せよ.この関数を用いて、入力された2つの文字列を連結するプログラムを作成せよ。 注意: stringcat()を呼び出すときは,連結後の文字列がxの配列長を超えないように注意すること. % ./catenate 文字列x (20字まで)? linux 文字列y (20字まで)? kadai 連結後のx: linuxkadai ←全部で20字以内なので連結可能 20字を超える場合は連結不可能とする [3] 環境 [3.1] OS linux [3.3] 言語: C [4] 期限: 2010年7月14日まで [5] その他の制限 特になし
822 名前:デフォルトの名無しさん [2010/07/14(水) 04:13:00 ] [1] C言語プログラミング演習 [2] 問題文(含コード&リンク 文字列xに文字列yが含まれるかどうかを判定する関数str_comp(char [], char [])を作成せよ.この関数を用いて、入力されたひとつめの文字列にふたつめの文字列が含まれているかを判定するプログラムを作成せよ。 % ./compare 文字列x (64字まで)? kadaigakitui 文字列y (64字まで)? dai "kadaigakitui"に"dai"は含まれます. % ./compare 文字列x (64字まで)? kadaigakitui 文字列y (64字まで)? ycx "kadaigakitui"に"ycx"は含まれません. [3] 環境 [3.1] OS linux [3.3] 言語: C [4] 期限: 2010年7月14日まで [5] その他の制限 特になし
823 名前: ◆QZaw55cn4c mailto:sage [2010/07/14(水) 04:34:26 ] >>815 codepad.org/NLFiBXoJ
824 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 05:16:06 ] fgets△〜
825 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 07:15:41 ] >>820 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10824.c
826 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 08:02:12 ] >>821 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10825.c >>822 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10826.c
827 名前:デフォルトの名無しさん [2010/07/14(水) 08:33:18 ] >>814 ありがとうございました 助かりましたっ!
828 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:01:59 ] >>820 漏れもやってみた kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10827.c
829 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:45:18 ] for(j = i; j > 0 && n < a[j - 1]; j--) a[j] = a[j - 1]; a[j] = n; ってやるのが普通。
830 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:47:42 ] 普通(笑) お前がそう思うんならそうなんだろう、お前ん中では
831 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:54:41 ] >>829 クソースを推敲したならお主が纏めて記述したのを提出するでおじゃるよ
832 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 09:57:22 ] いやよ、久々にこのスレを覗いたんだが、相変わらず毎年過去に出されたのと 似たようなものばっかでさ。たまには捻くれてクソースにしたくなるじゃん。 俺の勝手だがw
833 名前:デフォルトの名無しさん [2010/07/14(水) 11:02:31 ] 【質問テンプレ】 [1] 授業単元:プログラミング [2] 問題文(含コード&リンク): リストへの要素の追加を行うプログラムで、以下のプログラムを完成させよ。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10828.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2010年7月18日まで [5] その他の制限:特にありません。よろしくお願いいたします。
834 名前:デフォルトの名無しさん [2010/07/14(水) 12:58:43 ] >>820 codepad.org/QeE6s096