C/C++の宿題片付けます 144代目
■ このスレッドは過去ログ倉庫に格納されています
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://s2.etowns.slyip.net/~c_cpp_homework/cgi-bin/joyful/joyful.cgi
http://codepad.org/ ←遅い時間は重い事があります
http://ideone.com/
【C 関数検索 man on WWW】 http://www.linux.or.jp/JM/index.html
【過去ログ検索】 http://chomework.sakura.ne.jp/
【wiki】 http://www23.atwiki.jp/homework/
前スレ
C/C++の宿題片付けます 143代目
http://hibari.2ch.net/test/read.cgi/tech/1289913298/
0232デフォルトの名無しさん
2010/12/08(水) 18:45:490233デフォルトの名無しさん
2010/12/08(水) 18:46:57C89だと main()は main(...)と同じ意味になってしまうんですけど?
C99はmain(void)ですが
0234デフォルトの名無しさん
2010/12/08(水) 18:48:23高速で移動する物体の前に飛び出してごらん。鉄道じゃ吹き飛ぶかぶっ潰されて
ばらばらに切断されるか。そう言えば、100km/hの車に轢かれて
上半身だけボンネット、フロントガラスに、下半身が衝突した場所に残っていた
悲惨な事故を思い出したぜ。要するに 人間なんて脆い 生き物だよ。
大災害で死ぬかもしれないよ。ほら、明日にでも自分の住む地域に
大地震が発生したらどうよ?その先生きのこれる自身
0235デフォルトの名無しさん
2010/12/08(水) 18:48:25だから◆QZaw55cn4cは自己愛性人格障害なんだよ
>尊大で傲慢な行動、または態度。
アスペルガー症候群だと思っていたが、この厚顔無恥さは間違いなく自己愛だ
0236デフォルトの名無しさん
2010/12/08(水) 18:55:25http://toki.2ch.net/test/read.cgi/utu/1291613687/
◆QZaw55cn4cそのものだ
前スレの内容がなかなか良かったのだが残念ながらDAT落ち
●を持っている人は読んでみてくれ
とにかくこの種の人に関わらない方が良いという事が痛いほどわかる
そう、つまり C89/C99 どちらにしても int main() は規格に適合するのです。
0238デフォルトの名無しさん
2010/12/08(水) 19:47:130239デフォルトの名無しさん
2010/12/08(水) 19:57:49お前アホか?意味が違ってくると言ってるんだけど
規格に適合するかどうかなど聞いてない
0240デフォルトの名無しさん
2010/12/08(水) 20:01:450241デフォルトの名無しさん
2010/12/08(水) 20:11:16[2] 問題文(含コード&リンク):AOJ0004 http://rose.u-aizu.ac.jp/onlinejudge/ProblemSet/description.jsp?id=0004&lang=jp
[3] 環境
[3.1] OS:windows
[3.2] VC++
[3.3] 言語: C
[4]期限:無し
[5] その他の制限:無し
http://codepad.org/6t8deX5z
現在のコードです。OnlineJudgeが通りません。
よろしくお願いします。
>>204 -> >>224 -> >>225 -> >>229 -> >>233 -> >>237
これらの一連の流れを参照してください。
C89/C99 の両者でパラメータが空リストの場合に意味が異なるのは当然ご存知の上で、 int main() が規格に適合するか適合しないか、を問題にしているのです。
0243デフォルトの名無しさん
2010/12/08(水) 20:20:200244デフォルトの名無しさん
2010/12/09(木) 01:06:53ここで相手すんな。すごくうざい。
0245デフォルトの名無しさん
2010/12/09(木) 02:19:070246118
2010/12/09(木) 05:22:39#include <stdio.h>
double Y_Answer(double a,double b,double c,double d,
double e,double f)
{
return ((c/a)-(f/d))/((b/a)-(e/d));
}
double X_Answer(double c,double b,double y,double a)
{
return (c-b*y)/a;
}
int main()
{
double a,b,c,d,e,f,x,y;
scanf("%lf%lf%lf%lf%lf%lf",&a,&b,&c,&d,&e,&f);
y = Y_Answer(a,b,c,d,e,f);
x = X_Answer(c,b,y,a);
printf("%.3lf %.3lf \n",x,y);
return 0;
}
0247デフォルトの名無しさん
2010/12/09(木) 06:49:45君の回答だと 0x + 0y = 1, 0x + 0y = 2 の時に x = 0, y = 0 になるけどこれはおかしい
正しくは一意解無しで題意からすると不正な入力だ
同様に 0x + 1y = 1, 0x + 2y = 3 も x = 0, y = 1 になりおかしい
簡単に言うと a * e == b * d の場合は全て不正な入力という事だ
よって while() 内だけ書くと
if( a * e == b * d ) {
printf( "Ileagal input.\n" );
}
else {
x = ( c * e - f * b ) / ( a * e - b * d );
y = ( c * d - f * a ) / ( b * d - a * e );
printf( "%.3f %.3f\n", x, y );
}
で良いと思うのだけど
0248デフォルトの名無しさん
2010/12/09(木) 10:23:100249デフォルトの名無しさん
2010/12/09(木) 10:23:57○行列式
0250デフォルトの名無しさん
2010/12/09(木) 10:53:36知ってると思うけど行列式≠0という事はこの行列が正則行列である事をしめしており、
逆行列が存在する必要十分条件ね
逆行列が存在すると言う事はこの連立一次方程式は解けるという事と等価
0251デフォルトの名無しさん
2010/12/09(木) 13:27:160252デフォルトの名無しさん
2010/12/09(木) 13:31:10[2] 問題文(含コード&リンク):
二つの整数width, heightを入力として受け付ける。
文字*を使って幅(横)width,高さ(縦)height,縁の太さ2の「中が空白の長方形」を描きなさい。
例えば, 7 6 を読み込んだときには,
*******
*******
**___**
**___**
*******
*******
と表示されればよい。
ただし_のところは空白文字を示すので,
画面上では何も表示されない)。
なお,width, heightは4以上30以下と仮定してよい。
[3] 環境
[3.1] OS: Windows7
[3.2] コンパイラ名とバージョン: gcc 4
[3.3] 言語: C
[4] 期限: できるだけはやく
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
よろしくお願いします
0253デフォルトの名無しさん
2010/12/09(木) 14:19:43http://codepad.org/wdXU0LTq
0254デフォルトの名無しさん
2010/12/09(木) 14:27:45int main() {
char image[30 + 1][30 + 1] = {'\0'}, mark = '*', space=' ';
int i, j, w, h, thickness = 2;
printf("w h: ");scanf("%d %d", &w, &h);
for (i = 0; i < h; i++) {
for (j = 0; j < w; j++) {
image[i][j] = mark;
}
}
for (i = thickness; i < h - thickness; i++) {
for (j = thickness; j < w - thickness; j++) {
image[i][j] = space;
}
}
for (i = 0; i < h; i++) {
printf("%s\n", image[i]);
}
printf("%d %d", w, h);
return 0;
}
0255デフォルトの名無しさん
2010/12/09(木) 14:45:56http://codepad.org/sfDIE78B
0256デフォルトの名無しさん
2010/12/09(木) 16:05:090257デフォルトの名無しさん
2010/12/09(木) 16:38:220258デフォルトの名無しさん
2010/12/09(木) 17:43:48[1] 授業単元:Cプログラミング(配列)
[2] 問題文(含コード&リンク): http://www.dotup.org/uploda/www.dotup.org1291228.txt
[3] 環境
[3.1] Linux
[3.2] gcc
[3.3] 言語: C
[4] 期限: 12/10 よろしくお願いします
0259デフォルトの名無しさん
2010/12/09(木) 18:35:09問題4
#include <stdio.h>
int main(void)
{
int i;
double x, d = 0;
scanf("%lf", &x);
for(i = 10; i > 0; i--) d = d * x + i;
printf("%f\n", d);
return 0;
}
0260デフォルトの名無しさん
2010/12/09(木) 18:39:40ファイル meibo.dat に切り替えている。
$./meibo 24680 < ./meibo.dat
meibo:コマンド名 24680:生徒番号(code)である。
カレントディレクトリに予め用意したテキスト形式のデータベース meibo.datに番号 24680の
生徒が存在し「ない」場合は
not found
と画面に表示させ、データベース meibo.dat に番号 24680 の生徒が存在「する」場合は
No: 24680
Name: Toyato Jiro
Birth Day: 1970.11.12
Gender: M
Adress: 12-25, Meito Ward, Nagoya City, Aichi
Tel: 773-1252
School: Aichi Univ.
と画面に表示させる。
データベースは以下のように1行1レコードで構成されていて、1レコードは7つのアイテムから成る。
http://codepad.org/ouU2gH02
上のリンクの通り、レコード毎の区切りは改行で、アイテムの区切りはセミコロンになっている。
アイテムは、7項目あり、1) 生徒番号, 2) 名前, 3) 生年月日, 4) 性別, 5) 住所, 6) 電話番号, 7) 大学名
がこの順序で並んでいる。
上記のリンクでは、3レコード分しか無いが、各自でもう少しレコード数を増やして下さい。
以下のリンクに定義する構造体を使って、上のような実装をする meibo.c を書け。
http://codepad.org/V7MCRX0a
0261デフォルトの名無しさん
2010/12/09(木) 18:42:01問題2
ttp://codepad.org/vEHYTcqt
これ見れば1も出来ると思うけどどうだ?
0262デフォルトの名無しさん
2010/12/09(木) 18:43:46書ききれなかったので、続きです。。。
[3] 環境
[3.1] OS:Mac OS X
[3.2] コンパイラ名とバージョン:ターミナル
[3.3] 言語:C
[4] 期限:2010年12月11日 15:00まで
[5] その他の制限:ファイル処理のやり方については、まだ習っていないので使わないで下さい。
標準入力を meibo.dat に切り替えて扱うようにお願いします。
0263デフォルトの名無しさん
2010/12/09(木) 18:43:56こっちで ttp://codepad.org/4Phuv3f8
0264デフォルトの名無しさん
2010/12/09(木) 18:48:36問題5
#include <stdio.h>
int main(void)
{
int i;
double x, d = 0, an = 1;
scanf("%lf", &x);
for(i = 1; i <= 9; i++) an /= i;
for(i = 9; i >= 0; i--) {
d = d * x + an;
an *= i;
}
printf("%f\n", d);
return 0;
}
0265デフォルトの名無しさん
2010/12/09(木) 19:12:03↓
0266デフォルトの名無しさん
2010/12/09(木) 20:14:00すみません、これを御願いします。
0267デフォルトの名無しさん
2010/12/09(木) 20:21:19問題1
int main(void) {
int i;
double f[10][10];
for (i=0 ; i<100 ;i++) printf(" %f\n",f[i/10][i%10]=11.0);
return 0;
}
0268デフォルトの名無しさん
2010/12/09(木) 20:45:20a,bに入る数字を書くものと考えて。
問題1
a : 1110110000001
b : 1110001000000
とか、こんな感じでいいの?
0269デフォルトの名無しさん
2010/12/09(木) 20:59:30c : 0000101001
つーかこれC/C++言語の問題じゃないじゃん。
0270デフォルトの名無しさん
2010/12/09(木) 21:05:00プログラム例の通り5や3などの整数をうけとりそれを2進数に直す感じです。
0271デフォルトの名無しさん
2010/12/09(木) 21:07:13はい、摸擬言語です
これをC言語でプログラムを作る課題です
0272デフォルトの名無しさん
2010/12/09(木) 21:43:50同じようにやってるつもりだがNがマイナスの時に合わん。デバッグは任せた。
http://codepad.org/zmuVF75O
0273デフォルトの名無しさん
2010/12/09(木) 21:51:31自己レス。最後8ビット返すのか。最後下記な。
return R.b08;
0274デフォルトの名無しさん
2010/12/09(木) 22:06:16Prog2
http://codepad.org/aXHXvcvP
0275デフォルトの名無しさん
2010/12/09(木) 22:52:59有難う御座います。
0276デフォルトの名無しさん
2010/12/09(木) 23:05:11[2] 問題文
バイナリファイルを読み込み、バイト数を調べて表示し、
コピーを作成するプログラムを作成せよ。
バイナリファイルは『マイピクチャ』の『Sample Pictures』に含まれる
jpgファイルなどをコピーして使用すること。
[3] 環境
[3.1] windowsXP
[3.2]visual stdio2005
[3.3] c++
[4] 2010/12/11
[5] 無し
お願いします。
0277デフォルトの名無しさん
2010/12/09(木) 23:39:23ttp://d.hatena.ne.jp/pknight/20090825/1251217957
0278デフォルトの名無しさん
2010/12/10(金) 04:25:29ttp://codepad.org/g0Lt6DA1
0279278
2010/12/10(金) 04:40:25ttp://codepad.org/mHd5vqD5
0280デフォルトの名無しさん
2010/12/10(金) 07:14:17http://codepad.org/qhIHDusv
adhocだな、年は1900年代固定で良いの?
0281デフォルトの名無しさん
2010/12/10(金) 13:04:50[3] 環境
[3.2] コンパイラ名とバージョン: gcc
[4] 期限:はやめにお願いします。
お願いします!
0283デフォルトの名無しさん
2010/12/10(金) 15:53:01[2] 問題文(含コード&リンク):
Aスターアルゴリズムを用いた迷路探索解決プログラムの作成
[3] 環境
[3.1] OS: macosx
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限: 12月20日まで
[5] その他の制限:
http://www.is.kochi-u.ac.jp/~ryooka/ai/main_depth.c
のプログラムを利用して
0284デフォルトの名無しさん
2010/12/10(金) 15:56:56まったく関係ないけど、こういうコメントちゃんとついたスタイルのソース、
なんか懐かしいな。俺も十年位前そういう書き方に没頭してた。
0285デフォルトの名無しさん
2010/12/10(金) 16:12:16>/* ノード数(状態数) */
>#define N 9
こういうの馬鹿じゃないかと思うね。
#define NODE_NUM 9
で十分じゃないか
0286デフォルトの名無しさん
2010/12/10(金) 16:15:51細かい
そんなのは個人の自由
文句があるならお前が書け
0287デフォルトの名無しさん
2010/12/10(金) 16:18:47>>285は親切にもアドバイスくれてるだけだと思うが…。
0288デフォルトの名無しさん
2010/12/10(金) 16:23:34「大きなお世話」と言う
0289デフォルトの名無しさん
2010/12/10(金) 16:26:11大(おお)きな御世話(おせわ)
よけいなおせっかい。不必要な世話。他人の助言や手助けを拒絶するときに言う。余計なお世話。
0290デフォルトの名無しさん
2010/12/10(金) 16:29:44コレって俺の環境が読めない改行コードが使われてるだけ?
他の人はちゃんと見えてるのか?
0291デフォルトの名無しさん
2010/12/10(金) 16:33:200292デフォルトの名無しさん
2010/12/10(金) 17:03:150293デフォルトの名無しさん
2010/12/10(金) 17:05:29> [3.1] OS: macosx
Windowsの場合、メモ帳だと改行おかしいけど
VSとか他のエディタ使えば平気
つか名前が入ってるけどいいのか?
0294デフォルトの名無しさん
2010/12/10(金) 17:05:450295デフォルトの名無しさん
2010/12/10(金) 17:06:350296デフォルトの名無しさん
2010/12/10(金) 17:21:510297デフォルトの名無しさん
2010/12/10(金) 17:27:59それより1文字定数とかグローバル変数にいちゃもん付けてる奴(ら?)はあたまおかしい
0298デフォルトの名無しさん
2010/12/10(金) 17:29:50>/* ノード数(状態数) */
#define NODE_NUM 9
こういうの馬鹿じゃないかと思うね。
>#define N 9
で十分じゃないか
0299デフォルトの名無しさん
2010/12/10(金) 17:31:380300デフォルトの名無しさん
2010/12/10(金) 17:48:490301デフォルトの名無しさん
2010/12/10(金) 18:28:300302デフォルトの名無しさん
2010/12/10(金) 18:30:56これこそが真実だろう
0303デフォルトの名無しさん
2010/12/10(金) 18:32:29[2] 問題文(含コード&リンク):
以下のようなカレンダープログラム mycal を作成せよ。
◦ 引数なしで実行されると、今月のカレンダーを出力する
◦ 引数1個で実行されると、その引数を月とみなし、その年のその月のカレンダーを出力する
◦ 引数2個で実行されると、第一引数を月、第二引数を年とみなしてカレンダーを出力する。
[3] 環境
[3.1] windowsXP
[3.2]gcc
[3.3] c
[4] 2010/12/13
[5] 無し
0304デフォルトの名無しさん
2010/12/10(金) 18:34:54そういう下らんレスをしているお前が言うのもどうかと思うが
0305デフォルトの名無しさん
2010/12/10(金) 18:37:58グローバル変数が入ってると読む気が無くなるのは普通の感覚だと思うけど?
0306デフォルトの名無しさん
2010/12/10(金) 18:48:45[2] 問題文(含コード&リンク):http://codepad.org/MqsKAAAEを
多角形(n角形)の周囲長を求めるプログラム(nは自分で入力する)に変えなさい。
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: Microsoft Visual C++ 2008
[3.3] 言語: C++
[4] 期限:2010年12月14日
[5] その他の制限:戻り値は構造体
0307デフォルトの名無しさん
2010/12/10(金) 19:05:41この問題でMを5ビットに拡張させる意図はなんでしょうか?
何故なのか分からなくて、試しに4ビットで組んだら普通に動作してるように見えます。
http://codepad.org/iSCHLPV8
回答者を混乱させる目的でしょうか、それとも何か重要な理由がありますか?
0308デフォルトの名無しさん
2010/12/10(金) 19:13:54むやみやたらとグローバル変数だらけだと同意だけど
この程度(しかも詳細なコメント付)なら
・「どんなデータがあるのか」を把握すればいいだけ
・どこからも参照されるようなデータを一々引数で引き回すな
と思うね
で,A*探索ってことは重み付きグラフのはずなのに「重み」がないけどどうすれば?
0309デフォルトの名無しさん
2010/12/10(金) 19:31:30C++だってクラス内で変数共有して便利に使ってるわけだし。
気になるんならstaticつけとけば。
0310デフォルトの名無しさん
2010/12/10(金) 19:56:07本気で言ってるのなら、もう何も言うことはない。
ネタだと言ってくれるなら、いいネタだよと称えたい。
0311デフォルトの名無しさん
2010/12/10(金) 20:05:11http://codepad.org/9WRnuiGr
0312デフォルトの名無しさん
2010/12/10(金) 20:19:23お慈悲を!
0313デフォルトの名無しさん
2010/12/10(金) 20:25:16まずはエラーのでないコードを貼れ
はなしはそれからだ
0314デフォルトの名無しさん
2010/12/10(金) 20:41:41http://codepad.org/TpRaqTf4
0315デフォルトの名無しさん
2010/12/10(金) 20:47:18似たの最近見たけど、ただの多角形か?
正多角形とか、1の累乗根とかそんな条件はないか?
0316デフォルトの名無しさん
2010/12/10(金) 20:54:48http://codepad.org/77UTIjQ7
おねがいします。
0317デフォルトの名無しさん
2010/12/10(金) 20:57:02同一人物がせっかく書いてもらった貰ったレスを見てないとしか思えない。
0318デフォルトの名無しさん
2010/12/10(金) 20:59:15"多角形"で通じると思っているところかな。
0319デフォルトの名無しさん
2010/12/10(金) 21:06:30ただの多角形だと思います。
説明書きにも特に言及はありませんでしたので・・
0320デフォルトの名無しさん
2010/12/10(金) 21:12:28お前、前スレの奴だろ。
じゃなきゃ双子か?ここはお前のサポートセンターではないぞ。
0321デフォルトの名無しさん
2010/12/10(金) 21:17:28?
0322デフォルトの名無しさん
2010/12/10(金) 21:17:48これ誰か分かりませんか?
基本情報技術者過去問、見たいな感じで書かれているので
> 回答者を混乱させる目的
ではないと思ってます。ずっと考えてますがまだ分かりません。
0323デフォルトの名無しさん
2010/12/10(金) 21:24:35さん、ありがとうございます。
お手数ですが、ソースに説明をつけて頂けませんか?
お願い致します。。。
0324デフォルトの名無しさん
2010/12/10(金) 21:29:06http://codepad.org/qSwtexGy
0325デフォルトの名無しさん
2010/12/10(金) 21:32:35http://codepad.org/eyLxAOFV
>>320
ここはサポセンでしょ?もろもろの信頼性がないだけで
0326デフォルトの名無しさん
2010/12/10(金) 21:36:29問題よく読め。まちがってんぞ。
0327デフォルトの名無しさん
2010/12/10(金) 21:38:48ありがとうございます。
ただ、説明不足だったかも知れませが、角数を入力できませんか?
0328325
2010/12/10(金) 21:38:52>多角形(n角形)の周囲長を求めるプログラム(nは自分で入力する)に変えなさい。
頂点間の距離の総計じゃないの?
0329デフォルトの名無しさん
2010/12/10(金) 21:42:270330デフォルトの名無しさん
2010/12/10(金) 21:43:04これが正しい。>>324
0331デフォルトの名無しさん
2010/12/10(金) 21:46:27■ このスレッドは過去ログ倉庫に格納されています