- 1 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 22:18:31 ]
- あなたが解けない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++の宿題を片付けます 106代目 pc11.2ch.net/test/read.cgi/tech/1209810861/
- 445 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:44:28 ]
- しかしコマンドでaddとかってPC88のころのAVGみたいだなw
- 446 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:45:03 ]
- >>443
興味深いなあ。 生徒によって異なる実装が行われやすいような問題になってるね。
- 447 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:47:03 ]
- コマンドの扱いってどうすればいいんだろ?
addt とか間違った場合の挙動は? 何もsaveしてない状態でloadしたら? 設問ってこんないい加減なの?
- 448 名前:421 mailto:sage [2008/06/02(月) 22:49:34 ]
- 皆様の助言の下、なんとかそれっぽいものが作れました。
教えてくださった方々、本当にありがとうございました。 >>434 ですよね。結局自分で解釈して作ってみましたが・・・
- 449 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:51:40 ]
- >>448
なんだ、できるんじゃんw おつかれさーん
- 450 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:58:16 ]
- >>444
すいません、学校のPCにソースが入ってて自宅のPCには入ってないんです。 主に学校で作業を行ってて、そこで分からなかった関数など自宅で調べてる感じなので、すいません。 >>445 そうなんですか?よく知らないんですけど、そうなってましたw >>446 そうみたいです、だから早く出来た人は皆答え違ってるみたいです。 >>447 間違えた場合はもう1度メニューを出す形でお願いします。 saveについては自分も分かってません、同じ様なケース考えたんですがどう対処していいか分からなくて。 されないことを祈るというカタチでお願いしますw明日に先生に質問してみます。 設問かなりいい加減です、動作例とバイト数だけ書いてあって、後は自分で考えてって感じでしたorz
- 451 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:01:26 ]
- >>448
麻呂がクソースを書くって言ったじゃないでおじゃるか〜〜
- 452 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:01:58 ]
- >>450
んじゃまた明日ソース持っておいで。 途中まで作ってるならそれベースのほうが理解できるでしょ。 覚えてる範囲で再現してもいいけど、ちょっと難しいでしょ?
- 453 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:02:52 ]
- [1] プログラミング
[3][3.1] XP [3.2] 不明 [3.3] C [4] 期限: 080604 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6775.txt のプログラムを実行すると 1>c:\documents and settings\keita\my documents\visual studio 2008\projects\1212\1212\1212.cpp(13) : error C3874: 'main' の戻り値の型には、'int' を使用してください。'stack' は使用できません というエラーが起こります
- 454 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:04:41 ]
- [1]授業単元 C言語
[2]問題 平均、分散、標準偏差を求めよ。 [3]環境 vista コンパイラ cygwin [4]期限 明日の昼まで [5]その他 ヘッダーはstdio.h stdlib.h math.hのみ? 情報が少ないかも知れませんがよろしくお願いします。
- 455 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:06:00 ]
- >>453
main() → int main()
- 456 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:06:08 ]
- >>453
main() の戻りが消えてる。 void main() とか int main() とかになるのが普通
- 457 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:07:48 ]
- >>452
分かりやすいとは思いますが、ほとんど作ってないですorz フローチャート作成にほとんどの時間費やしてやっとこさソース書いてみようってところです。 しかもそのフローチャート、合ってるか先生が休んだおかげで確認もしてませんorz まぁ、ソース作成してる時にどう処理するんだ?って疑問が沢山出てきたんで明らかに間違ってるんでしょうが・・・。 明日また作成するので出来るところまでやってみようと思います。 明日、宜しくお願いします。
- 458 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:08:04 ]
- >>436
#include <stdio.h> #include <stdlib.h> #include <time.h> //0から1までの乱数 double RandBetweenFromOneToZero() { return (double)rand() / ((double)RAND_MAX + 1); } //0から19までの乱数 int RandBetweenFromZeroToTwenty() { return rand()%20; } int main() { double drdm; srand((unsigned)time(NULL)); drdm = RandBetweenFromOneToZero() + RandBetweenFromZeroToTwenty(); printf("%lf \n",drdm); return 0; }
- 459 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:13:34 ]
- >>457
お。いい子だーw きっとちゃんとしたソースもらえると思うよ。がんばってね。 ってかさ、このスレって前からこんなピリピリした雰囲気だった? なんか殺伐としてる。。2chだからといえばそうなんだけど><
- 460 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:14:29 ]
- >>454
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6777.txt
- 461 名前:448 mailto:sage [2008/06/02(月) 23:14:34 ]
- >>451
自分のソースに自信がないので>>451さんのソースも見せていただけますか? 他にも作ってくれていた方がいたら見せていただけると有り難いです。
- 462 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:15:35 ]
- 今、カニ雑炊を食べ終わったから、書き続けているでおじゃる
- 463 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:20:08 ]
- 一休さんかよw
…まさかとは思うが、作ったものをまずうpしてみ? 足利将軍様はしばらくうp待ってみてくだされ
- 464 名前: ◆tr.t4dJfuU mailto:sage [2008/06/02(月) 23:25:32 ]
- 272に質問を書いたものです。やさしい職人さんに>>332のプログラミングを書いていただいたのですが、
画像は読み込めるのですが、RGB値を出す事が出来ませんでした。再びですが、どなたかよろしくお願いできませんか? 解決方法もともにおいえてください。以下に再び質問を欠かさせていただきます。 [1] 実験解析 [2] プログラムと同じフォルダ内のbmpファイル(256色)(200*300pix)をプログラム実行 時に読み込ませ,1pixごとにそのRGB値を調べさせてCSV形式で書き出すプログラム [3] 環境 [3.1] OS:Xp [3.2] BCC Developer [3.3] 言語 c [4] 期限: 無期限ですが,できるだけ早いうちに宜しくお願いします. [5] その他の制限:特にはありません.私は初心者なので,後学のために解説等が 含まれていたらうれしいです.
- 465 名前:448 mailto:sage [2008/06/02(月) 23:29:00 ]
- >>463
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6779.txt
- 466 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:34:25 ]
- >>464
解説というかBMPのファイル仕様がこうなってる www.kk.iij4u.or.jp/~kondo/bmp/ でも>>322のプログラムはヘッダ部分を決め打ちで読んでるな・・・
- 467 名前: ◆tr.t4dJfuU mailto:sage [2008/06/02(月) 23:40:08 ]
- >>466
ということは、画像読み込みから変更したほうが良いという事なのでしょうか?
- 468 名前:316 mailto:sage [2008/06/02(月) 23:43:09 ]
- >>323
>>328 どちらも実行できました! >>338 追加実行できました。 みなさんありがとうございました!
- 469 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:44:46 ]
- >>463
もう少し待ってたもう、今最後の free(); 処理の部分を書いているでおじゃ〜る
- 470 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:50:59 ]
- [1] プログラミング演習
[2] x.datというファイルがあり その中には 1 4 5 6 16 8 9 ,,,,,,,,,というような形式で数字がN個蓄えられている このファイルを読み込み、中に入っている数字を配列x[i]の中に蓄え x[0]からx[N]まで全て足した値を求めなさい という問題です 言語:C言語 制限などはありません よろしくおねがいします [3] 環境 [3.1] OS:Xp [3.2] BCC Developer [3.3] 言語 c [4] 期限: 無期限ですが,できるだけ早いうちに宜しくお願いします. [5] その他の制限:特にはありません.私は初心者なので,後学のために解説等が 含まれていたらうれしいです.
- 471 名前:470 mailto:sage [2008/06/02(月) 23:52:23 ]
- すいません環境以下の方の部分は無視してください、ごめんなさい
- 472 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:53:45 ]
- ttp://www13.plala.or.jp/kmaeda/winc/dos_pai.htm
の円周率を求めるプログラムで小数点以下が4桁で区切られてるんですけど何処で定義してるんでしょうか?
- 473 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:16:55 ]
- >>455
>>456 迅速な回答ありがとうございます。 両方を試してみた結果 (12) : error C2628: 'stack' の後に 'int' を続けて記述できません(セミコロン ';' で区切ってあるか確認してください)。 (13) : error C3874: 'main' の戻り値の型には、'int' を使用してください。'stack' は使用できません のようなエラーが出てしまします。
- 474 名前:454 mailto:sage [2008/06/03(火) 00:21:41 ]
- >>460
ありがとうございます! これでテストも乗り切れます
- 475 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:23:47 ]
- >>371
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6780.txt
- 476 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:24:38 ]
- >>473
struct stack{ char list[STACKMAX]; int num_of_data; }; にする
- 477 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:38:14 ]
- >>470
#include <stdio.h> #define N 7 int main() { int iary[N]={0}; FILE *fop = fopen("x.dat","r"); int i,sum = 0; for(i = 0; i < N; i++){ fscanf(fop,"%d",&iary[i]); sum += iary[i]; } printf("sum = %d \n",sum); return 0; }
- 478 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:43:37 ]
- >>470
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6781.txt
- 479 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:45:58 ]
- >>470
C勉強中です。突っ込みあればよろしくです。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6782.txt
- 480 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:47:04 ]
- >>470の人気にshit!
- 481 名前:470 [2008/06/03(火) 00:55:37 ]
- 477さん478さん479さん本当に、ありがとうございます。
コメント等が丁寧なおかげで私でも理解できそうです。ありがとうございます。
- 482 名前:470 mailto:sage [2008/06/03(火) 00:56:27 ]
- すいませんsage忘れました。
- 483 名前:366 mailto:sage [2008/06/03(火) 01:19:22 ]
- >>386
そうです そのほか答えてくださった方もありがとうございます。規制で書き込み遅くなって申し訳ないです
- 484 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:02:21 ]
- 疲れたでおじゃる。麻呂のクソースは今日中にということで、寝るでおまる。
deleteのところが、ちと不完全で。先頭のレコードを消すと バグったでおじゃる。
- 485 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:07:48 ]
- [1] 授業単元:画像情報処理
[2] GIF形式の画像を8ビットにビットスライスし、最下位ビットプレーンの各画素を変更する手法で電子透かしを作りなさい。 各画素は0〜255の明るさの階調があり、それを1ずらすことによってデータを埋め込む。 例えば、画像の6行1列目〜6行8列目の画素に01010001というデータを埋め込む場合、 元の明るさのデータが「133 132 132 134 133 133 134 134」だとすると、 埋め込んだ後のデータが「134 133 132 135 134 134 134 135」となるよう、 0の場合偶数に、1の場合奇数にデータを変更するようなプログラムとしなさい。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 2008年6月9日 23:00まで [5] その他の制限: 特になし よろしくお願いします。
- 486 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:22:25 ]
- [1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6783.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: MS VS2005 [3.3] 言語: c++ [4] 期限: 2008/6/4 [5] その他の制限: 特に無し 駄目だ上手く組めない。。。。 宜しくお願いしますorz
- 487 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:29:42 ]
- >>486
つstatic変数
- 488 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:30:56 ]
- #include <stdio.h>
double kekkahozon( double i ){ static double j; j+=i; return j; } void main(){ double x; int i; for(i=1; i<=10; i++){ x = kekkahozon( (double) i ); printf("合計: %f\n", x); } }
- 489 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:31:38 ]
- double kekkahozon( double d )
{ static ret = 0; return ret += d: }
- 490 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 02:33:58 ]
- 被った上にミスった
static double ret = 0;
- 491 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 04:43:45 ]
- [1] 授業単元:プログラミング(C)
[2] 問題文(含コード&リンク):コマンドラインで指定したファイルの内容を 16進数で標準出力にダンプする [3] 環境 [3.1] OS: WindowsXP [3.2] コンパイラ名とバージョン: Visual Stdio [3.3] 言語: C [4] 期限: 2008/06/04 [5] その他の制限: 特になし
- 492 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 05:05:55 ]
- >>491
>>491 バグ入りだからな #include <stdio.h> int main(int argc,char **argv){ FILE *f;unsigned char paragraph[16];int read_c,i; argc--;argv++; while(argc--){ f=fopen(*argv++,"rb"); if(f){ do{ read_c=fread((void*)¶graph,1,16,f); for(i=0;i<read_c;i++)printf("%02X ",paragraph[i]); printf("¥n"); }while(read_c==16); fclose(f); }} return 0; }
- 493 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 05:49:57 ]
- >>476
こんな初歩的なとこまでありがとうございました。
- 494 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 08:33:42 ]
- C言語でsinのマクローリン展開を10項まで実行するぷろぐらむができない・・・
- 495 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 09:12:54 ]
- 頭悪いんだねw
- 496 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 10:42:14 ]
- 再度おねがいします。
[1] 授業単元:プログラミング [2] 問題文: (1)int 型の配列 vx の要素に順に 0 以外の 5 つの整数をキーボードから読み込んで, (2)vx[0] から vx[4] の逆数(1/vx[0], ... ,1/vx[4])を順に double 型の配列 vy[0]からvy[4]に代入して (3)vy の要素を順に表示するプログラムを作成せよ. なお,(1)と(2)はひとつの for 文の中に含めても良いが,(3)は別のfor文を使って書け. 配列 vy の型は double であり,計算も double で行うことに注意。 [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:2008/06/03 [5] その他の制限:特になし
- 497 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 10:42:23 ]
- 誰かまとめ宜しゅう
- 498 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:07:05 ]
- >>496
#include <stdio.h> int main(void) { int i, vx[5]; double vy[5]; for(i=0; i<5; i++) { do { printf("input vx[%d]:", i); scanf("%d", vx + i); } while(!vx[i]); vy[i] = 1.0 / vx[i]; } for(i=0; i<5; i++) printf("vy[%d] = %f\n", i, vy[i]); return 0; }
- 499 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:10:12 ]
- >>474
どうでもいいけど、>460は仕様を満たしていないぞ。
- 500 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:12:21 ]
- >>498
scnaf()に失敗した場合、vx[i]の値は不定だから好ましくないね。 つーか、失敗した後のフォローもしてないんだからそのdo-while自体が無意味だと思う。
- 501 名前:500 mailto:sage [2008/06/03(火) 11:14:38 ]
- あー、0を除外しないといけないのか。じゃぁ>498でもいいや。失敬。
- 502 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:22:24 ]
- 入力ミスって無限ループが落ち
- 503 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:23:33 ]
- 正直、どうでもいいよ。
- 504 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:28:32 ]
- 「3がつく」をどう判定していいのか判らないのでお願いします。
[1] 授業単元: C/C++演習 [2] 問題文(含コード&リンク):() ・「世界のナベアツ」問題を実装せよ。 コマンドライン引き数で指定した数値が「3の倍数」か「3がつく」かを判定し、 該当した場合は「アホ」と出力すること。 尚、数値以外を指定された場合は問答無用で「どアホ」と出力すること。 ・ポイント *コマンドライン引き数の取り扱い *文字列数値変換関数の利用 *標準出力関数の利用 [3] 環境 [3.1] OS: (Windows/Linux/等々) OSに依存しないこと [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) 取り敢えず、gccを使えとのことです [3.3] 言語: (C/C++/どちらでも可 のいずれか) どちらでも可 [4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) 今日の夕方 [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 特に指定がないので標準関数だけでお願いします
- 505 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:29:31 ]
- 宿題スレでscanfにケチつけるってw
- 506 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 11:30:37 ]
- >>505
>503
- 507 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 12:42:08 ]
- >>371
ttp://www.bohyoh.com/Books/CalgoA/EX/ALGOEX0906.html
- 508 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:06:13 ]
- [1] 授業単元: C
[2] 問題文: kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6784.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Cygnus [3.3] 言語: C [4] 期限: 2008年6月5日17:00まで [5] その他の制限: 関数使用 なるべくシンプルなものだとありがたいです>< よろしくお願いします!
- 509 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:20:43 ]
- Cygnusなんてコンパイラあったっけ?
- 510 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:28:30 ]
- >>509
学校から渡されました。 Cygnus.batでコンパイルします。
- 511 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:41:49 ]
- [1] 授業単元: C++
[2] 問題文 2008年は閏年(うるうどし)である。 現在の暦において閏年は, 地球が太陽の周りを公転する周期が, 約365.24日であることに由来する調整法である。 閏年でない年は平年という。 キーボードから西暦を入力し 入力された年が閏年かどうか判定する プログラムを作成しなさい [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C++/ [4] 期限: 6月3日5時まで [5] その他の制限: なし。
- 512 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:42:13 ]
- [1] 授業単元: C++
[2] 問題文 今年(2008年)はオリンピックイヤー (オリンピック開催年)である。 8月8日から24日までにかけて,中国の北京で 夏季オリンピック第29回大会が開かれる。 次の説明はオリンピックの開催年についての説明である。 キーボードから変数year に入力された年号について, 開催された年に第何回大会が開催(中止)されたか 画面に表示するプログラムを作成しなさい。 またオリンピックイヤーでない場合は、 画面にその旨メッセージを出力すること。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C++/ [4] 期限: 6月3日5時まで [5] その他の制限: なし。 2問ありますが、よろしくおねがいします。
- 513 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:42:22 ]
- 誰か、エスパー頼む
- 514 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:42:50 ]
- >>508
#include <stdio.h> #include <math.h> #define PI 3.14159265358979323846 int check_side(int side) { return side > 0; } int check_angle(int angle) { return 0 < angle && angle < 180; } int main(void) { int side[2], angle, i; for(i=0; i<2; i++) { while(1) { printf("辺%d(cm):", i+1); scanf("%d", side + i); if(check_side(side[i]))break; printf("0より大きい整数を入力してください。\n"); } } while(1) { printf("はさむ角(degree):"); scanf("%d", &angle); if(check_angle(angle)) break; printf("0より大きく180より小さい整数を入力してください。\n"); } printf("<計算結果>\n面積(cm×cm):%f", side[0]*side[1]*sin(angle*PI/180)/2); return 0; }
- 515 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:46:00 ]
- [1] 授業単元: C++
[2] 問題文 キーボードから入力される2つの整数を変数a、bに格納し、 aの0乗からaのb乗までを順に出力するプログラムを作成せよ。 ただし変数bは0以上の整数が入力されるまで、入力を繰り返すものとする。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C++/ [4] 期限: 6月10日5時まで [5] その他の制限: なし。 [1] 授業単元: C++ [2] 問題文 キーボードから2以上の整数を入力し、その数が素数であるかどうかを判断するコードを記述せよ。 ただし入力される数値が2以上でない場合、繰り返し入力を求めること。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C++/ [4] 期限: 6月10日5時まで [5] その他の制限: なし。 連投すいません。 まだありました^^;
- 516 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:48:25 ]
- >>514
ありがとうございました。助かります。
- 517 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:52:00 ]
- >>516
int check_side(int side) { return side > 0; } int check_angle(int angle) { return 0 < angle && angle < 180; } ここに突っ込まれると思うからちゃんと理解しとけよ
- 518 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:54:14 ]
- ____
/ ./ /| こちらエスパー _|  ̄ ̄ ̄ ̄.| |___ 今日はどうも勘が鈍ってる / |_____.|/ / 誰か援助を頼む  ̄ ̄~ |し |  ̄ ̄ し⌒ J
- 519 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:55:27 ]
- >>511
#include <iostream> int main() { int year; std::cout << "西暦を入力:"; std::cin >> year; if ( year % 4 == 0){ if ( year % 100 == 0){ if ( year % 400 == 0) std::cout << "西暦" << year << "年は閏年" << std::endl; else std::cout << "西暦" << year << "年は平年" << std::endl; }else std::cout << "西暦" << year << "年は閏年" << std::endl; }else std::cout << "西暦" << year << "年は平年" << std::endl; return 0; }
- 520 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:57:21 ]
- >>512
>次の説明はオリンピックの開催年についての説明である。 説明どこだよ?
- 521 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:04:06 ]
- 1896年に第1回大会が開催され以後4年毎に開催(中止)された。
かな 開催か中止かも判定するなら6,12,13回大会は中止
- 522 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:07:09 ]
- ttp://ja.wikipedia.org/wiki/%E3%82%AA%E3%83%AA%E3%83%B3%E3%83%94%E3%83%83%E3%82%AF%E9%96%A2%E9%80%A3%E5%B9%B4%E8%A1%A8
- 523 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:12:00 ]
- 開催年だけならこれでいいかな
#include <iostream> int main() { int year; std::cout << "西暦を入力:"; std::cin >> year; int y = 2008 - (29 - 1 ) * 4; // 第一回オリンピック開催年 if ( year % 4 == 0){ if( year - y >= 0 ) std::cout << "西暦" << year << "年は第" << ( ( (year - y) / 4) + 1 ) <<"回オリンピック開催年" << std::endl; else std::cout << "西暦" << year << "には開催されていない" << std::endl; }else std::cout << "西暦" << year << "には開催されていない" << std::endl; return 0; }
- 524 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:13:45 ]
- もう過去のオリンピックが開催された年のデータから参照するのが望ましい。
何か普遍的な、イレギュラーの無い法則で算出するのは無理ぽ。 過去は変えられないのだよ、ワトソン君。
- 525 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:15:45 ]
- >>511
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6786.cpp
- 526 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:35:03 ]
- [1] 授業単元:
機械学習論 [2] 問題文(含コード&リンク):() @ クラス1、クラス2の2種類の属性をもつサンプル を含むデータセットにおいて、クラス1のサンプル の個数がc1,クラス2のサンプルの個数がc2である ものとする。このデータセットから1つのサンプル を取り出してそのクラスを観測する際、得られる平 均情報量を計算する関数を作成してください。また 関数は次のようにしてください。 Double info(int c1, int c2) A 情報利得を計算する関数を作成してください。 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: cygwin gcc [3.3] 言語: C言語 [4] 期限: 2008/6/4/PM11:00までです。よろしくお願いします。m(_ _)m
- 527 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:35:15 ]
- >>515
#include <iostream> int main() { int a, b; std::cout << "aを入力してください:"; std::cin >> a; do { std::cout << "bを入力してください(bは0以上):"; std::cin >> b; }while(b <= 0); for(int i=0,c=1; i<=b; i++, c*=a) std::cout << a << "の" << i << "乗は" << c << std::endl; }
- 528 名前:512 mailto:sage [2008/06/03(火) 14:47:01 ]
- 問題文抜けてました。
・1896年の第1回大会以来、4 年に1 度開催されている。 ・1916年の第6回大会,1940年の第12回大会,1944年の第13回大会は 世界大戦の影響で中止された。ただし中止の場合も回数は数える。 ・1906年には,近代オリンピック制定10周年記念大会が開催された。 ただし特別大会のため,回数には数えない。 ・次回は2012年、第30回大会がロンドンで開催予定。
- 529 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 14:55:42 ]
- ttp://ja.wikipedia.org/wiki/%E5%A4%8F%E5%AD%A3%E3%82%AA%E3%83%AA%E3%83%B3%E3%83%94%E3%83%83%E3%82%AF
ttp://ja.wikipedia.org/wiki/%E5%86%AC%E5%AD%A3%E3%82%AA%E3%83%AA%E3%83%B3%E3%83%94%E3%83%83%E3%82%AF
- 530 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 15:13:40 ]
- 2008年は中止ですね?
- 531 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 15:18:14 ]
- >>528
switch(year) { case 1896: printf("第1回大会開催\n"); break; case 1900: printf("第2回大会開催\n"); break; case 1904: printf("第3回大会開催\n"); break; case 1908: printf("第4回大会開催\n"); break; case 1912: printf("第5回大会開催\n"); break; case 1916: printf("第6回大会中止\n"); break; // 略 case 2004: printf("第28回大会開催\n"); break; case 2008: printf("第29回大会開催予定\n"); break; case 2012: printf("第30回大会開催予定\n"); break; default: printf("%d年には開催(開催予定)されていない\n", year); break; }
- 532 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 15:27:18 ]
- 開催、中止はこういうの作って判断すればいい
bool isKaisai( int year ) { int n[] = { 1916,1940,1944 }; for( int i = 0; i < 3; ++i ){ if( n[i] == year ) return true; } return false; }
- 533 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 15:55:19 ]
- #include <stdio.h>
void main() { int year, month, day, weekday; for (year = 2001; year <= 2100; year++){ for (month = 1; month <= 12; month++){ weekday = ((year + year/4 - year/100 + year/400 + (13*month+8)/5 + 13) % 7)+8; if (weekday == 13) printf("%4d年 %2d月 %2d日\n",year, month, weekday); } } } この実行結果の13日の金曜日の個数はどうやって求めればいいですか?
- 534 名前:デフォルトの名無しさん [2008/06/03(火) 15:59:33 ]
- [1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):21世紀(2001年〜2100年)の100年の間に、「13日の金曜日」は何回出現するだろうか。 <考え方> 2001〜2100 の間を for文 で繰り返す。 さらに、それぞれの年に1〜12月の間を for文 で繰り返す。つまり、2重ループにする。 for (year = 2001; year <= 2100; year++) { for (month = 1; month <= 12; month++) { } } 2重ループの中では、その月の13日が金曜日であるかどうかを、ツェラー公式を使って判定する。金曜であれば、それをカウントしておく。 最後に、カウントした数を表示する。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Visual Studio 2003 [3.3] 言語: C++ [4] 期限: 2008年06月10日14:40まで
- 535 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 16:10:03 ]
- >>534
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6788.cpp
- 536 名前:デフォルトの名無しさん [2008/06/03(火) 19:32:54 ]
- [1] 授業単元:C言語プログラミング
[2] 問題文(含コード&リンク): 例題7-2 に以下の事項を加えたプログラムを作成せよ。 @キーボードから与えられた整数データX を順序リストから削除する関数DeleteCell(int x)。 但し、削除したセルが使用していたメモリを解放するようDeleteCell 関数内にfree 関数を用 いること。 A整数データの入力に先立って、リストの操作メニューとして以下の操作メニューを表示する。 ・キーボードより i が入力された場合 ⇒ データを挿入 ・キーボードより d が入力された場合 ⇒ データを削除、但し該当するデータが存在しない場 合には『そのような数字はありません』と表示 ・キーボードより p が入力された場合 ⇒ その時点でのリストを表示 ・キーボードより x が入力された場合 ⇒ プログラム終了 ・その他のキーが入力された場合 ⇒ 警告を表示 例題7-2 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6789.txt [3] 環境 [3.1] OS:Vista [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限:明後日の朝まで [5] よろしくお願いします。
- 537 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:10:05 ]
- いろんな学校が結託してるかのように同じ問題がバンバン出て来るんだが、
このスレを見つけた少数の学校の生徒が続々と来てるだけかも?とおもった。
- 538 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:20:47 ]
- 非常勤講師でーす^^
- 539 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:28:38 ]
- 実は講師もまざってて自分の生徒用の問題をここで作らせてたりしてなw
- 540 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:31:30 ]
- 頻出問題をまとめたら割とまとまりそうだよね
過去の回答群も載っけて好きなの使え的な
- 541 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:33:02 ]
- それこそwikiでも立ち上げて貼っておけばいいかもな。
- 542 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:37:00 ]
- [1]授業単言:C言語
[2]問題文 要素数noであるint型の配列vcの要素の最小値を返す関数 int min_of(const int vc[],int no)の作成の仕方 [3-1] windows [3-2] gcc [3-3] C言語 [4] 明日までです よろしくお願いします。
- 543 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 20:46:42 ]
- int min_of(const int vc[],int no){
int i; int a=vc[0]; for(i=1;i<no;i++) if(vc[i]<a) a=vc[i]; return a; }
- 544 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 21:00:12 ]
- [1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):成績表のプログラムを可変長配列を用いて作成しなさい 詳細は↓ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6790.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:VC 6.0 [3.3] 言語: どちらでも可 のいずれか [4] 期限: 2008年6月3日 [5] その他の制限: 特にないです。
- 545 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 21:00:31 ]
- >>542ですが、メイン文の方も書き方がわからないので教えていただけませんか?
|

|