1 名前:デフォルトの名無しさん [2007/11/05(月) 20:38:18 ] あなたが解けない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++の宿題を片付けます 97代目 pc11.2ch.net/test/read.cgi/tech/1193150915/
231 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 21:43:01 ] >>226 #!/usr/local/perl $a = <STDIN>;$r = <STDIN>;$n = <STDIN>; print $a*$n if($r == 1);print $a*(1-$r**$n)/(1-$r) if($r != 1);
232 名前:デフォルトの名無しさん [2007/11/10(土) 21:46:45 ] 質問テンプレってどこにあるんですか? 直接とべるようにしてくれたらうれしいです
233 名前:デフォルトの名無しさん [2007/11/10(土) 21:52:50 ] 等比数列の初項aと公比rと項数nをキーボードから入力して、それらを画面に表示して最後にそれらの総和を表示する。 ただし、a,rは実数とする
234 名前:215 [2007/11/10(土) 21:55:25 ] >>228 struct person{ char name[20]; //char*では'q'の影響を受けるため int age; struct person* next; }; これはプログラム最初の6行目を書き直せということでしょうか? addList()が何をしててmain内でどうすればいいのか分かりません。
235 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:09:21 ] 宿題を書き込んだ人がこのスレの流れをみてるんだけど 難易度高いやつからくそ低い宿題まで書き込まれるんですね。。。
236 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:14:57 ] >>232 俺が適当にテンプレを埋めて置く、間違ってる所は指摘しろ 【質問テンプレ】 [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク): 等比数列の初項aと公比rと項数nをキーボードから入力して、それらを画面に表示して最後にそれらの総和を表示する。 ただし、a,rは実数とする [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: BCC [3.3] 言語: C [4] 期限: 2007年11月11日零時零分零秒 [5] その他の制限: 普通に作ってってね。簡単すぎるからって ふざけて物凄いコード書かないでね。
237 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:18:05 ] >>236 #include<stdio.h> int main(void){ double a, r, an, sum; int i, n; printf("等比数列の初項 a (実数) を入力して下さい : "); scanf("%lf", &a); printf("等比数列の公比 r (実数) を入力して下さい : "); scanf("%lf", &r); printf("等比数列の項数 n (整数) を入力して下さい : "); scanf("%d", &n); printf("a=%g r=%g n=%d\n", a, r, n); an=a;sum=0.0; for(i=0;i<n;i++){ sum+=an; an*=r; } printf("sum=%g\n", sum); return 0; }
238 名前:aho mailto:sage [2007/11/10(土) 22:20:42 ] >>234 addList()については以下のページを参照。わかりやすくかいてある。 www9.plala.or.jp/sgwr-t/c/sec15-5.html --構造体のメンバnameの型変更について-- while()内にif(!strcmp(buf, "q")) ていう部分があるでしょ? そこはbufが"q"だったらループを抜けるってこと。 ここまではOKっすよね? この後の文の name = buf; が厄介なのである。 nameの先頭ポインタにbufの先頭ポインタを代入している。 これをaddList()内でstrcpyの代わりにやることが出来ない。 nameはbufのポインタを参照しているから、bufが変わればnameも一緒に変わってしまう。 説明下手でごめんちゃい。
239 名前:デフォルトの名無しさん [2007/11/10(土) 22:20:43 ] 巡回セールス問題を解くプログラムを順列を用いて書きたいのですけど for(i = 0; i < n; i++) used[i]=NO; perm(0); return(0); } void perm(int d) { int i,j; int b[MAXN]; int s = adj[a[0]][a[n-1]]; if(d == n){ for(i = 0; i < n-1; i++){ s+=adj[a[i]][a[i+1]]; } } else { for (i = 0; i < n; i++) { if (used[i] == NO) { a[d] = i; used[i] = YES; perm(d + 1); used[i] = NO; } } } } これだけだとただの列挙になってしまいます 最小値だけをだすにはどうしたらいいでしょうか?
240 名前:aho mailto:sage [2007/11/10(土) 22:22:15 ] >>235 その通り。 その中から暇人達がやりたい問題を選んでやるわけなのだよ、明智君。
241 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:26:14 ] 協力お願いします。 wwwww.2ch.net/test/read.cgi/news4vip/1194617474/
242 名前:215 mailto:sage [2007/11/10(土) 22:29:06 ] >>238 さん感謝です。 まだよく分かっていませんが考えてみます。 分からなかったらまた質問したいので215のリンクを貼りなおしました。 先生の元データ: kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5240.txt 自分の途中データ: kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5241.txt たぶんまた来ますがよろしくお願いします。
243 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:29:53 ] やりたい問題だけなのか。。。 175なんて理解不能な問題だしたおれってアホだな。。。 上の部分だけならなんとか計算できるレベルなのに 下にもあってしかも上と移動するなんてありえないな。。。 どう書いていけばいいのかわからないんだよね。。。
244 名前:aho mailto:sage [2007/11/10(土) 22:32:52 ] >>175 >>243 もう一度upしてくれ! ファイルが見つからん!
245 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 22:33:01 ] >>175 なんて問題すら見えないんだが… 余程のエスパーでないと解きようも無い
246 名前:175 mailto:sage [2007/11/10(土) 22:52:39 ] [1] 授業単元: 確率論 [2] 問題文: toku.xdisc.net/cgi/up/vcc/nm12581.txt ここに書きました。 移動50回するものとします。 図はこんな感じです。 toku.xdisc.net/cgi/up/vcc/nm12580.jpg [3] 環境 [3.1] OS: LINUX [3.2] 言語: C [4] 期限: 11月11日 [5] その他の制限: 図の上の1,2,3を構造体配列struct gstate upnum[3] 図の下の10,11を構造体配列struct gstate downum[2]として。 構造体メンバnumに1,2,3,10,11をいれるように。 お願いします。
247 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:05:10 ] >>246 gstateの定義は自由?
248 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:22:28 ] >>246 なんだ 簡単じゃん
249 名前:175 mailto:sage [2007/11/10(土) 23:26:17 ] 自由でいいです。 まー図の状態数をもっと多くしたかったんですけど。 toku.xdisc.net/cgi/up/vcc/nm12583.jpg こういう感じが本番なんですけどね。
250 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:27:36 ] 増えただけで考え方は全く同じ
251 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:34:24 ] 何かこれ有効グラフの最大流と最小カット問題みたいだな
252 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:40:15 ] >>246 行列につっこめれば、ただの積ですむのに……
253 名前:175 mailto:sage [2007/11/10(土) 23:42:31 ] 上だけなら行列につっこめばいんだけど 下が邪魔なんですよ。
254 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:48:54 ] >>253 いや、かわんないだろ?
255 名前:デフォルトの名無しさん mailto:sage [2007/11/10(土) 23:50:15 ] >>253 なぜ分けて考える
256 名前: ◆54R0MOHTQo mailto:sage [2007/11/10(土) 23:58:08 ] [1] 授業単元:データ構造論 [2] 問題文(含コード&リンク): フリーリストを用いた任意精度整数の実現 かなり長くなるのでアップロードしました kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5242.txt [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン:gcc 3.3 [3.3] 言語: C [4] 期限: 11/11 24:00 [5] その他の制限: 特になし 自分の頭では1日かかっても全く分かりませんでした・・・ よろしくお願いします
257 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 00:11:22 ] >>246 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5243.txt 上でも書いたけど、行列で組んだ方がシンプル。ま、いっかってことで。
258 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 00:13:05 ] >>246 構造体の名前は変更しておいて 使い方は data.txt をリダイレクトするだけ ans246 < data.txt ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5244.lzh
259 名前:175 mailto:sage [2007/11/11(日) 00:21:33 ] >>257 >>258 ありがとうgございます
260 名前:215 [2007/11/11(日) 00:33:21 ] >>215-216 で質問した者です。 >>228 と>>238 のahoさんによるヒントで書き直してみましたがうまくいきません。 うちのコンパイラに問題があるのかもしれません。 というのも>>238 に紹介されたサイトの長いプログラムをコンパイルしてもうまく 実行されないからです。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5245.txt 作ったプログラムがうまくできているか確認お願いします。 でもたぶん間違っているので訂正もお願いします。 (もしahoさんがいれば話が早いかもしれません。)
261 名前:215 mailto:sage [2007/11/11(日) 00:36:10 ] ちなみに>>215 はリンク切れで>>242 にもう一度あげています。
262 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 00:57:13 ] 246ですけどもうひとつ付け足しでいいですかね?
263 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:00:52 ] >>262 では断る
264 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:16:00 ] グラフって楽しいね
265 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:17:11 ] >>260 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5246.txt あ、めんどくさくてfreeの方直してなかった。ま、いっか。
266 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:20:31 ] >>256 でんつーだーい BigNumberとBigNumberNodeの両方でフリーリスト使うようにするとか書かなきゃ これじゃどっちかだけフリーリストを使って書くかもよ? なんにせよ全部の問題やるとかなり長いので明日までにはやってられないと思うけど つかフリーリストの構造がわからないんじゃあフリーリスト使わないで書いてみればいいのに
267 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:21:24 ] >>266 ちょwww またでんつーだーいかよwwww
268 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:22:22 ] [1] 授業単元: 確率論 [2] 問題文: ここに書きました。 toku.xdisc.net/cgi/up/vcc/nm12605.jpg.html 図はこうです。 toku.xdisc.net/cgi/up/vcc/nm12604.txt.html [3] 環境 [3.1] OS: LINUX [3.2] 言語: C [4] 期限: 11月12日 [5] その他の制限: A,B,C,Dはそれぞれファイルとして扱う 例えばAには 0.6 0.4の2つの数値だけ書かれてあり、その数値を読み取るようにする。 1と1、0と0が一致したらその状態同士、3つ選択肢ができることになるので 右の確率を半分にわけて0.6 0.2 0.2として とどまる確率0.6 上の次の状態に移動する確率0.2 下のつながった状態に移動 する確率が0.2となります。 下も同様に。
269 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:25:55 ] >>267 今回は5%3年生のま科だな ちょっと上は7%4粘性のか科だったはず 正直お前らもうちょっと頑張れと
270 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:25:58 ] >>268 つーか、もとの問題文でも上と下は別要素で扱えってなってるの? 激しくクソなんだが。
271 名前:215 [2007/11/11(日) 01:30:41 ] >>265 ありがとうございます! うちのコンパイラ(msys)では実行されませんでしたが学校でコンパイルしてみます。 person_free()微妙に変わってましたがさらに手を加えたほうがいいですか?
272 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:32:49 ] >>271 ^Zって書いてるけど、ctrl+Dで代用。 Windows用の豆知識な。
273 名前: ◆wFVK8h9bmM [2007/11/11(日) 01:33:11 ] [1] 授業単元: 関数、ポインタ変数 [2] 問題文(含コード&リンク): −− 断熱圧縮過程における温度・圧力の計算 −− 初期温度 T0、初期体積 V0、初期圧力 P0 の空気を、 シンリダー中で圧縮比 E (= V0/V) にまで断熱圧縮するときの体積 V、温度 T、圧力 P を計算する関数をつくる。 1) 関数では、初期温度、初期体積、初期圧力と圧縮比を与え、この条件における温度、圧力、体積を求める。 体積は戻り値とせよ(したがって、温度と圧力はポインター変数となる)。 2) 上記関数を用いて、初期値 T0 = 273.15 °K、V0 = 1.0 m^3、P0= 9.80×10^4 P に対する、E=1,2,3,4,5 における値を出力せよ。 3) 計算結果を次のように表示する。 HomeWork5 19.11.24 K3B55 山田太郎 ----- 計算条件 ----- 初期体積 V0 = 1.00 (m^3) 初期温度 T0 = 273.15 (K) 初期圧力 P0 = 9.80×10^4 (P) ----- 状態変化(計算結果) ----- 圧縮比 E 体積 V 温度 T 圧力 P 1. 1000.00 273.15 98000. 2. 500.00 360.42 258623. 3. 333.33 423.89 456242. 4. 250.00 475.58 682511. 5. 200.00 519.98 932790. ↓続く
274 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:33:25 ] 上と下で区別しないといけないので。 たとえば 上がABBAC と 下がDABCの計算とか 上がBA と 下がADACADBCの計算をできるようにしたいんで。
275 名前: ◆wFVK8h9bmM [2007/11/11(日) 01:33:41 ] 参考: 空気を断熱圧縮するときの体積 V、圧力 P と絶対温度 T の間には、PVκ=一定、PV=RT (R:気体定数) の関係がある。 これより、V=V0/E、T=T0Eκ-1、P=P0Eκ の関係が得られる。ただし、κは比熱比 (= cp/cv) であり、その値は 1.4 である [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:不明 [3.3] 言語:C [4] 期限:H19年11月5日 [5] その他の制限:関数、ポインタ変数を使って作るそうです。 よろしくお願いします。
276 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:35:17 ] >>274 それって計算するとき関係ねーじゃんw
277 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:39:39 ] >>276 自分の力量からして区別しないといけないかとおもってました。すみません。 別要素で扱わなくてもいいです。 上がABBAC と 下がDABCの計算とか 上がBA と 下がADACADBCの計算をできるようにできれば。
278 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 01:54:26 ] de.eurosport.yahoo.com/fussball/bundesliga/
279 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 10:13:27 ] >>275 公式をもう一度確かめてもらえませんか?おかしな結果になります。
280 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 10:22:59 ] >>279 具体的になんの気体かを書いたほうが良いのでは? 気体→液体のときにかかるエネルギーとか、 なぜか温度が-273度を下回るとか、 そういう計算が出てきちゃうから
281 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 10:34:31 ] >>273 公式が違うような気が T=T0*E^(κ-1) P=P0*E^κ 計算結果も変な気が 何で圧縮比1つまり体積が変化いてないはずなのに V0=1.0m^3の空気が1000.00m^3になってるの?
282 名前:デフォルトの名無しさん [2007/11/11(日) 11:27:07 ] [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク): 80〜120の数値を正規乱数で発生させるプログラムを作成しなさい。 平均100・標準偏差0.1とする。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Borland C++ Compiler5.5 [3.3] 言語: C++ [4] 期限: 11/12 12時 [5] その他の制限: よろしくお願いします
283 名前: ◆wFVK8h9bmM [2007/11/11(日) 11:28:34 ] >>279-281 問題文はそのままコピペなのでこれ以上の情報が無いんです。
284 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 12:22:40 ] >>283 講師に間違ってると指摘するとボーナス点が貰えるかもよ。 取り合えず、V0=1.00m^3、E=1の時V=V0/E=1000.00ってどう言う事ですか?と質問してみな。 1.00m^3=1000Lだけど単位変えないよな普通 良いのが見つからないんだけどこの辺見れば式が間違ってる事に気付く筈 ttp://www.photon.t.u-tokyo.ac.jp/~maruyama/talks/thermo/sld028.htm
285 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 12:45:04 ] 機嫌損ねて減点とかもありえそうだから困る。
286 名前: ◆wFVK8h9bmM [2007/11/11(日) 12:45:40 ] >>284 はい。まず質問してみます。 返事が返ってきたらまた書き込ませてもらおうと思います。
287 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 13:45:19 ] 病苦 借金苦 精神疾患 絶望 鬱+借金苦 死にたいだけ 自分が要らないから。 いても仕方が無い。他の人が必要としても、私は必要ではない 消滅したいから 今持っているものを失うのが怖い 生きる希望がなぃ 生きてる意味を見出せないから 生きていて三'::::::............... .....::::::`y,. 皆にキモがられる・将来に対する漠然 とした不安ナ:::::::::::::::::::::::::::::::::::::::::::::ヾ 鬱 僕の存在はみんなに不快感を与えるだけだ から「死ねV::::::::::::::::_{{ ({∫∬ノノjヾ:::::{ に耐えられない 恋 誰にも必要とされていない 脳の 片隅から ナ::::::::::::::i`__,,,,,,,ァ_ _,,,,,_ t;;:ヌ しするとしたら、支払い苦 過食症 親 配偶者の死 疲れた イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }fが嫌だから。 解離性同一障害で、別の人格に 体を乗っi {t)テ" ヘ' '___,イ ヽ_/ 介' じゃないから ここに載っている物から一つだけは ムリだけrヘ_,j|!' /ー--''! |'不明でごめんなさい) 人間が嫌い。人間はどこ まででも/| | /二ク !から。そんな生き物と上っ面だけとはいえ、 付き合/ { ! 、 ヾニン ノ。 かゆいから 幸せなときに死にたい 毎日毎日 疑問が| | ! \ _,,./だしても疑問はなくならない、それならばある日生きる ことをやめるか丶\ `__>-ー´ると告げられても、そうかと思うだけだから 今の日本 は腐ってるから 辛い かゆい 人生つかれたから 自分が世界一かわいいから 金がな いから 一度死に際を経験して生きる意味を見出したい 野球部だから 知らない 生き る事自体が矛盾の繰り返しだから(自分の意思で生まれて来ないのに自分の意思で 生きて行く) 帰りたいから 身内が殺人を犯したから、その罪滅ぼしに 変わりはてた顔 自殺が自分にできる唯一の復讐だから そもそも生きている感覚が無かったし、今も無 いので、不問。 差別に耐えられない 今後受ける肉体的苦痛を回避するため 暇つぶし (生きるのに退屈しか感じなくなった 別に死にたくない 体の障害のため 鬱&スロット依 存症 生きてても金食いつぶすだけ 死んだらどうなるんかなぁと 離婚 母親の裏切り、 恐怖 家にいるのが苦痛。受験のことを考えたり…将来に希望がない。親が勉強の事
288 名前:デフォルトの名無しさん [2007/11/11(日) 14:14:07 ] [1] 授業単元:C++ [2] 問題文:シーザー暗号(文字をA-Zの順に、一定数シフトすることで暗号化する。例えば、Return to Romeは、3文字シフトでUhwxuq wr Urphとなる。) で書かれたファイルを解読し、解読文を表示するプログラムをつくれ。 条件: 1.ファイルの中で暗号化されているのは、アルファベットのA-Z(大文字)とa-z(小文字)のみである。 2.空白、ピリオド、コンマ、セミコロン、コロンは、暗号化はされていないが、解読文のアウトプットを表示するとき、正しく表示すること。 3.ファイルの中で最も頻繁に現れるアルファベットが、“e”であるという事実に頼り、シフト数を計算せよ。 [3] 環境 [3.1] OS: Win [3.2] コンパイラ名とバージョン:DevC++ [3.3] 言語: C++ [4] 期限: 2007年11月16日まで。 [5] その他の制限: 標準ライブラリのみ使用可能。Cのクラスは使用不可。 よろしくお願いします。
289 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 14:55:32 ] >>273 #include <stdio.h> #include <math.h> int main(void) { double p, v, r, t, kappa; double p0, v0, t0; int e; p0 = 9.80e4, v0 = 1.0, t0 = 273.15; r = p0*v0/t0; kappa = 1.4; printf("----- 状態変化(計算結果) -----\n"); printf("圧縮比 E 体積 V 温度 T 圧力 P\n"); for(e = 1; e <= 5; e++){ v = v0/e; p = p0*pow(v0, kappa)/pow(v, kappa); t = p*v/r; printf("%d %.2f %.2f %f\n", e, v*1000, t, p); } return 0; }
290 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 16:29:22 ] 元気ですかー?
291 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 16:32:26 ] ちょとsYレならんしょこれは・・?
292 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 16:54:11 ] ここって何人くらいで作業してるの?
293 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 16:55:29 ] >>292 確か前集計したとき、20人だったような……
294 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 17:40:09 ] >>166 で [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5237.txt をお願いしたのですが >>169 >>170 の方のを実行させてもらった所、0.05では正しいのですが 今度は0.1で1回少ないようです。どなたかお願いします
295 名前: ◆QipEoOUdX2 mailto:sage [2007/11/11(日) 17:41:55 ] [1] 授業単元:プログラム演習 [2] 問題文:等比数列の初項aと公比rと項数nを入力して、それらの総和を表示する。ただしa、rは実数値とする [3] 環境 [3.1] OS:Windows [3.2] gcc [3.3] 言語: C [4] 期限: 11月12日 03:00 [5] その他の制限 よろしくお願いします
296 名前: ◆EcwVYA3Joo [2007/11/11(日) 17:43:12 ] [1] 授業単元:プログラミング1 [2] 問題文(含コード&リンク): キーボードから1〜20までの任意の整数を10個入力する。 さらにもう一つ入力し、最後に入力した値が、始めに入力した10個の整数の中に存在するか存在しないかを調べて、その結果を表示するプログラムを作成せよ。 ※例 1〜20までの整数を10個入力してください。 1 9 11 19 2 3 7 6 15 10 入力した値は 1 9 11 19 2 3 7 6 15 10 です。 探す値(1〜20)を入力してください。:11 11は入力値にあります。 探す値(1〜20)を入力してください。:18 18は入力値にありません。 [3] 環境 [3.1] OS: Windows [3.3] 言語:C言語 [4] 期限:2007年11月11日19:10まで [5] その他の制限: よろしくお願いします。
297 名前:デフォルトの名無しさん [2007/11/11(日) 17:45:24 ] [1] 授業 C言語上級 [2] 結果を出力できるようにプログラムを準備してください. 入力ファイルフォーマット: source-node destination-node packet-loss-rate a b 0.3 a c 0.1 . . z w 0.9 Step1: 二行目からデータを読み込みます.例えば,node a から node bまで のパケット損失率0.3から最後までに読むこと.ノードペア毎のパケット損失率 を記録する. ※ 下記変数が必要 char *node_pair_name[1000]; //ノードペア名を記録する,行ごとは一記録と します.何行があるならば,何個の記録がある.後で使う. double packet_loss_rate[1000];//ノードペア毎に記録する, Step2: 読み込んだデータpacket_loss_rateをJI関数f(double *x, int n)に 渡して,JIを計算します. Step3: JI出力 以上のプログラムを組み込んでください. [3] C言語 [4] 11月13日まで JI関数はすでにできているので気にしなくて大丈夫です。 よろしくお願いします。
298 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 17:50:33 ] >>294 自己解決..? for(x=0;x<1-h;x+=2*h){ sum+=(f(x) + 4*f(x+h) + f(x+2*h)) * h/3; printf("%f %f\n",sum,x); }
299 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 19:03:18 ] >>295 >>236
300 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 19:12:44 ] >>296 #include <stdio.h> #define N 10 int main( int argc, char ** args ){ int a[N]={0}, i, o; printf( "1〜20までの整数を10個入力してください。\n"); for ( i = 0; i < N; ++i ) scanf( "%d", &a[i]); printf( "入力した値は " ); for ( i = 0; i < N; ++i ) printf( "%d ", a[i]); printf( "でし。\n" ); for (;;) { printf( "探す値(1〜20)を入力してください。:" ); scanf( "%d", &o ); for(i=0;i<N;++i) if ( a[ i ] == o ) break; if ( i != N ) printf( "%d は入力値にあります。\n", o ); else printf( "%d は入力値にありません。\n", o ); } return 0; }
301 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 19:23:13 ] たまってるキューはどれくらい?
302 名前: ◆EcwVYA3Joo mailto:sage [2007/11/11(日) 19:40:44 ] >>300 ありがとうございます。 起動出来ませんでしたが…
303 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:00:25 ] >>295 #include<stdio.h> double geoSeries(double init, double ratio, unsigned int nth) { size_t ix = 1; double res = init; while( ix != nth ) { res *= ratio, res += init; ++ix; } return res; } int main(void) { printf("%lf\n",geoSeries(1.0,2.0,1)); return 0; }
304 名前: ◆DGgnWkEBkw mailto:sage [2007/11/11(日) 20:11:20 ] [1] 授業単元: アドバンスドプログラミング [2] 問題文(含コード&リンク): (1) 最大で10 行10 列の要素取り扱える行列A に対して下記機能を満足するプログラムを作成せよ。 @ main 関数内で3行4列の行列A にキーボードから、要素データを入力する。 A @の後、行列の形式としてA を表示する。 B Aの後、行列A の各要素の先頭アドレスを行列形式で表示する。 注意:入力データは、double 型とする。 (2) 最大で10 行10 列の要素取り扱える行列A,B,C,D に対して下記機能を満足するプログラムを作成せよ。 @ 3 行3列の行列A にデータを入力する。 A 行列A の各要素2倍した行列B を生成する。 B 行列A の転置行列を行列Cとして生成する。 C 行列Aと行列Cの積を行列D に生成する(行列Dは、どんな性質を持った行列か?)。 (3) 最大で10 行10 列の要素取り扱える行列A に対して下記機能を満足するプログラムを作成せよ。 @ 3 行3列の行列A にデータを入力する。 A 行列A を表示する。 B 行列A の3行目を行列A の2行目に加え合わせる。(例えば、21 31 a + a を21 a に代入することを意味 する) C 行列A を表示する。 (4) (1),(2),(3)に対して、各機能の関数を作成して、プログラムのモジュール化を図りなさい。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: マイクロソフトビジュアルスタジオ2005のコマンドプロンプト [3.3] 言語: C [4] 期限: 2007年 11月12日 午前9時 [5] その他の制限: 特にその他の制限は無いですが出来るだけわかりやすくしてもらえるとうれしいです このスレに書き込むのは初めてなので、何か至らないところがあれば指摘してもらえると助かります
305 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 20:23:39 ] >>303 double geoSeries(double init, double ratio, unsigned int nth) { double res = init; while( --nth != 0 ) res = res * ratio + init; return res; }
306 名前: ◆EcwVYA3Joo [2007/11/11(日) 21:25:25 ] >>300 起動出来ました。 [1] 授業単元:プログラミング [2] 問題文(含コード&リンク):1〜100の範囲の整数の乱数値を持つ要素数100の配列から、 キーボードで入力した1〜100の範囲ま整数地を探索し、入力値と同じ値が配列に含まれるか調べて、 その探索結果を表示するプログラムを作成する。 [3] 環境 [3.1] OS: Windows [3.3] 言語: C [4] 期限:2007年11月11日22:40まで [5] その他の制限: すみませんが宜しくお願いします。
307 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 21:52:46 ] しかしプログラミングって授業多いな
308 名前:デフォルトの名無しさん [2007/11/11(日) 21:56:46 ] >>307 そりゃあ、授業内容がプログラミングを習ってるんだから、授業名「プログラミング」が多いのは当然かと。
309 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:11:56 ] [1] 授業単元: プログラミング演習 [2] 問題文(含コード&リンク): =======datalist.txt========= 1st:yamada 2st:okamoto 3st:uchida 4st:kondou =========================== のファイルを1st:、2st:などを取り除いて 名前だけをchar型配列にいれて表示せよ。 [3] 環境 [3.1] OS:Linux [3.2] gcc [3.3] C [4] 期限:11月12日くらい よろしくお願いします
310 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 22:17:03 ] >>306 #include <stdio.h> #include <stdlib.h> #define NOTFOUND (-1) int find( int ar[], size_t l, int t ){ size_t i; for (i=0;i<l;i++) if ( ar[ i ] == t ) break; return (i!=l)?(int)i:NOTFOUND; } int main( void ){ int ar[100],i,t; srand(time(NULL)); for (i=0;i<100;i++) ar[i]=rand()%100 + 1; /*for (i=0;i<100;i++) printf("%d ",ar[ i ]); puts("");*/ while(1){ do{scanf("%d",&t);}while(!( t>0 && t<101 )); puts( find ( ar, 100, t )==NOTFOUND ? "Not Found.":"Found"); } return 0; }
311 名前:309 mailto:sage [2007/11/11(日) 22:17:28 ] :とその左の部分を取り除くって形でいいです
312 名前:デフォルトの名無しさん [2007/11/11(日) 22:41:17 ] 宿題なんですが [1] 授業単元: プログラミング演習 [2] 問題文: 整数型のデータ(サイズは200*200)を読み込み、輝度値を線型に変換(y=ax+b)した上でのプログラム。 ただしa,bはargv,argcを利用する。 さらに、上のプログラムを読み込み、指定の範囲を切り出して出力するプログラムを書け。 暇な人、お願いします。ついでにargcとargvについて教えて頂けるとうれしいです。 [3] 環境 [3.1] OS:WINDOWS [3.3]言語:C言語 [4] 期限:11月13日
313 名前:デフォルトの名無しさん [2007/11/11(日) 22:52:36 ] [1] 授業単元: C言語入門 [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5248.txt [3] 環境 [3.1] OS:Windows [3.3] 言語: C言語 [4] 期限:11月12日午前0時30分まで よろしくおねがいします
314 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:09:51 ] >>309 #include<stdio.h> main() { int i=0,j,k; char line[1000],name[4][20]; FILE *fp; if((fp=fopen("datalist.txt","r"))==NULL){ printf("file can't open.\n"); return; } while(fgets(line,1000,fp)!=NULL){ for(j=0;line[j]!=':';j++); for(j++,k=0;line[j]!='\n';j++,k++) name[i][k]=line[j]; name[i][k]='\0'; i++; } for(i=0;i<4;i++) printf("%s\n",name[i]); fclose(fp); return; }
315 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:17:02 ] >>313 (3) #include<stdio.h> #include<string.h> void put_rstring(const char str[const]) { size_t len = strlen( str ) + 1; while( len != 0 ) putchar(str[--len]); return; }
316 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:23:56 ] >>313 (1) int str_char(const char str[const], const char c) { char *p = strchr( str, c ); return p != NULL ? p - str : -1; }
317 名前:163 mailto:sage [2007/11/11(日) 23:27:14 ] >>163 の(2)誰かお願いします
318 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:28:44 ] >>313 (2) void put_string(const char str[const]) { if(str[0] != '\0') { printf("%c\n",str[0]); put_string(&str[1]); } return; }
319 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:34:33 ] 再帰よりループのほうがいいか void put_string(const char str[const]) { size_t idx = 0; while( str[idx] != '\0' ) printf("%c\n",str[idx++]); return; }
320 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:37:35 ] >>312 >[2] 問題文: 整数型のデータ(サイズは200*200)を読み込み、輝度値を線型に変換(y=ax+b)した上でのプログラム。 輝度値ってなに? というかどういう宿題なのかもう少し詳しく。
321 名前:デフォルトの名無しさん mailto:sage [2007/11/11(日) 23:49:27 ] >>320 たぶん画像処理関係
322 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:01:27 ] >>309 これじゃだめ? #include<stdio.h> #include<stdlib.h> #include<string.h> char *getFileName(char str[]) { char *p = strstr(str, "st:"); return p != NULL ? p+3 : str; } int main(int argc, char *argv[]) { FILE *fp; char buffer[BUFSIZ]; if( argc != 2 || (fp = fopen(argv[1], "r")) == NULL ) return EXIT_FAILURE; while( fgets(buffer, sizeof(buffer)/sizeof(char), fp) != NULL ) printf("%s",getFileName(buffer) ); return EXIT_SUCCESS; }
323 名前:312 [2007/11/12(月) 00:04:19 ] 問題はそのまま書いたものです。 プログラミング初心者なので輝度値を線型に変換(y=ax+b)とかの意味もわからない状態です; 一応200*200の画像を出力するプログラムまでできたんですが。。でもこの場合画像がないと出力できないですよね? 200*200の画像をC言語で作ることできますか?
324 名前:309 mailto:sage [2007/11/12(月) 00:09:17 ] >>322 OK
325 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:11:05 ] >>324 なにその上から目線。
326 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:19:17 ] >>323 そりゃできるだろうけど、作っても意味ないだろ。
327 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:21:20 ] >プログラミング初心者なので輝度値を線型に変換(y=ax+b)とかの意味もわからない状態です プログラミング初心者は関係ないし,言い訳にするな
328 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 00:43:47 ] 2stに噴いた
329 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 01:09:32 ] >>304 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5249.zip
330 名前:デフォルトの名無しさん [2007/11/12(月) 01:20:55 ] [1] 授業単元: プログラミング [2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/5250.txt [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:g++ [3.3] 言語: C++ [4] 期限: 13日21:00 時間のある方よろしくおねがいします
331 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 02:08:27 ] g++?