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/
231 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:15:33 ] >>226 引数渡さないでどうやって初期化しろってんだよ・・・ グローバル変数推奨ですか?
232 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:16:54 ] 任意の値でいいんじゃね? とエスパーしてみる。
233 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:20:14 ] >>231 前々回あたりでグローバル変数や共有結合等の話が出ていたので、 おそらくグローバル変数を使ってだと思います。
234 名前: ◆DuoCt8/SKk [2008/05/30(金) 23:26:45 ] >>224 >>225 わざわざ僕のプログラムをベースに考えてくださるとは・・・感謝してもしきれません. しかしながら LINK : fatal error LNK1104: ファイル "Debug/test.exe" を開けません。 というエラーが・・・どこがおかしいんでしょうか? 何度もすみません・・・
235 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:27:39 ] >>233 んじゃとりあえずヘッダから書いてってみる [stack.h] #pragma once enum{ FALSE, TRUE }BOOL; BOOL init(); BOOL push(int data); int pop(); [stack.c] #include "stack.h" #define MAX_SIZE 10 extern int array[MAX_SIZE]; BOOL init(){ int i = 0; for(i = 0; i < MAX_SIZE; i++){ array[i] = 0; } return TRUE; }
236 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:28:10 ] >>226 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6746.txt
237 名前:132 mailto:sage [2008/05/30(金) 23:34:01 ] >>234 ファイル名がticket.cだとして、Visual Studio コマンドプロンプトで cl ticket.c とやってもダメでしょうか? こちらのVS2003 および Linuxでのgccではビルドできています。
238 名前: ◆DuoCt8/SKk [2008/05/30(金) 23:38:25 ] >>237 コマンドプロンプトにてそのコマンドを入力したところ C:\Program Files\Microsoft Visual Studio 8\VC>cl test.c Microsoft(R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.762 for 80x86 Copyright (C) Microsoft Corporation. All rights reserved. test.c c1 : fatal error C1083: ソース ファイルを開けません。'test.c': No such file or directory という表示が出ました. やはりだめみたいです・・・
239 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:40:39 ] >>132 のプログラム普通にコンパイル出来たが リビルドしてみたら?
240 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:40:43 ] >>238 ディレクトリ合ってる?
241 名前: ◆DuoCt8/SKk [2008/05/30(金) 23:45:07 ] >>237 すみません!試行錯誤しながら作業を繰り返していったら 実行することができました! あと・・・回数券などを入力した際にすぐに買える切符はありません と表示されてしまうのはどう直せばいいでしょうか? それで,もし良かったら・・・枚数や子供賃金入力のヒントなどを教えて頂きたいです.
242 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 23:46:58 ] >>241 ビルドできたか。よかた。 買える切符はありませんっていうのは所持金?が最低額の切符よりも 少ない場合です。 2000円ぐらい突っ込んでからやってみたらどうでしょ。
243 名前: ◆DuoCt8/SKk [2008/05/30(金) 23:52:03 ] >>242 おっしゃる通り多くしたらできました. 色々とありがとうございました! それで・・・子供賃金や枚数などのアドバイスは頂けないでしょうか? くどくてすみません.
244 名前:132 mailto:sage [2008/05/31(土) 00:05:56 ] >>243 ticket2の前に子供にしますか?って聞くとか普通乗車券の場合は coin_numの前に枚数聞くとかですかね。 ちなみにその辺を実装するつもりなら切符の一覧をベタで書く方法を やめたほうがいいと思います。すぐ気づくかもしれませんが。 たとえば、さらに350円の切符を追加しましょうってなったとき、今の 構造だと大変でしょ? >>132 のはそういう目にあわないようにしてあって、 int ticket_price_list[] = {140, 180, 210, 270, 0}; ↓ int ticket_price_list[] = {140, 180, 210, 270, 350, 0}; ってやればすむようになっていました。 いろいろ見比べて、上手く利用できるところは持ってってください。
245 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 00:10:44 ] あとは、係員、呼び出しボタンも、あるいは、ひつようですね、ヘルプという、意味で
246 名前: ◆DuoCt8/SKk [2008/05/31(土) 00:16:39 ] >>244 アドバイスありがとうございます. >>132 のいい部分を見つけて,それを使えればいいということでしょうか?わかりました! もう迷惑はかけられないので,残りは自分で頑張ってみます,もしかしたらまたここに来ることが あるかもしれないのでその時にはまたよろしくお願いします. 本当にありがとうございました.
247 名前:132 mailto:sage [2008/05/31(土) 00:21:02 ] >>246 >>132 のソースが優れてるとはいいませんが、いいなと思う部分が あれば、どんどん使ってください。 提出までの期間、がんばってね。
248 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 00:50:00 ] >>246 みたいなのだと こっちもやってていい気分なんだがなぁ。。
249 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 00:56:44 ] 自分で勉強してやろうとする人はそもそも宿題スレに頼みに来ない
250 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 01:09:31 ] >>176 おっぱいうp
251 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 01:13:55 ] (>_<) (・人・)
252 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 01:31:33 ] [1] 授業単元:数値解析 [2] 問題文(含コード&リンク):(@〜Cの座標データ(xi,yi i=1,2,3,4)を代入すると,@ 〜Cの全ての点を通り,AとBにおいて位置・速度・ 加速度の連続性を保証し,@とCで速度と加速度が零 となる関数を求め,画面表示するプログラムを作成せよ.) [3] 環境 [3.1] OS: Windows Vista [3.2] コンパイラ名とバージョン: Visual Studio 2005 [3.3] 言語: C [4] 期限: 2008年6月13日0:00まで [5] その他の制限: 特になし
253 名前:252 mailto:sage [2008/05/31(土) 01:33:11 ] 連投すいません、 自分でやっても全然方針立たないのでのでよろしくお願いします。。
254 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 01:40:13 ] そういうプログラムだけでなく数学的な基礎学力を必要とする問題は まずその数学的な解放を記さないと回答率が急速に下がりやがります。
255 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 07:05:28 ] >>252 確認。以下の2つの条件のうちどれで解いてほしい? 1. 「連続性」は必要だが「滑らか」でなくて構わない、しかも、@、C以外の点で速度と加速度が0になる点が許される 2. 問題文は誤っており、位置、速度、加速度ともに「滑らかに連続」でなければならない、(この場合、普通に解けば、@とC以外の点で速度と加速度は0にならない)
256 名前:デフォルトの名無しさん [2008/05/31(土) 08:35:31 ] [1] 授業単元:プログラミング [2] 問題文:数値を2つ入力し、大きい数値、小さい数値の順に出力する <実行例1> <実行例2> 24 (←入力1) 17 (←入力1) 16 (←入力2) 35 (←入力2) 大:24 (←出力1) 大:35 (←出力1) 小:16 (←出力2) 小:17 (←入力2) [3] 環境 [3.1] OS: Windows Vista [3.2] コンパイラ名とバージョン: bc pad [3.3] 言語:C言語 [4] 期限:6/2 [5] その他の制限:習い始めて一ヶ月程度なのでできるだけ簡単な関数での回答お願いします
257 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 08:53:02 ] #include <stdio.h> int main(void){ int a,b; printf("入力1:"); scanf("%d",&a); printf("入力2:"); scanf("%d",&b); if(a>b) printf("大:%d 小:%d",a,b); else printf("大:%d 小:%d",b,a); return 0; }
258 名前:256 [2008/05/31(土) 09:39:00 ] >257さん 無事できました。本当に助かりました。 回答ありがとうございました。
259 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 09:41:05 ] >>235-236 ありがとうございます。
260 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 10:10:58 ] >>252 (っ´▽`)っ 要するに等加加速度運動のことかな? 等速度運動(等速直線運動):v(t)=k(一定) 等加速度運動:dv(t)/dt=k(一定) 等加加速度運動:dv(t)/d2t=k(一定) だとすれば、vはtの2次関数、変位x(=vt)はtの3次関数ということになる。 3次関数の係数を一意に得るには、それが通る4つの点を指定すればよい。
261 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 10:17:21 ] まったくもって意味がわかりませんぬ。
262 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 10:19:08 ] (っ´▽`)っ 下の式をa, b, c, d, e, f, g, hについて解けばよい。 x(1) = a * t(1)^3 + b * t(1)^2 + c * t(1) + d x(2) = a * t(2)^3 + b * t(2)^2 + c * t(2) + d x(3) = a * t(3)^3 + b * t(3)^2 + c * t(3) + d x(4) = a * t(4)^3 + b * t(4)^2 + c * t(4) + d y(1) = e * t(1)^3 + f * t(1)^2 + g * t(1) + h y(2) = e * t(2)^3 + f * t(2)^2 + g * t(2) + h y(3) = e * t(3)^3 + f * t(3)^2 + g * t(3) + h y(4) = e * t(4)^3 + f * t(4)^2 + g * t(4) + h
263 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 10:24:55 ] (っ´▽`)っ この問題は座標上の4点を指定するってのがミソ 座標上の4点を指定すれば等加加速度運動が実現する。 座標上の2点を指定すれば等速度運動が実現する。 等速直線運動だね。 座標上の3点を指定すれば等加速度運動が実現する。 例として、等速円運動が挙げられる。
264 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 10:28:14 ] (っ´▽`)っ ちなみに、5点を指定すれば、等加加加速度運動(dv/dt3=一定、dx/dt4=一定)、 6点を指定すれば、等加加加加速度運動(dv/dt4=一定、dx/dt3=一定)を実現できる。 つまり、一般化すれば n点を指定すれば、dv/dt(n-2)=一定、dx/dt(n-1)=一定の運動を実現できるってこと。
265 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 10:38:02 ] (っ´▽`)っ ちなみに、 @とCで速度と加速度が零 とあることから、係数は一意に決まるはず。 最初は止まってるが、徐々に加速し始めて、 速度、加速度ともに最高になり、 それから徐々に減速し始めて、最後は止まる って感じになる。
266 名前:252 mailto:sage [2008/05/31(土) 13:30:52 ] すいません、問題文をそのままコピペしたんで、書いてありませんでしたが、 補間法の授業です、教授に質問してきたところ、ヒントを貰えましたんで書きます。 スプライン補間法を用いてttp://kjm.kir.jp/pc/?p=58428.jpgのような感じで解け、と 言われました。
267 名前:デフォルトの名無しさん [2008/05/31(土) 14:27:42 ] >>252 教授がSplineだというんだったらぐぐるしかないか。 でも問題の出し方悪杉
268 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 15:49:11 ] 誰か未解決まとめてー >>側近タン 「加」がどんどん増えてくのはどういう仕組みだw 等加加加加速度www
269 名前:デフォルトの名無しさん [2008/05/31(土) 15:55:16 ] [1] 授業単元:アルゴリズム [2] 問題文(含コード&リンク): 問1. 10個の数字をキーボードから入力し、「線形リスト」に挿入するプログラム。挿入するプログラムを作成せよ。 挿入後はリストの内容を出力する。 問2. 上の機能に加え、探索の対象データをtargetに入力し、targetに関する線形探索を行うプログラムを作成せよ。 (「探索成功」・「探索失敗」となるようなtargetを数回設定・入力して下さい。) 問3. 探索成功の場合にはそのデータを「リスト」から削除し、探索失敗の場合にはそのデータを「リスト」の最後尾に挿入する。 (作成要項) ・ここでのレコード、すなわちリストの要素は次の構造体で定義する。 typedef data{ int idnum; struct data *next; }data[NMAX] [3] 環境 [3.1] OS: xp [3.2] コンパイラ名とバージョン: VC 6.0 [3.3] 言語: C [4] 期限: 6/3まで [5] その他の制限:前回作った線形探索と2分木探索のプログラムです。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6743.txt 自分でやってみましたが解けませんでした…誰か助けて下さい お願いします
270 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 17:57:58 ] >>269 あとでやってあげる
271 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 19:27:19 ] 変則的な問題かと思いますが >>109 何方かお願いできませんでしょうか。
272 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 19:33:23 ] [1] 実験解析 [2] プログラムと同じフォルダ内のbmpファイル(200*300pix)をプログラム実行 時に読み込ませ,1pixごとにそのRGB値を調べさせてexcelに書き出すプログラム [3] 環境 [3.1] OS:Xp [3.2] BCC Developer [3.3] 言語 c [4] 期限: 無期限ですが,できるだけ早いうち(できれば月曜まで)に宜しくお 願いします. [5] その他の制限:特にはありません.私は初心者なので,後学のために解説等が 含まれていたらうれしいです.
273 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 19:36:16 ] WIndowsのbmpファイルといったところで、結構多数のマイナー フォーマットに分化している件は無視なの?
274 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 19:39:41 ] >WIndowsのbmpファイルといったところで、結構多数のマイナーフォーマットに分化している件は無視なの? 無視して大丈夫だと思うんですが、大丈夫だと思うんですが、大きな違いってあるんですか?一応256色を考えているのですが。
275 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 19:49:59 ] 後ろから読んだり前から読んだりヘッダがいろいろだったり。 だいたい、EXCELに書き出すって何? OLEでも使ってEXCEL起動さす気?
276 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 19:50:14 ] [1] 授業単元: [2] 問題文kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6749.txt [3] 環境 [3.1] OS:xp [3.2] コンパイラ名とバージョンVC 6.0 [3.3] 言語: C [4] 期限:日曜日 [5] その他の制限:関数まで習ってます
277 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 20:02:02 ] >>276 void func1(const int data[NUM1][NUM2], float avg[NUM1]) { int i, j, s; for(i=0; i<NUM1; i++) { s=0; for(j=0; j<NUM2; j++) s += data[i][j]; avg[i] = (float)s / NUM2; } } int func2(const float avg[NUM1]) { int i, best=0; for(i=1; i<NUM1; i++) if(avg[i]>avg[best]) best = i; return best; }
278 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 20:04:05 ] >だいたい、EXCELに書き出すって何? >OLEでも使ってEXCEL起動さす気? 説明不足で済みません。得たデータがexcelだと、後々の考察が楽なのでexcelに書き出すと書きました。 txtファイルでも問題ないのですが、後々の処理が大変だと思ったので、出来たらとおもいまして。
279 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 20:05:11 ] >>277 m<_ _>m
280 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 20:11:39 ] ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6750.c 流れも読まずにHTMLのTABLEにBMP画像を出力するプログラムを書いてみたでおじゃる クソースゆえ突っ込まないでたもう
281 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 20:28:51 ] >>280 ありがとうございます。しかし、私の求めるものとちょっと違うんです。 勉強のために有意義に使わせていただきます。すみません
282 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 20:37:03 ] EXCEL形式とはいかんが、CSV形式に出力したのを EXCELで読み込むとか?
283 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 20:41:16 ] >>282 それなら、Excelの処理も楽ですね。よろしくお願いします。
284 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 21:04:01 ] ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6751.c RGBそれぞれ2桁ずつ、計6桁の16進数の値を コンマで区切る形式に出力することは出来たが・・・ EXCELへのインポートの際、少々問題が。 バージョン2003で データ>外部データの取り込み で試してみたんだが、 16進数は10進数の数値としては扱えないため、セルの書式を数値にしてあると 先頭に0があればそれはなくなってしまった。 予めワークシートのセルの書式を文字列にしてみたが、今度は Eが入っていると 5.54E+48 のように表示されている・・・ さて、その辺の対策は・・・プログラム側でしておくべきか?
285 名前:269 [2008/05/31(土) 21:07:06 ] >>270 宜しくお願いします
286 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 21:53:10 ] >>284 返信遅くて済みません。ありがとうございます。bmpを256色対応で読み込むようにしたら良くなりませんか? 質問できちんと書いていなかったんですが、256色を使おうと思っているんですが。 手直しなど大変だと思いますが、よろしくお願いします。
287 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 21:58:05 ] ttp://www.kk.iij4u.or.jp/~kondo/bmp/ 256色のBMPを解析して、後はそれに応じて・・・ あのコードを適当に書き換えればおkだが、ちと疲れたんで明日また
288 名前: ◆tr.t4dJfuU mailto:sage [2008/05/31(土) 22:05:44 ] >>287 わがままに付き合っていただいて大変ありがとうございます。 私も作っていただいたプログラミングで勉強します。
289 名前:デフォルトの名無しさん [2008/05/31(土) 22:28:50 ] [1] 授業単元:プログラミング [2] 問題文(含コード&リンク):実数がどのように保存されているか表示する。(txt) 1行16バイトで表示。 [3] 環境 [3.1] OS: windows [3.2] コンパイラ名とバージョン: visual studio [3.3] 言語: C言語 [4] 期限: 2008/5/31 [5] その他の制限: 特になし
290 名前: ◆GV8UxHX4R. [2008/05/31(土) 22:31:04 ] [1] 授業単元:プログラミング演習 [2] 問題文:3次元ベクトルの内積と成す角を算出せよ [3] 環境 [3.1] OS:xp [3.2] コンパイラ名とバージョン:borland C++ compiler ver.5.5 [3.3] 言語: C++(?) [4] 期限:6/5 21:59まで [5] その他の制限:ベクトルは配列を使って表すこと。内積の計算はループ文で行うこと。絶対値はsqrt、角度はacosを使って求めること。1次元配列まで習っています ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6752.cpp ベクトルA、Bの成分を全て1か2にした時に(まだ見落としがあるかもしれませんが)「acos: DOMAIN error」と表示され、成す角が「+NAN」と表示されてしまいます。 それ以外の値では正常に動作するようです。 また、37、38行目で「abs_a = sqrt((vctr_a[0])*(vctr_a[0]) ・・・」としていますが、これを「abs_a = sqrt((vctr_a[0])^2 ・・・」とするとおかしなことになります。 書き方が間違っているということですが、後者のように表記する方法はないのでしょうか。 どなたかご教授願います。
291 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:34:06 ] >>46 >>289 >>50
292 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:34:18 ] [1] ゼミ実験 [2] ○実験1、マルコフ情報源の生成プログラムの作成 プログラムは double markov(int K ,double alfa, double *a_coeff, double *mem); のように、次数Kとαの値および長さKの係数配列a_coeffとメモリ配列memのポインタを引数としマルコフ情報源出力Xnを返す関数文で書く。 main文では、Kとαの値の設計および配列a_coeffとmemの確保と配列の値の設定を行う。 なお、memは全零に初期設定する。 main文で関数marukovを呼出す度にマルコフ情報源の系列の値が順次得られ、N個のデータをファイルに記憶する。 なお、一様乱数からガウス関数への変換は(1)または(2)の方法を用いる。 ○実験2、マルコフ情報源の生成実験 上で作成したプログラムを用いて、K=1の1次マルコフ情報源についてのみ系列の生成実験を行う。 ここで、係数a1は安定条件より|a1|<1の範囲に限定する必要があり、実験では、a1=±0.1、±0.9の4種類についてマルコフ情報源出力系列の1024個のデータ(最初の1番目のデータは捨てる)をファイルに出力され、それらのグラフを描く。 なお、係数αは出力系列Xnの分散σx^2=1になるように決定する。 問題【1】実験1のマルコフ情報源の生成プログラムを示しなさい。 問題【2】実験2のマルコフ情報源出力系列を図示し、AR係数a1=±0.1、±0.9の場合について、系列の違いを定性的に説明しなさい。 また、その違いの出る理由をK=1のときの式(2)のファイルの周波数応答F(e^jω)=α/(1+a1・e^-jω)より説明しなさい。 Un=(1./(RAND_MAX+1.))*rand(); ・・・・(1)式 F(z)=α/(1+a1・z^-1+a2・z^-2+・・・・・・+ak・z^-K) ・・・・・(2)式 [3] 環境 [3.1] OS:XP [3.2] コンパイラ名とバージョン: Vidual Studio2005 [3.3] 言語:C++ [4] 期限: 2008年6月1日24:00 [5] その他の制限: 急ぎですいません。問題【2】実験2は図示があるので問題【1】だけでもいいのでお願いします。
293 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 22:34:48 ] >>290 (っ´▽`)っ (vctr_a[0])^2 ではなく、C言語では、 power(vctr_a[0], 2) ね。 前者の表記の仕方はBASICかな?なんだっけ?
294 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 22:36:13 ] >>290 (っ´▽`)っ 間違った。powだった。pow! ttp://www.bohyoh.com/CandCPP/C/Library/pow.html
295 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 22:37:28 ] >>290 (っ´▽`)っ ちなみに、C言語上、^は、ビット単位の排他OR演算子を表す。 全く別物。
296 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 22:38:26 ] >>290 (っ´▽`)っ っていうか、明らかにC言語のソースなのに、 拡張子がcppなのは何故?
297 名前:デフォルトの名無しさん [2008/05/31(土) 22:42:38 ] 3より大きく、入力された上限の数未満の全ての自然数かつ非素数について、3で割り切れるものは無視し、3で割った余りが1のものは加算し、余りが2のものは減算して合計を求めよ #include <stdio.h> int main(void) { int i ; int num; int sum; sum = 0; printf("Input Upper Limit: "); scanf("%d", &num); for(; num <= 3; num = num - 1) { if( num % 2 == 0) { if( num % 3 == 2) { sum = sum + num; } if( num % 3 == 1 ) { sum = sum - num; } } else { for ( i=3; i*i<=num; i = i + 2) { if( num % i == 0) { if( num % 3 == 2) { sum = sum + num; } if( num % 3 == 1 ) { sum = sum - num; } } } } } printf("%d\n", sum); return 0; } 自分でやってみたんですがうまくいかないです。どこがおかしいですか?
298 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 22:54:12 ] >>290 (っ´▽`)っ VS2005で実験。 確かにacosの戻り値が-1.#IND000000000000になった。 デバッグしたら、prd / (abs_a * abs_b)=1.0000000000000002 つまり、acosの定義域[-1, 1]外ということ。 この誤差(0.0000000000000002)に対応しなければならない。
299 名前:側近中の側近 ◆0351148456 [2008/05/31(土) 22:56:02 ] (っ´▽`)っ ついでに、C言語だとしたら、 double ang = acos(prd / (abs_a * abs_b)); はダメだよ。 ちゃんと、関数の最初にdouble angって宣言しないとね。
300 名前:yumi mailto:sage [2008/05/31(土) 23:18:27 ] >>297 よく読んでないからわかんないけど 3より大きい数字を入力したら for(; num <= 3; num = num - 1) <-このループに入れないよ この時点でオカシイよねっ それと素数判定もしなきゃダメなんじゃない? お風呂入って寝ます オヤスミ♪<(゜ー^)ノ^*・'゜☆。.:*:・'☆'・:*:.。.:*:・'゜:*:・'゜☆
301 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 23:23:51 ] >>297 たぶん、これでいい。 #include <stdio.h> int main(void) { int i ; int num; int sum = 0; printf("Input Upper Limit: "); scanf("%d", &num); for(; num > 3; num --) { if( num % 2 == 0) { if( num % 3 == 2) { sum = sum - num; } if( num % 3 == 1 ) { sum = sum + num; } } else { for ( i=3; i*i<=num; i += 2) { if( num % i == 0) { if( num % 3 == 2) { sum = sum - num; } if( num % 3 == 1 ) { sum = sum + num; } break; } } } } printf("%d\n", sum); return 0; }
302 名前: ◆GV8UxHX4R. mailto:sage [2008/06/01(日) 00:28:02 ] 側近中の側近 ◆0351148456さん回答ありがとうございます。 >>296 教師に言われた手順に従っていただけなのですが、違うんですね。 適当な教師だなあ >>298 prd / (abs_a * abs_b)の部分を一旦別のdouble型変数に入れてからacosしてみましたがダメでした。 doubleの精度ならその程度の誤差は出ないんじゃないかと思ったんですが・・・。 >>299 それは一番最初に宣言しておけと言うことでしょうか。
303 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 00:34:16 ] >>297 ,301 「入力された上限の数未満」なので、以下。 #include <stdio.h> int main(void){ int i, num, sum=0; printf("Input Upper Limit: "); scanf("%d", &num); for(num--; num > 3; num--){ for ( i=2; i*i<=num; i ++){ if( num % i == 0){ if( num % 3 == 2){ sum -= num; } if( num % 3 == 1){ sum += num; } break; } } } printf("%d\n",sum); return 0; }
304 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 00:39:10 ] >>303 なぜ処理速度を落とした><
305 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:04:59 ] >>109 こんな感じでどうでしょ。親はすぐ終わって、子プロセスが2秒後に環境変数吐き出します。 #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main(int argc, char *argv[], char *envp[]) { int i; pid_t pid = fork(); if (pid == -1) exit(1); if (pid == 0) { /* 子プロセスの処理 */ sleep(2); /* 子というのを分かりやすくしてます */ for (i=0; envp[i]!=NULL; i++) printf("%s\n", envp[i]); } else { /* 親プロセスで何かしたいならここに */ } exit (0); }
306 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:09:29 ] >>305 Sleep(2)じゃなくて2000じゃない?
307 名前:305 mailto:sage [2008/06/01(日) 01:14:07 ] >>306 DOSならそうかもですね。
308 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:26:10 ] Linuxか ゴメ
309 名前:10 [2008/06/01(日) 01:33:51 ] 期限は過ぎてしまいましたが、まだ完成させることができません・・・ 気が向いたときでいいんでどうかよろしくお願いします> < kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6753.txt
310 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:45:17 ] 奥村さんのアルゴリズム事典に載ってるので買うとよいかもです。 図書館で借りてもいいかも。
311 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 02:35:19 ] >>304 速度気にするなら素数判定は篩にして、ループも分けろよw
312 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 02:46:09 ] >>309 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6754.c 張ってあるソースは使ってません
313 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 03:08:09 ] >>311 素数判定部のループについて、元ソースの for ( i=3; i*i<=num; i = i+2) を for ( i=2; i*i<=num; i ++) こう変えちゃったことについてだよ。 出題者なりのチューニング結果を無駄にしちゃったらかわいそうだよって いいたかったの。
314 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 03:39:59 ] >>313 意味が判っててチューニングしてるんなら無視すれば良いんじゃね? コピペしか出来ないなら、チューニング以前に身につけるべきものが多そうだし。
315 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 03:46:19 ] 301のは速度に拘ったソースでもないだろ else ifにすらしてないんだから
316 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 09:10:24 ] どなたか>>102 >>104 をお願いします†~。゚(>о<)゚。
317 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 09:19:31 ] [1] 授業単元: プログラミング1 [2] 問題文 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6755.txt [3] 環境 [3.1] OS: Windows 2000 [3.2] コンパイラ名とバージョン: Vidual Studio2005 [3.3] 言語: C++ [4] 期限:2008年6月2日 [5] その他の制限: 標準ライブラリー禁止、初歩関数まで学習 標準ライブラリー使えないとなるとさっぱりなのですが どなたかお助けを・・・
318 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 10:06:54 ] >>317 int zettaichi( int x ) { return x < 0 ? -x : x; } int main() { printf("-9 => %d\n3 => %d\n0 => %d\n", zettaichi(-9), zettaichi(3), zettaichi(0)); } printfだけ標準ライブラリだが、そこまで禁止なら手に負えん
319 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 10:31:25 ] >>318 ありがとうございます、全て禁止だと表示できませんよね(´Д`;) これでokです、助かりました
320 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 11:56:13 ] 課題出してくれる人は 頼むからリストに追加してまとめてくれ。 どれが優先事項なのかさっぱりわからん。
321 名前:10 mailto:sage [2008/06/01(日) 12:37:58 ] >>312 すごい・・・スタート地点の頂点も選べるようになってる・・・! 解説までつけていただき、とてもわかりやすかったです! ありがとうございましたm(_ _)m
322 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 13:29:02 ] お願いします。全くわかりません>< [1] 授業単元:コンピュータシミュレーション [2] 問題文(含コード&リンク): モンテカルロ法により、円の面積を求める考え方を利用し、 「球の体積」と円周率、真の円周率に対する誤差を求めるプログラムを完成させよ。 必要となる一様乱数は、課題AのGOUDOU関数を使用すること。 プログラムは必ず可動であること。 pubweb.cc.u-tokai.ac.jp/arai/sim/kadai/kadai3.html ※課題A pubweb.cc.u-tokai.ac.jp/arai/PDF/sim/ 一様乱数フローチャート.pdf [3] 環境 [3.1] OS:WindousXP [3.2] Visual C++ [3.3] 言語:C++ [4] 期限:今日の24時まで [5] その他の制限:無し
323 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 13:36:13 ] >>316 >>104 だけやった kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6756.txt エラーチェックは一切やってないけど、チェックすべきとこはコメントで書いといた つーか大分大学の出力ワロタw
324 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 14:26:14 ] >>319 できますよ。前スレでそのようなのを作った。
325 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 15:16:04 ] [1] 授業単元:アルゴリズム [2] 連結リストを用いて、スタックを実現するプログラムを作成 連結リストを用いて、キューを実現するプログラムを作成 [3] [3.1] OS:win [3.3] 言語: C [4] 期限:月曜 お願いします。
326 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 15:29:35 ] 月曜っていつの月曜日だよ 今日中ってことか?
327 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 15:40:42 ] >>288 >>272 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6757.c たぶん出来ている
328 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 15:49:29 ] >>102 こんなんでいいのかな? kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6758.txt
329 名前:316 mailto:sage [2008/06/01(日) 16:07:10 ] >>323 >>328 ありがとうございましたm(._.)m 明日動作確認してみます!
330 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 16:07:44 ] >>305 解説まで付けていただき、ありがとうございました。 助かりました!
331 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 16:14:17 ] >>171 >>172 二人とも、ありがとうございました! 返事が遅くなってすみません。