1 名前:デフォルトの名無しさん [2009/07/13(月) 07:46:32 BE:142007235-DIA(287979)] あなたが解けない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++の宿題片付けます 128代目 pc12.2ch.net/test/read.cgi/tech/1245853701/
82 名前:デフォルトの名無しさん [2009/07/14(火) 20:47:21 ] 課題なんだが。。。。 #include<stdio.h> void kakugyou(void); int hen,x,y; void main(void) { printf("数字(2〜9)を入力してください:"); scanf("%d",&hen); while(x<=hen) { kakugyou(); x++; }
83 名前:デフォルトの名無しさん [2009/07/14(火) 20:48:42 ] ↑の続き x=hen-1; while(1<=x) { kakugyou(); x=x-1; } } void kakugyou(void) { y=1; while(y<=x) { printf("*"); y=y+1; } printf("\n"); } これだと、アスタリスクが旗みたいな形になるけど、これを基本にしてダイヤ型と六角形、星形の結果を出すにはどうしたらいいのだろうか。 誰か教えてください。
84 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 20:51:56 ] ゆとり増えすぎだろこのスレマジで・・
85 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 20:55:45 ] >星形の結果を出すにはどうしたらいいのだろうか ビルから飛び降りればいいんじゃないかな?
86 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:07:07 ] [1] 授業単元:C++ [2] 問題文(含コード&リンク): down11.ddo.jp/uploader/download/1247572884.rar/attatch [3] 環境 [3.1] OS: (WindowsVista) [3.2] textpad [3.3] 言語: (C++) [4] 期限: ([2009年07月15日23:59まで) 独自のプログラムの書き方なので、とても困っています。 色々と試してみたのですが、自分の力だけでは出来そうにないため相談しました。 取り扱い説明書やプログラムは001.rarに入れておきました。 緊急を要しますので、何方かどうかよろしくお願いします。 ファイルサイズが大きいため違うアップローダーをお借りしました。 パスワードは以下になります。 pass:C/C++
87 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:21:18 ] >>81 課題1 #include <stdio.h> int main(int argc, char **argv) { FILE *fp1, *fp2, *tfp; int c; if (argc != 3) return 1; fp1 = fopen(argv[1], "r"); tfp = fopen("temp.txt", "w"); while ((c = fgetc(fp1)) != EOF) fputc(c, tfp); fclose(fp1); fclose(tfp); fp1 = fopen(argv[1], "w"); fp2 = fopen(argv[2], "r"); while ((c = fgetc(fp2)) != EOF) fputc(c, fp1); fclose(fp1); fclose(fp2); fp2 = fopen(argv[2], "w"); tfp = fopen("temp.txt", "r"); while ((c = fgetc(tfp)) != EOF) fputc(c, fp2); fclose(fp2); fclose(tfp); return 0; }
88 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:32:10 ] >>86 RAR駄目やっ。 Extracting from D:\My Documents\Cplus\Part129_086\001.rar Extracting D:\My Documents\Cplus\Part129_086\tex.bmp CRCエラー: D:\My Documents\Cplus\Part129_086\tex.bmp
89 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:40:24 ] >>81 課題2 #include <stdio.h> #include <stdlib.h> #define N 10 int comp_i(const void *m, const void *n) { return *(int *)m - *(int *)n; } int comp_d(const void *x, const void *y) { return *(double *)x - *(double *)y; } int main(void) { int a[N]; double x[N]; int i; srand(time(NULL)); for (i = 0; i < N; i++) { a[i] = rand() % 100; x[i] = (double)rand() / RAND_MAX; } printf("整数1〜100の乱数を%d個発生しました\n", N); for (i = 0; i < N; i++) printf("%7d", a[i]); puts("\nソートすると"); qsort(a, N, sizeof(int), comp_i); for (i = 0; i < N; i++) printf("%7d", a[i]); puts(""); printf("実数[0, 1]の乱数を%d個発生しました\n"); for (i = 0; i < N; i++) printf("%7.3f", x[i]); puts("\nソートすると"); qsort(x, N, sizeof(double), comp_d); for (i = 0; i < N; i++) printf("%7.3f", x[i]); puts(""); return 0; }
90 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:47:25 ] ごめん>>89 は忘れて
91 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:50:54 ] >>81 Q2 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9748.txt
92 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:51:50 ] [1] 授業単元: C言語 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9749.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: ? [3.3] 言語: C [4] 期限: 7/17 [5] その他の制限: 特にありません。よろしくお願いします。
93 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:57:24 ] >>88 zipになります。どうかよろしくお願いします。 down11.ddo.jp/uploader/download/1247576184.zip/attatch
94 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:58:07 ] >>88 passは先ほどと同じですので
95 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 21:59:38 ] >>92 (2) #include <stdio.h> int main(void) { int i, j; i = 1; while (i < 10) { j = 1; while (j < 10) printf("%3d", i * j++); printf("\n"); i++; } return 0; }
96 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 22:26:39 ] >>55 課題1 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9750.c あと問題をアップロードしたら>>66 だけじゃなくリンクも書いて 元のソースこれでいいんだね? kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9746.c
97 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 22:37:54 ] >>92 (1) #include <stdio.h> int main(void) { int f1, f2, f3, n; printf("n = "); scanf("%d", &n); if (n == 0) { printf("F(0) = 0\n"); return 0; } if (n == 1) { printf("F(1) = 1\n"); return 0; } f1 = 0; f2 = 1; while (n >= 2) { f3 = f2 + f1; f1 = f2; f2 = f3; n--; } printf("F(%d) = %d\n", n, f3); return 0; }
98 名前:79 [2009/07/14(火) 23:01:46 ] >>90 ありがとうございます
99 名前:デフォルトの名無しさん [2009/07/15(水) 01:17:23 ] [1] 授業単元: C言語 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9751.txt [3] 環境 [3.1] OS: Windows [3.3] 言語: C [4] 期限: 7/17 [5] その他:特になし どうかよろしくお願いします。
100 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 01:37:56 ] >>99 解答01: string.h 解答02: cc minitest0926A.c -o minitest0926A 解答03: 3.464102 解答04: s=r*r*3.142; 解答05: 25 解答06: ( (x)<5 ? 'c' : 'd' ) 解答07: .9 解答08: p=3.141592654 環境依存あるかも。
101 名前:デフォルトの名無しさん [2009/07/15(水) 01:50:31 ] >>100 ありがとうございます
102 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 02:32:03 ] [1] 授業単元:OS演習 [2] 問題文(含コード&リンク): (1)pipe3.cを完成させて、親子プロセス間で交互にメッセ ージを交換するプログラムを作成せよ。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9752.txt (2)共有バッファを用いて、子プロセスでメッセージを書き込 み、親プロセスで読み出すプログラムを作成せよ。ただし、 共有バッファは128バイトとし、その先頭には‘書き込み マーク’を付し、そのリセットは親プロセスが、セットは子 プロセスが行うとせよ。 [3] 環境 [3.1] OS:Linux [3.2] gcc [3.3] 言語:C言語 [4] 期限: 7/16 [5] その他の制限:特にないです、どうかよろしくお願いします
103 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:05:57 ] 【質問テンプレ】 [1] 授業単元: C言語演習 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9753.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 2009年 7月20日 [5] その他の制限: 特になし よろしくお願いします
104 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:06:34 ] ここすごく面白そうなスレだ プログラミングの題材探しにすんげぇ助かるかもしれない
105 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:08:39 ] >>104 利用料を徴収します
106 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:23:11 ] 最初はそう思うもんだ がんばって技術向上のついでに単位取得を手伝ってあげるといい
107 名前:デフォルトの名無しさん [2009/07/15(水) 03:28:46 ] [1] 授業単元: デジタル信号処理 [2] 問題文(含コード&リンク): 2つのテキストファイル(double型)を読み込み、畳み込み和を計算し、別のファイルに出力せよ。 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 2009年 7月16日 [5] その他の制限: よろしくお願いします。
108 名前: ◆/91kCCQXBo mailto:sage [2009/07/15(水) 04:21:59 ] >>082 ダイヤ型と六角形、星形 Part127>>953 (9534) 問題 >>998 (CODE)>>999 (CODE)>>次014(9548) 「ピラミッドアート」ダイヤ、八角形、星型 Part128>>333 (9630)>>342 (9635)>>495 問題 >>440 (9652) '*'を一辺とする六角形と星形を描画する Part128>>898 問題 >>915 (>>014 (9548)) アスタリスクがダイヤ形になるプログラム kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9534.txt kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9548.c kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9652.c kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9630.txt kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9635.txt
109 名前:デフォルトの名無しさん [2009/07/15(水) 09:13:24 ] [1] 授業単元: OS [2] 問題文(含コード&リンク): 共有バッファを用いて、子プロセスでメッセージを書き込み、親プロセスで読み出すプログラムを作成せよ。 ただし、共有バッファは128バイトとし 先頭には‘書き込みマーク’を付し、そのリセットは親プロセスが、セットは子プロセスが行うとせよ。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C [4] 期限:7月17日 [5] その他の制限:なし よろしくお願いします。
110 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 09:37:44 ] 1] 授業単元:数値情報解析 [2] 問題文:ニュートン法により代数方程式を解くプログラムを作りなさい。 [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:Visual Studio [3.3] 言語:C [4] 期限:2009年7月22日 [5]少しでも易しい表現にしていただくようよろしくお願い致します。 あと、ソースファイルに処理過程がわかり易いようにコメント文を加えて いただけるとありがたいです。
111 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 09:58:44 ] maximaだとこれだけなんだけどね t(f):=block([fd,h],fd:diff(f(x),x),h:x-f(x)/fd,return(rat(h)))$t(f); 代数方程式に制限はないの?普通の多項式に限るとか それか、代数方程式とその微分が与えられている前提なら 話は簡単だけども 多項式の微分を自分で作れって問題ならめんどいね
112 名前:デフォルトの名無しさん [2009/07/15(水) 10:36:10 ] >>110 方程式と、方程式の微分結果は、ソースに直接書くの? それとも、入力された方程式を解くの? それによって、難易度がかなり違うんだけども。
113 名前:72 [2009/07/15(水) 11:26:38 ] 問題文はこれで全部です 作成例の実行ファイルを昨日貰ったので家に帰ったらアップします
114 名前:tac [2009/07/15(水) 16:06:17 ] 先日、このスレッドで質問を書かせていただいたんですが、 多くの方から、意見をいただき、とても参考になりました。 今日、ゼミがあったので教授にその話を言うと、 自分で1から開発せずに、オープンソースを探し、 もし足りなければ、そこから、改良を加えるという形でOKがでました。 なので、今回はCもしくはC++言語で、 ソケット間通信を可能にするオープンソースを自分自身でも探してみますが、 お勧めのソケット間通信のオープンソースのサイトやURLを教えていただけないでしょうか? 【質問テンプレ】 [1] 授業単元: ゼミナール [2] 問題文(含コード&リンク): 「PC間でソケットの接続確立とデータを送信を行うプログラム」の オープンソースを探す。 [3] 環境 [3.1] OS: Windows XP [3.2] Micro Soft Visual C++ 2008 [3.3] 言語: C もしくは C++ 言語 [4] 期限: 2009年7月22日 [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 制限は特にありません。 みなさんのお勧めのインスタントメッセンジャーもしくはチャットを CもしくはC++言語で書かれたオープンソースを教えて下さい。 また、お勧めの C または C++ 言語のオープンソースが置いてあるサイトを紹介してください。 宜しくお願いします。
115 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 16:49:04 ] FreeBSD(オープンソース)にtalk/talkdというのがあります。
116 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 17:19:47 ] >>114 mixiであんたが消したトピに答えがあったんだが見てないのか?
117 名前:>>55 mailto:sage [2009/07/15(水) 17:36:32 ] >>96 すみませんでした。ありがとうございます。
118 名前:デフォルトの名無しさん [2009/07/15(水) 18:32:28 ] >>114 IPMessanger www.ipmsg.org/ ソフト自体のソースも公開されてるし、 通信部分のみのDLLなんかもあるから、充分なんじゃない?
119 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 18:36:46 ] [1] 授業単元:基礎プログラミング [2] 問題文: kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9754.zip [3] 環境 [3.1] OS: vista [3.2] コンパイラ名とバージョン: Visual Studio 2008 [3.3] 言語:C++ [4] 期限:2009年7月17日 [5] その他:特になし よろしくおねがいします
120 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 18:56:31 ] >>119 #include<stdio.h> #include<string.h> #include<ctype.h> int check(const char *mailaddress) { const char *p; int at_count=0; if(!isalpha(mailaddress[0])) return 0; if(!isalpha(mailaddress[strlen(mailaddress)-1])) return 0; for(p=mailaddress;*p;p++) { if(!isalnum(*p) && !strchr("@-_.", *p)) return 0; if(*p=='@') at_count++; } return (at_count==1); } int main(void) { char str[21]; printf("メールアドレス =>"); scanf("%20s", str); if(check(str)) printf("OK\n"); else printf("ERROR\n"); return 0; }
121 名前:obama ◆dXPOZaWDCk [2009/07/15(水) 19:13:28 ] 【質問テンプレ】 [1] 授業単元: [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9755.txt 上のプログラムがなぜ図のような座標列を生成したのかを説明せよ 図;g.pic.to/17jcdy ヒント1;関数draw_polygon()中のif(r>xxx)において、数値xxxをいろいろと変えること 数値xxxを大きくしていくと図が徐々に単純になっていく、単純な図から考えを進めること ヒント2;自分がパソコンになったつもりでプログラムを順に追っていくこと。 その際呼び出した側のdraw_polygon()と呼び出された側のdraw_polygon()を区別して考えること (前者と後者のローカル変数の区別をわすれないこと) [3] 環境 [3.1] OS: (Windows [3.2] コンパイラ名とバージョン: [3.3] 言語: (C [4] 期限: ([09年07月17日13:00まで] [5] その他の制限:
122 名前:obama ◆dXPOZaWDCk [2009/07/15(水) 19:14:55 ] >>121 お願いします
123 名前:デフォルトの名無しさん [2009/07/15(水) 19:29:56 ] どなたか>>107 お願いします
124 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 19:35:45 ] >>103 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9756.txt
125 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 19:44:51 ] [1] 授業単元:ゲームプログラミング入門 [2] 問題文(含コード&リンク): 以下のゲームの中からどれか二つを選んで作成せよ。 ・マインスイーパー ・七並べ ・ブラックジャック ・ポーカー カードゲームを作成する場合、同じカードが2枚存在してはならない。 ジョーカーは無いものとする。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: [2009年7月17日12:00まで] 出来れば7並べかマインスイーパーをお願いします。
126 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:18:28 ] [1] 授業単元:基礎c++ [2] 問題文(含コード&リンク): 一次元配列を用いて、Aをn次(nは100以下)の正方行列としたときの 対称行列の成分の添字番号、行成分を格納し表示せよ。 [3] 環境 [3.1] OS: linux [3.2] コンパイラ名とバージョン: visual c++ [3.3] 言語: c++ [4] 期限: 2009年07/17まで [5] その他の制限: 一次元配列で考える。 よろしくお願いします。
127 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:28:13 ] >>126 だめだ、10回読み直したけどわからん。 だれか分かりやすく読み下してくれ・・・
128 名前:デフォルトの名無しさん [2009/07/15(水) 20:43:06 ] n次対称行列の格納に必要な配列の長さはn(n+1)/2 配列名をMとする時 i行j列成分は(i>=j)の時 M[ i*(i-1)/2+j-1 ] (i<j)の時 j,i成分と同じ 乱数で適当に格納した後表示する。 これでどーだ?
129 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:47:13 ] >>128 先に書かれたー。せっかくなので俺がいま書いた解釈も… N次正方行列をあらわすには普通N*N個の要素を必要とするが それが対称行列ならN*(N-1)/2個の要素ですむ それでは、N次の対称行列をN*(N-1)/2個の要素を持つ一次元配列に 格納し、取り出すプログラムを作成せよ
130 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:48:43 ] >>128 ,129 ありがとうございます。 じっくり考えたいと思います。
131 名前:72 [2009/07/15(水) 21:05:30 ] www.rupan.net/uploader/download/1247659238.zip www.rupan.net/uploader/download/1247658809.zip 参考例と作成例をうpしました 参考例のほうはソースと実行ファイル共にありです 作成例のほうは実行ファイルだけになります
132 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 21:26:34 ] >>128-129 なるほど 「添字番号、行成分」なるなにものかを何とか数値化して配列に入れる方向で考えてた。頭堅いのは駄目だな その方向で行くとして、出力は1次元配列の構造そのままがいいんだろうか、行列っぽくするべきだろうか なんとなく後者かなと思ったが
133 名前:obamaさんへ mailto:sage [2009/07/15(水) 21:29:22 ] >>121 図を右上から左下、左上から右下の二本の線でバツに区切ります。 すると4つの同じような図形の菱形になります。 その一つを見るとさらに同じように4つの菱形に区切れます。 部分が全体を含んでいます。 そのように繰り返し的に同じ図形が現れるのをフラクタル図形といいます。 プログラムは4つの点を描き、中心位置をずらして 大きさを小さくしながら再帰的に同じ形を描いていっています。
134 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 22:07:23 ] >>131 >>78
135 名前:デフォルトの名無しさん [2009/07/15(水) 22:22:25 ] [1] 授業単元:プログラミングC [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9757.txt のデータを取り込み、そこから最大値、最小値、データ個数、平均値を求めるプログラムを作成せよ ただし最大値、最小値、データ個数、平均値は引数にポインタを用いて値を返すようにプログラムを作れ [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限: 7月16日17時 [5]kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9757.txt のファイル名はtensu.txtでお願いします なるべく簡単なものでおねがいします
136 名前:72 [2009/07/15(水) 22:40:50 ] うお、安価なかったので気づきませんでした >>131 さんとそれを教えてくれた>>134 さんありがとうございました
137 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 22:57:39 ] >>135 #include <stdio.h> void func(int *max, int *min, int *num, double *ave) { int a, n; FILE *fp = fopen("tensu.txt", "r"); if (fp == NULL) { fprintf(stderr, "file open error."); exit(1); } if (fscanf(fp, "%d", &a) == EOF) { *num = 0; return; } *max = *min = *ave = a; *num = 1; while (fscanf(fp, "%d", &a) != EOF) { if (*max < a) *max = a; if (*min > a) *min = a; *ave += a; (*num)++; } *ave /= *num; fclose(fp); } int main(void) { int max, min, num; double ave; func(&max, &min, &num, &ave); printf("最大値 = %d, 最小値 = %d, データ個数 = %d, 平均値 = %f\n", max, min, num, ave); return 0; }
138 名前:デフォルトの名無しさん [2009/07/15(水) 22:59:39 ] [1] 授業単元: Linux/C [2] 問題文(含コード&リンク): 標準入力からの入力を元に演算、結果を標準出力に出力するプログラムがあります。 --- #include <stdio.h> #include <stdlib.h> main(){ char c[BUFSIZ]; fputs("input:",stderr); fgets(c,BUFSIZ,stdin); for(int i=0;i<atoi(c);i++) fprintf(stdout, "%03d\n",i); } --- これを以下のように実行し、例えば100を入力しても、エコーバックが画面表示されません。 $ a.out | more input:000 ←入力内容はエコーバックされず、最初の出力結果が表示される 001 … 022 --More-- 入力内容をエコーバックするようにプログラムを修正、または作り直して下さい。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C/C++ [4] 期限: 無期限 [5] その他の制限:なし
139 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 23:10:28 ] >>137 ありがとうございました
140 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 23:45:12 ] a.out | more ↓ a.out にする あと、パスに.を入れるのはよくない
141 名前: ◆/91kCCQXBo mailto:sage [2009/07/16(木) 00:20:28 ] >>126 n次の対称行列 めんどうなのでC/C++ #include <stdio.h> int A[100*101/2]; int main() { int n, i, j, k, i1, j1; printf("n?"); scanf("%d%*c", &n); if(n>100) return 1; for(k=0, i=0; i<n; i++) { /* 成分の添字番号を表示 */ for(j=i; j<n; j++, k++) { A[k] = k+1; printf("N(%2d,%2d) = A(%2d)\n", i, j, k); } } for(i=0; i<n; i++) { /* 行成分を表示 */ for(j=0; j<n; j++) { if(i < j) i1=i, j1=j; else i1=j, j1=i; k = j1+i1*n-(i1*(i1+1)/2); // i printf("A(%2d)=%2d", k, A[k]); if(j < n-1) printf(", "); } puts(""); } return 0; } /* 1 2 3 4 2 5 6 7 3 6 8 9 4 7 9 10 */
142 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 00:23:11 ] >>112 与えられた方程式をソースに直接書くタイプなのです。 方程式や収束条件が先生の方からまだ発表されていなかったので、 大変申し訳ないですが、後日あらためて書き込みさせていただきます。
143 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 00:29:44 ] >>124 ありがとうございます
144 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 01:52:56 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク):@四則演算は用いずに, 0xabcdの下位8ビットを0にして表示するプログラムを作成せよ. A変数xのyビット目を1にする関数 int bit_set(int x,int y) を作成せよ. B変数xのyビット目を0にする関数 int bit_clear(int x,int y) を作成せよ. C変数xのyビット目の値を返す関数 int bit_test(int x,int y) を作成せよ. [3] 環境 [3.1] OS:Windows Vista SP1 [3.2] Visual studio 2008 [3.3] 言語:C [4] 期限:2009年7月16日8:30まで [5] その他の制限:基本的なもので
145 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 02:05:38 ] >>144 @ #include <stdio.h> int main(){ printf("%d",0xabcd & 0xff00); return 0; } A int bit_set(int x, int y){ return x | (1<<(y-1)); } B int bit_clear(int x, int y){ return x & ~(1<<(y-1)); } C int bit_test(int x,int y){ return (x>>(y-1)) & 1; }
146 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 04:51:12 ] どなたか>>125 をお願いします。
147 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 06:45:23 ] どなたか>>102 の(2)だけでよいのでよろしくお願いします
148 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 09:19:20 ] >>146 マインスイーパってやっぱりマウスでクリックするの?
149 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 09:48:29 ] >>148 どちらもCUIです。 説明が足りず申し訳ありません。
150 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 09:49:58 ] CUIでマインスイーパーって開ける箇所を座標指定とかでやるのか?
151 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 10:05:58 ] >>150 だと思います。特に方法は指定されていませんでした。
152 名前:138 [2009/07/16(木) 11:17:32 ] >>140 レスありがとうございます。 その場合、スクロール、ページャ運用ができません。 是非プログラム内で解決したいと思っています。 宜しくお願い致します。
153 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 12:12:15 ] >>147 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9759.c
154 名前:デフォルトの名無しさん [2009/07/16(木) 12:57:01 ] >>146 7並べは、コンピュータ対戦? 両方人間で、同じ画面見てたらゲームになんないよねぇ・・・
155 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 13:52:28 ] >>154 7並べサーバを作って、人間用クライアントが複数接続できるようにして、 足りないぶんはAIクライアントに担当させる・・・ AIはインタフェースだけ決めといて実装は自由、各自が自作の思考ルーチンの強さを競う なんて妄想してると夢だけはひろがりんぐw
156 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 21:46:37 ] いまからマインスイーパをCで作ってみようと思う
157 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 23:13:11 ] [1] 授業単元: C++ [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9762.txt [3] 環境 [3.1] OS:WindowsXP [3.2] コンパイラ名とバージョン:Textpad [3.3] 言語:C/C++/どちらでも可 [4] 期限:2009年7月17日AM7:00まで [5] その他の制限:特になし 朝までになりますので、どなたかよろしくお願いします。
158 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 23:18:58 ] >>157 下図に示すa,bに数値を設定したときに -------------- この図はどこ
159 名前:デフォルトの名無しさん mailto:sage [2009/07/16(木) 23:48:36 ] >>158 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9763.txt すいません、こちらが図になります
160 名前:デフォルトの名無しさん [2009/07/17(金) 00:11:31 ] [1]プログラミング [2] 課題 言語: C もしくは C++ 言語 (1)以下のプログラムを作成しなさい(数当てゲーム) *画面上に「好きな数字を入力してください」と表示して、キーボードからの入力を待つ。 変数aを定義して、10までの乱数を発生させて変数aに代入する。 キーボードからの入力があれば、先に発生させた乱数と一致しているならば 「あたり!!」と表示する。 一致していなければ「残念乱数はxxです」と表示する(xxには変数aの中身を表示する) 宜しくお願い致します。
161 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 00:50:40 ] >>157 C++で kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9764.txt
162 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 01:24:03 ] 156だけど徹夜で用事入ったから17日昼までにマインスイーパ作れないと言っておく 一応windows.hを使ったインタフェースで作ってた。
163 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 03:26:21 ] >>160 #include <stdio.h> #include <stdlib.h> int main(void){ int a,input; srand( (unsigned)time(NULL) ); printf("input : "); scanf("%d",&input); a = rand() % 10 + 1; if( a == input ) printf("あたり!!\n"); else printf("残念乱数は%dです。\n",a); return 0; }
164 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 04:07:54 ] >>153 これから見てみます ありがとうございました
165 名前:デフォルトの名無しさん [2009/07/17(金) 09:44:19 ] [1] 授業単元: プログラミング言語 [2] 問題文(含コード&リンク):コメントアウト(//)を用いて下のプログラムを説明せよ。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9765.txt kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9766.txt [3] 環境 [3.1] OS: (Windows/Linux/等々) [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) [3.3] 言語: (C/C++/どちらでも可 のいずれか) [4] 期限: ([09年7月17日12:30まで] または [無期限] のいずれか) [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) お願いします
166 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 10:46:21 ] コメントアウト? コメントじゃなくて?
167 名前:新たな課題です [2009/07/17(金) 10:59:16 ] [1] 授業単元: プログラミング言語 [2] 問題文(含コード&リンク): 授業時に作成したプログラム(ヒント) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9767.zip 作成する図形kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9767.zip 実行例s.pic.to/zrnq2 [3] 環境 [3.1] OS: (Windows [3.2] コンパイラ名とバージョン: (VC++ [3.3] 言語: (C [4] 期限: ([09年7月20日15:30まで] または [無期限] のいずれか) [5] その他の制限:成功すれば図は立体的に見える。 1.星形の座標列を生成する関数void draw_star(引数1,2,/…)を作成すること どの星型もこの関数ひとつで描けるようにすること 2.星型中心座標から各凸角までの距離は0.5、各凹角までの距離は0.25 3.星型中心y座標値は-10から10までの整数とすること y=0の場合は凸角数4というように、y座標値で凸角数が決まってくいる(実行例参照) ifやswitchなどの条件分岐(場合分け)を用いずに規則を見つけてプログラミングすること 5.各行(各y座標値)の最初(左端)の星型中心x座標値はゼロとし、最後(右端)のそれは 40以下とすること。隣り合う星型中心のx座標値の間隔dxはdx=2+0.3×|y|とすること。 6.実行結果は.csvファイルとして保存すること
168 名前:デフォルトの名無しさん [2009/07/17(金) 11:00:02 ] >>166 コメントです!!
169 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 11:23:08 ] 167 ほんとにこれでいいのか?(C 括弧閉じない性格 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9767.zip
170 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 11:51:14 ] >>167 ショートカットファイルしかありませんでした
171 名前:デフォルトの名無しさん [2009/07/17(金) 13:40:01 ] [1] 授業単元:システムコール [2] 問題文(含コード&リンク): 問題文 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9769.txt リスト1〜4 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9770.txt [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 7月21日(火)12時10分まで [5] その他の制限: 特になし よろしくお願いします。
172 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 18:47:16 ] >>125 キャラクタ画面でマインスイーパ作ったけど、〆切りすぎてたね・・・ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9773.c
173 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 18:57:32 ] ゲームってグラフィック使わないとなるとかなり難しいけどなw
174 名前:デフォルトの名無しさん [2009/07/17(金) 21:12:10 ] >>163 ありがとうございます!!
175 名前:デフォルトの名無しさん [2009/07/17(金) 21:47:15 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク): 下に示すように,キーボードから二つの文字列を読み込み,どちらの文字列が何文字長いか を表示するプログラムを作成せよ.なお,二つの文字列が同じ長さならば,「二つの文字列は同 じ長さです.」と表示させること. 文字列A : Good 文字列B : Morning 文字列B の方が3 文字長いです. [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:Visual Studio 2008 [3.3] 言語: C [4] 期限: 09年07月21日 [5] その他の制限:なし。
176 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:06:06 ] >>175 #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ char a[256], b[256]; int diff; printf("文字列A : "); scanf("%s", a); printf("文字列B : "); scanf("%s", b); if(diff = strlen(a) - strlen(b)) printf("文字列%c の方が%d 文字長いです.\n", diff>0 ? 'A' : 'B', abs(diff)); else puts("二つの文字列は同じ長さです."); return 0; }
177 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 00:14:07 ] >>171 WriteLine関数とReadLine関数の定義はどこ?
178 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 00:26:57 ] [1] 授業単元: プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9774.txt [3] 環境 [3.1] OS: linux [3.3] 言語: C [4] 期限: 7/20 [5] その他:特になし よろしくお願いします。
179 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 00:39:26 ] >>178 【1】 stdio.h 【2】 n=0 【3】 Tn2 = Tn3 修正 n<20 を n<28 にする 【4】 2555757 【4】の解の保証 www.research.att.com/~njas/sequences/table?a=73&fmt=4
180 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 00:46:43 ] >>179 助かりました。ありがとうございます。
181 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 00:58:23 ] >>177 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9775.c これになります。失礼しました
182 名前: ◆/91kCCQXBo mailto:sage [2009/07/18(土) 02:27:15 ] >>167 星形の座標列 画像は読む事が出来た だれかプログラムしてくれ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9777.txt