C/C++の宿題を片付けます 108代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2008/05/28(水) 22:18:31【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう.
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[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://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
【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++の宿題を片付けます 106代目
http://pc11.2ch.net/test/read.cgi/tech/1209810861/
0153デフォルトの名無しさん
2008/05/30(金) 02:19:50てことは望む結果が得られたと思えばよいか?
後でわめくなよ
0155デフォルトの名無しさん
2008/05/30(金) 02:36:57いまいち私自身も問題の意味を理解してませんが
おそらくあっているとおもいます!
ありがとうございました!
0156デフォルトの名無しさん
2008/05/30(金) 02:55:19どーせハッテン場の写真なんだから目の毒だぞ
0157デフォルトの名無しさん
2008/05/30(金) 03:22:52がモノホンの女だとは信じたくはないが、女だとしたら...
女やりますか?人間止めますか?
0158デフォルトの名無しさん
2008/05/30(金) 07:09:24何か問題でも?ただのジョークソフトでしょ。
0159デフォルトの名無しさん
2008/05/30(金) 09:08:310160デフォルトの名無しさん
2008/05/30(金) 09:13:06スレタイ読める?
>>159
オープンダイアログでエラーが帰ってくるまででしょ
0161デフォルトの名無しさん
2008/05/30(金) 09:52:21ttp://www.youtube.com/watch?v=RIL28wqOQGA
> スレタイ読める?
当たり前でしょ、何言ってんの、スレタイ読めないなんてことあるかっ!
0162デフォルトの名無しさん
2008/05/30(金) 09:54:48ttp://www.youtube.com/watch?v=FIeuloGJ4dE
0163デフォルトの名無しさん
2008/05/30(金) 09:56:25日本語理解できる?
0164デフォルトの名無しさん
2008/05/30(金) 10:00:27> そもそも「限界」の意味が分からない
> >>159
> オープンダイアログでエラーが帰ってくるまででしょ
日本語は読めるけど、意味がわかりましぇ〜〜んw
0165デフォルトの名無しさん
2008/05/30(金) 10:02:31ttp://www.youtube.com/watch?v=-g1odF3hFrw
んだゴルァー!
0166デフォルトの名無しさん
2008/05/30(金) 10:33:25>>960
ありがとうございます!
なのですが、
「関数 `isDegreeSequence' 内:」
「警告: 互換性のないポインタ型からの引数 4 個の `qsort' を渡します」
というのがでるのですがどうしてでしょうか?
0167デフォルトの名無しさん
2008/05/30(金) 10:52:30qsort へ渡す関数のポインタの型は、int(*compar)(const void *, const void *) だからさ
0168デフォルトの名無しさん
2008/05/30(金) 11:12:50後のフェスティヴァル
016983
2008/05/30(金) 12:47:51[1] ゼミ
[2] http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6734.txt
[3] 環境
[3.1] windowsのkterm
[3.2] gcc
[3.3] C
[4] 30日18時
[5] 制限は特にありません。できればコメントで動作内容を説明していただけるとありがたいです
ktermはunix系のシェルです
それをwindows上で使ってます
printfでの日本語表示はできません
0170デフォルトの名無しさん
2008/05/30(金) 13:38:34[2] 問題文(含コード&リンク):10円、50円、100円の3種類の硬貨で合計370円になる組合せは何通りあるか。
[3] 環境
[3.1] OS:WindowsVista
[3.2] コンパイラ名とバージョン:VisualStudio2008
[3.3] 言語:C言語
[4] 期限:6月2日(月)16時
[5] その他の制限:多重ループを使ったfor文で作成。
if文使用可。
よろしくお願いします。
0171デフォルトの名無しさん
2008/05/30(金) 13:58:46#include<stdio.h>
int main(void){
int coin100, coin50, coin10, total=370, count=0;
for(coin100=total/100;coin100>=0;coin100--){
for(coin50=(total-coin100*100)/50;coin50>=0;coin50--){
coin10=(total-coin100*100-coin50*50)/10;
if(coin100*100+coin50*50+coin10*10==total){
printf("100:%d 50:%d 10:%d\n", coin100, coin50, coin10);
count++;
}
}
}
printf("%d 通り\n", count);
return 0;
}
0172デフォルトの名無しさん
2008/05/30(金) 13:59:20int main(void)
{
int i, j, k, count = 0;
for(i=0; i*100<370; i++) {
for(j=0; i*100 + j*50<370; j++) {
for(k=0; i*100 + j*50 + k*10<370; k++);
count++;
printf("100円:%d枚 50円:%d枚 10円:%d枚\n", i, j, k);
}
}
printf("以上%d通り\n", count);
return 0;
}
0173デフォルトの名無しさん
2008/05/30(金) 14:00:54A* ってことはゴールへの距離の見積もりがあるはずなんだけど
何を見積もりに設定するの?
見積もりをゼロにして実質ダイクストラってことでいいの?
0174デフォルトの名無しさん
2008/05/30(金) 15:15:40[2]組・名前・国語の点数・算数の点数が入った構造体がある。
もし組が同じなら、国語の点数を足していって、
1組ごとの合計をファイルに出力して、また次の組も。(算数も同様に。)
[3] 環境
[3.1]Windows
[3.2]visual studio
[3.3]C
[4]5月31日12:00
[5]キーブレイクというのをやらせたいみたいです。
017583
2008/05/30(金) 15:38:03各ノードにおいて見積もりを自分で決めていいそうです
(実際の距離よりも小さい値で)
リストは使わなくてもいいそうです
始点からの距離+見積もりが1番小さいノードを選択する
(ダイクストラのように距離が更新される)
といったものでよいそうです
0176yumi
2008/05/30(金) 15:58:29問題よく読んでなかった〜ゴメン(-人-;)(;-人-)ゴメン
修正しときました
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6735.txt
あたしのPCコンパイラが入ってないので動作確認してません
マタネッ(^ー^)ノ~~Bye-Bye!
0177デフォルトの名無しさん
2008/05/30(金) 16:24:03適当だからなんか間違いありそうだけど、うp
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6736.c
0178デフォルトの名無しさん
2008/05/30(金) 16:31:49おつー
0179デフォルトの名無しさん
2008/05/30(金) 17:05:15[2] 問題文(含コード&リンク):凸包構成、jarvisのマーチのアルゴリズムを使い、計算時間をO(nlogh)
で出来るものにしなさい(頂点数をhとする)。
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc emacs
[3.3] 言語:C言語
[4] 期限:6/20
[5] その他の制限:特になし
具体的なアルゴリズムは調べろと言われただけなので参考URL
ttp://d.hatena.ne.jp/nowokay/20080308/1205010287
Javaはやってないのでよくわからないです・・・・。よろしくお願いします。
0180デフォルトの名無しさん
2008/05/30(金) 18:22:09[2]放物線プログラム
定数として重力加速度、初速度
経過時間からX,Yをもとめる。
経過時間0の場合は(X,Y)は(0,0)
[3]C言語
0181デフォルトの名無しさん
2008/05/30(金) 18:27:12ぼるじょあスレにレスついてるよ。
0182デフォルトの名無しさん
2008/05/30(金) 18:36:23[2] 問題文:数値を1から10まで出力する。ただし、5まで出力した時点で
一度改行する
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:bc pad
[3.3] 言語:C言語
[4] 期限:月曜
[5] その他の制限:特になし
習い始めて早速つまずきました、よろしくお願いします。
0183デフォルトの名無しさん
2008/05/30(金) 18:46:35#include<stdin.h>
int main(void)
{
printf("1 2 3 4 5\n6 7 8 9 10\n");
return 0;
}
0184デフォルトの名無しさん
2008/05/30(金) 18:47:23#include <stdio.h>
int main()
{
puts("1 2 3 4 5\n6 7 8 9 10");
return 0;
}
0186デフォルトの名無しさん
2008/05/30(金) 18:49:10#include <stdio.h>
int main()
{
for (int ic = 1; ic <= 10; ++ic) printf("%d%c", ic, ic == 5 || ic == 10 ? '\n' : ' ');
return 0;
}
0187デフォルトの名無しさん
2008/05/30(金) 18:50:55すいません、何故か消えているのですが・・
再うpお願いできますか?
0188デフォルトの名無しさん
2008/05/30(金) 18:52:09すいませんレス読み飛ばしてました!ありがとでした!
0189デフォルトの名無しさん
2008/05/30(金) 18:52:10>>176
0190デフォルトの名無しさん
2008/05/30(金) 18:58:23[2] 問題文:2つの画像(128×128,PGM)があります。
この2つはまったく同じに見えますが、少しずつ輝度値が異なります。
2つの画像をまず読み込み、それらの輝度値をEXCELに書き出しなさい。
次に2つの画像の輝度値の差を取り、この差もEXCELに書き出しなさい。
[3] 環境
OS:WINDOWS
コンパイラ名とバージョン: gcc emacs
使用言語:C言語
[4] 期限:6月2日
[5] その他の制限:画像は “rda/gazou/"に置いてあるが、各自のフォルダに
移動してきてもよい。
どなたかご教授をお願いいたします
0191デフォルトの名無しさん
2008/05/30(金) 19:04:25# EXCELに書き出しなさい
csvとか^p^?
0192デフォルトの名無しさん
2008/05/30(金) 19:05:17PGMはテキストとして読めるフォーマットとそうでないフォーマットがある。
前者なら、プログラムを組むまでもなくExcelに取り込めるわけだが。
それから、「EXCELに書き出す」とはなんのことか説明してくれ。
C言語入門と言う単元から察するに、CSVファイルを作るだけじゃないかと思うのだが。
# それを「EXCELに書き出す」と教えているのだとしたら、とんでもない馬鹿野郎だが。
あーそうそう、画像ファイルもアップロードしてくれよ。
0193デフォルトの名無しさん
2008/05/30(金) 19:16:11EXCELに書き出すというのはお二方がおっしゃるようにCSVを作ることだと思います。
この先生、かなり教え方がおかしいので^^;
PGMはP5というふうになっていましたが・・。
0194デフォルトの名無しさん
2008/05/30(金) 19:21:29>>193
一応念のために聞いておくが、PGMの読み込みルーチンも自作すると言うことでいいよな。
で、入力はPGM画像ファイル二つ、出力はCSVファイル三つだな。
0195デフォルトの名無しさん
2008/05/30(金) 19:24:29なの?
0196デフォルトの名無しさん
2008/05/30(金) 19:34:54それを見て、CSVファイルはEXCELファイルだと思い込む人多し。
0197デフォルトの名無しさん
2008/05/30(金) 19:35:20そうです、読み込みルーチンも自作ですね。
入力がPGM画像ファイル2つ、出力がCSVファイル3つというのもあってます。
0198デフォルトの名無しさん
2008/05/30(金) 19:54:29CSVにならなさそうで楽しみです。
0200 ◆DuoCt8/SKk
2008/05/30(金) 20:04:52いや,書き込んではいけないのかと・・・ずっと見てました.
>>132さん,ありがとうございました.
しかし文字化けしていて見ることができないのです・・・
再アップなど良かったらお願いできませんか?
0201デフォルトの名無しさん
2008/05/30(金) 20:06:51UTF-8で読んでください。
0202デフォルトの名無しさん
2008/05/30(金) 20:16:36[2] 問題文http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6737.txt
[3] 環境
[3.1] OS: xp
[3.2] コンパイラ名とバージョン: VC 6.0
[3.3] 言語: C
[4] 期限: 日曜日まで
[5] その他の制限: 大学3年レベル
お願いします
0203デフォルトの名無しさん
2008/05/30(金) 20:19:110204182
2008/05/30(金) 20:19:20すいません説明不足でした。
1から10まで順番に出力して5まで出力した時点で一度改行です。
多分、while文使うんだと思います。
お願いします。
0205デフォルトの名無しさん
2008/05/30(金) 20:21:31問題文は正確にお願いします。
>>204
>>186が不満な理由はfor文だからですか?
0206 ◆DuoCt8/SKk
2008/05/30(金) 20:22:08そうやって読むのでしたか・・・知らずにすみません.ありがとうございます.
しかしながら内容が少しばかり高度すぎるのですが・・・
これは確実に教授に怪しまれてしまいます.
(C言語を習い始めて1年しか経過してないので)
もし可能だったらでいいので,もう少し簡略化したプログラムをお願いできないでしょうか?
お願いします.
0207204
2008/05/30(金) 20:39:34アルゴリズムの教科書のwhile文の説明の後の演習問題なので
できればwhile文のほうがありがたいです。
0208132
2008/05/30(金) 20:45:50どこら辺が怪しまれないレベルなのかつかめないです。
問題の下のほうに書いてある苦労のあとをそのまま受けると、
関数作ること自体が危険ですか?
mainは画面表示→コマンド受付のループしてます。
んで、各コマンドに応じた処理をしてます。
お金入れたらステータスの金額増やす、みたいな。
それと、今さらなんですが、本来の課題はどこまでですか?
<主な道筋>以降は元の課題に含まれていなかったのではないか
という予測の元に作っていました。
0209202
2008/05/30(金) 20:59:57/*記述*/の部分を追加するだけで実行結果になるらしいです
0210デフォルトの名無しさん
2008/05/30(金) 21:01:22書き換えもできんのか
#define MAXNUM 10
int i=1;
while(i<=MAXNUM){
printf("%d ",i);
if(i%5==0){
puts("");
}
}
0211 ◆DuoCt8/SKk
2008/05/30(金) 21:01:54はい,お察しの通り道筋以降は完全に予想した実行例です.
本来の課題は<主な道筋>の終わりまでです.
関数自体は既に習ったはずなんですが,苦手なのでこれだけたくさんあると・・・
あと,作成して頂いたプログラムは本来の課題でするべきこと以上のことを
してくださったので,絶対にマークされます(汗).
自分としても今日考えたプログラムがあるのですが・・・載せて見てもらった方が
いいですかね?ちなみに入力から種別まではぐちゃぐちゃなプログラムですができました.
しかしながら金額計算やリセット,枚数表示などが・・・
0212デフォルトの名無しさん
2008/05/30(金) 21:02:36無限るーぷwww
i++;足して
0213202
2008/05/30(金) 21:04:06printfのとこの)を忘れてました
m<_ _>m
0214デフォルトの名無しさん
2008/05/30(金) 21:07:09(・3・) エェー。たとえば
printf(str[0],1,str[1];
括弧が対応してないよ。
0215デフォルトの名無しさん
2008/05/30(金) 21:07:530216デフォルトの名無しさん
2008/05/30(金) 21:14:36ぼるじょあのトリップ付けてください ><;
0217132
2008/05/30(金) 21:22:12とりあえず載せてもらってもいいすか?
主な道筋は課題に含む、だったんですね。
そうするとそれはそれで取り消しの処理とかが難しくなりそうですね。
>>213
そっすか。ならこれで。
char *p = str[0], *q = "str[%d] = %s\n";
while (*p++ = *q++);
0218デフォルトの名無しさん
2008/05/30(金) 21:24:16str[0] = "str[%d] = %s";
0219 ◆DuoCt8/SKk
2008/05/30(金) 21:25:13ありがとうございます,では載せさせてもらいます.
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6739.txt
これが限界みたいです・・・変な箇所などあったら指摘などお願いします.
0220デフォルトの名無しさん
2008/05/30(金) 21:29:16それ無理だろ。
sprintf(str[0],"%s","str[%d]=%s\n");
0221デフォルトの名無しさん
2008/05/30(金) 21:30:35早い解答ありがとうございます
0223 ◆DuoCt8/SKk
2008/05/30(金) 21:36:32・・・?関数などは調べて考えました.
はい,これでは全然ダメなのでご指導して頂きたいです!
0224132
2008/05/30(金) 22:39:31>>219のをベースに、あまり変えないで作ってみました。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6744.txt
動作検証はあまりしていませんのであしからず。。。
0225132
2008/05/30(金) 22:42:35こんな感じに変えてください。
if (money != price)
{
printf("おつりは %d 円です。\n", money - price);
}
0226デフォルトの名無しさん
2008/05/30(金) 22:47:17[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6745.txt
[3] 環境
[3.1] OS:WindowsXP
[3.2] コンパイラ名とバージョン: VisualStudio Express2005
[3.3] 言語: C
[4] 期限:2008/6/1
[5] その他の制限:stdio.h以外のライブラリは使いません。また、スタックは配列を使っての処理です。
よろしくおねがいします。
0227デフォルトの名無しさん
2008/05/30(金) 22:57:21C++でもいいのか?
0228デフォルトの名無しさん
2008/05/30(金) 23:05:55C言語って書いてるよ
0229デフォルトの名無しさん
2008/05/30(金) 23:08:170230デフォルトの名無しさん
2008/05/30(金) 23:10:07うっかり八兵衛。
0231デフォルトの名無しさん
2008/05/30(金) 23:15:33引数渡さないでどうやって初期化しろってんだよ・・・
グローバル変数推奨ですか?
0232デフォルトの名無しさん
2008/05/30(金) 23:16:54とエスパーしてみる。
0233デフォルトの名無しさん
2008/05/30(金) 23:20:14前々回あたりでグローバル変数や共有結合等の話が出ていたので、
おそらくグローバル変数を使ってだと思います。
0234 ◆DuoCt8/SKk
2008/05/30(金) 23:26:45>>225
わざわざ僕のプログラムをベースに考えてくださるとは・・・感謝してもしきれません.
しかしながら
LINK : fatal error LNK1104: ファイル "Debug/test.exe" を開けません。
というエラーが・・・どこがおかしいんでしょうか?
何度もすみません・・・
0235デフォルトの名無しさん
2008/05/30(金) 23:27:39んじゃとりあえずヘッダから書いてってみる
[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;
}
0236デフォルトの名無しさん
2008/05/30(金) 23:28:10http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6746.txt
0237132
2008/05/30(金) 23:34:01ファイル名がticket.cだとして、Visual Studio コマンドプロンプトで
cl ticket.c
とやってもダメでしょうか?
こちらのVS2003 および Linuxでのgccではビルドできています。
0238 ◆DuoCt8/SKk
2008/05/30(金) 23:38:25コマンドプロンプトにてそのコマンドを入力したところ
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
という表示が出ました.
やはりだめみたいです・・・
0239デフォルトの名無しさん
2008/05/30(金) 23:40:39リビルドしてみたら?
0240デフォルトの名無しさん
2008/05/30(金) 23:40:43ディレクトリ合ってる?
0241 ◆DuoCt8/SKk
2008/05/30(金) 23:45:07すみません!試行錯誤しながら作業を繰り返していったら
実行することができました!
あと・・・回数券などを入力した際にすぐに買える切符はありません
と表示されてしまうのはどう直せばいいでしょうか?
それで,もし良かったら・・・枚数や子供賃金入力のヒントなどを教えて頂きたいです.
0242デフォルトの名無しさん
2008/05/30(金) 23:46:58ビルドできたか。よかた。
買える切符はありませんっていうのは所持金?が最低額の切符よりも
少ない場合です。
2000円ぐらい突っ込んでからやってみたらどうでしょ。
0243 ◆DuoCt8/SKk
2008/05/30(金) 23:52:03おっしゃる通り多くしたらできました.
色々とありがとうございました!
それで・・・子供賃金や枚数などのアドバイスは頂けないでしょうか?
くどくてすみません.
0244132
2008/05/31(土) 00:05:56ticket2の前に子供にしますか?って聞くとか普通乗車券の場合は
coin_numの前に枚数聞くとかですかね。
ちなみにその辺を実装するつもりなら切符の一覧をベタで書く方法を
やめたほうがいいと思います。すぐ気づくかもしれませんが。
たとえば、さらに350円の切符を追加しましょうってなったとき、今の
構造だと大変でしょ?
>>132のはそういう目にあわないようにしてあって、
int ticket_price_list[] = {140, 180, 210, 270, 0};
↓
int ticket_price_list[] = {140, 180, 210, 270, 350, 0};
ってやればすむようになっていました。
いろいろ見比べて、上手く利用できるところは持ってってください。
0245デフォルトの名無しさん
2008/05/31(土) 00:10:440246 ◆DuoCt8/SKk
2008/05/31(土) 00:16:39アドバイスありがとうございます.
>>132のいい部分を見つけて,それを使えればいいということでしょうか?わかりました!
もう迷惑はかけられないので,残りは自分で頑張ってみます,もしかしたらまたここに来ることが
あるかもしれないのでその時にはまたよろしくお願いします.
本当にありがとうございました.
0247132
2008/05/31(土) 00:21:02>>132のソースが優れてるとはいいませんが、いいなと思う部分が
あれば、どんどん使ってください。
提出までの期間、がんばってね。
0248デフォルトの名無しさん
2008/05/31(土) 00:50:00こっちもやってていい気分なんだがなぁ。。
0249デフォルトの名無しさん
2008/05/31(土) 00:56:440250デフォルトの名無しさん
2008/05/31(土) 01:09:310251デフォルトの名無しさん
2008/05/31(土) 01:13:55(・人・)
0252デフォルトの名無しさん
2008/05/31(土) 01:31:33[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] その他の制限: 特になし
■ このスレッドは過去ログ倉庫に格納されています