08/06/18 22:40:55
あなたが解けない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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
URLリンク(kansai2channeler.hp.infoseek.co.jp)
【C 関数検索 man on WWW】 URLリンク(www.linux.or.jp)
【過去ログ検索】 URLリンク(chomework.sakura.ne.jp)
【wiki】 URLリンク(www23.atwiki.jp)
【前スレ】C/C++の宿題を片付けます 109代目
スレリンク(tech板)
2:デフォルトの名無しさん
08/06/18 22:52:16
gets使う奴は、ダンディ坂野に弟子入りすることを命ずる
3:デフォルトの名無しさん
08/06/18 22:54:17
前スレの989です。
できました。
ありがとうございます。
4:デフォルトの名無しさん
08/06/18 23:08:10
890 名前:デフォルトの名無しさん[sage] 投稿日:2008/06/18(水) 09:58:47
初心者レベルの宿題しか解けないだけだろw
何か一言でも言わないと気が済まない、構ってちゃんの一言居士って
マジ鬱陶しいな。自分がすべて正しいと勘違いしてんじゃね?
世の中どんだけ自分以上の人間がいるか分かってないだろ。
ネットが普及して、多種さまざまな人と意見交換する場なんて、
もう20世紀末から徐々にネットが普及して今に始まったことじゃないだろ?
最近インターネットを使い始めた、高校を出て社会を知り始めたお子ちゃまか?
少し口を閉じてろ。無駄口が多いくせに、お前の方がよっぽど
答えたとしても幼稚なソースしか書いてないことに気づくから。
5:デフォルトの名無しさん
08/06/18 23:09:37
ああそうね
6:デフォルトの名無しさん
08/06/18 23:15:14
>>4
スルー推奨
7:デフォルトの名無しさん
08/06/18 23:18:27
>>4
スレリンク(tech板:890番)
って麻呂に対して言ってんだよね。
自分に言われたと思った?w
ネットでさまざまな人と意見交換する場を経験してきたのに誰に対する
レスかも理解できないのかしら?
> 何か一言でも言わないと気が済まない、構ってちゃんの一言居士
頭痛が痛いみたいで気持ち悪いし。
8:デフォルトの名無しさん
08/06/18 23:25:31
まあ、麻呂には今後もクソースをくらえでおじゃるーとか言いながら
学生っぽさの抜けないソースを上げ続けてもらいたいな。
ある意味癒しだ。
9:デフォルトの名無しさん
08/06/18 23:35:45
[1] 授業単元: C言語入門
[2] 問題文(含コード&リンク):
文字列の入力を促し、入力。その文字列の先頭の文字と同じ文字が文字列の中にいくつ含まれるか
求めるプログラムをポインターを使って作りなさい。また先頭の文字も数のうちに入れること。
[3] 環境
[3.1] OS:windows
[3.2] コンパイラ名とバージョン:VC++6
[3.3] 言語: C
[4] 期限:明日
[5] その他の制限:ポインターを習って間もないです
よろしくおねがいします
10:デフォルトの名無しさん
08/06/18 23:47:32
一言居士の特徴
何かと自分に対して意見をする者に対しては、どうでも良いようなことでも言い返す。
別に自分に意見をしたわけでもないのに、勝手な理論で話に入り込んで
わけの分からないことを言い始める。誰も聞いてない無関係な内容を持ち出す。
相手にされないと、誰か自分に話かけてこないか、茶化す。しかし、それが
相手の気を逆撫でするような、不適切で幼稚な発言のため、逆にお叱りを受けるが
気に入らない奴はとことん罵倒して逃げる<厨房がやる決定的な特徴。
11:デフォルトの名無しさん
08/06/18 23:51:28
>>9
char buf[1024], *p; int cnt;
fgets(buf, sizeof buf, stdin);
for (p = buf + 1, cnt = 1; *p; p++) if (*buf == *p) cnt++;
printf("%d\n", cnt);
12:デフォルトの名無しさん
08/06/18 23:51:49
>>10
一言居士の特徴とか言われましても、言葉の意味に含まれておりますので。。。
頭痛の特徴→頭が痛くなる
みたいで気持ち悪い。
挙句、厨房の特徴になってしまっている。なにがいいたいかまとめろ。
13:デフォルトの名無しさん
08/06/18 23:53:51
>>9
#include<stdio.h>
int main(void){
int moji, chk=0, count=0;
while((moji=getchar())!=EOF && moji!='\n'){
if(chk==0 || moji==chk){
chk=moji;
count++;
}
}
printf("\n%d\n", count);
return 0;
}
14:デフォルトの名無しさん
08/06/18 23:57:18
>>11
空文字列の場合に0個と出力されるほうがよさげな
15:デフォルトの名無しさん
08/06/19 00:01:23
>>14
なるへそ。じゃこれで
for (p = buf, cnt = 0; *p && *p != '\n'; p++)
16:デフォルトの名無しさん
08/06/19 00:29:39
>>7
いつもファビョってるやつと麻呂は同一人物
17:デフォルトの名無しさん
08/06/19 00:38:14
まじで?
おじゃる口調でファビョってくれないとわからないよ!
18:838
08/06/19 00:39:12
前スレの853を待ってるんだが・・
一日たっても返事が来ないって事は釣られたのか・・俺は・・
このままだと単位\(^o^)/
19:デフォルトの名無しさん
08/06/19 00:41:21
>>18
授業単元は「ネットで宿題を解いてもらう方法」だっけ?
20:18
08/06/19 00:43:49
>>19
そうだなww
21:デフォルトの名無しさん
08/06/19 00:49:15
[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク):
char name[20],int english,int mathematicsをメンバとする構造体 score を定義し、
五人の情報をもつ配列 seito[5]を構造体 score 型を使って宣言し(五人の情報は初期値として宣言する。)、
初期値を代入した構造体 score 型の構造体配列 seito[5] 宣言し、各メンバ変数でソートする関数を作成せよ。
[3] 環境
[3.1] OS:windows
[3.2] コンパイラ名とバージョン:visual studio 2005
[3.3] 言語: C
[4] 期限:出来るだけ早くお願いします。
[5] その他:組み合わさった問題を一文にしたため、分かりにくい所は聞いてください。お願いします。
22:デフォルトの名無しさん
08/06/19 00:50:46
>>932=919
遅くなりましたがご丁寧にありがとうございました。
ご察しの通り#で区切った項それぞれを、逆さにするんです。
度々で失礼ですが、ご教授されたとおりにrev_flagを含む行を消すと、if文まで消さなくてはならず
他の変数まで消えてしまうため、エラー出るのですが、どうすればいいのでしょうか
23:デフォルトの名無しさん
08/06/19 01:04:01
[1] 授業単元:プログラミング入門Ⅱ
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: XP
[3.2] コンパイラ名とバージョン:不明
[3.3] 言語: C++
[4] 期限: 6月24日
すいませんがお願いします。
24:デフォルトの名無しさん
08/06/19 01:07:07
前スレの>>955の方
どうもありがとうございます。
25:デフォルトの名無しさん
08/06/19 01:09:40
[1] 授業単元:C言語
[2] 問題文URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:VC 6.0
[3.3] 言語: C
[4] 期限: 6月23日月曜日(早いと助かります)
[5] その他の制限:できるだけ簡単に
何度もすみませんもしできる方がいましたらお願いします
26:デフォルトの名無しさん
08/06/19 01:17:28
>>18
これはすまんすまん。
既に回答されてたからいいかーと思ってた。
スレリンク(tech板:845番)
これじゃだめだったん?
27:9
08/06/19 02:00:37
>>11>>13
ありがとうございます
28:デフォルトの名無しさん
08/06/19 03:05:41
>>21
char配列は、windowsちっくにソートしたw
URLリンク(kansai2channeler.hp.infoseek.co.jp)
29:デフォルトの名無しさん
08/06/19 03:24:01
>>28
素朴な疑問なんだが、配列の初期化の辺りは意図的にやっているんだよね?
30:デフォルトの名無しさん
08/06/19 03:29:45
>>18
data.txt
0 0.000
5 0.087
10 0.173
15 0.258
20 0.342
25 0.422
30 0.500
35 0.573
40 0.624
45 0.707
50 0.766
55 0.819
60 0.866
65 0.906
70 0.939
75 0.965
>>26 何で謝ってるか意味が分からん。良かったら教えて。
31:デフォルトの名無しさん
08/06/19 03:37:48
意図的だろうけど、普通に "abcdef" のように書いてもおkだな
32:デフォルトの名無しさん
08/06/19 04:04:38
>>30
前スレで
>ソースコードはでき次第うpする
って言ったのにその後放置したのを、期待してた18に悪いと思ったんだろ。
33:31
08/06/19 04:10:03
サンク
34:デフォルトの名無しさん
08/06/19 04:11:48
本人でもないのに自分が思ったことを憶測で言うお前、
間違いなくあいつだw 毎日昼夜逆転の生活乙。
どんだけ構ってチャンなんだよ、お前?w
誰も部外者のお前に意見なんて聞いてねーだろw
本人がなんで謝っているのか?本人がレスすりゃ良いだけだろw
35:デフォルトの名無しさん
08/06/19 04:28:44
>>34
構ってチャン乙
36:デフォルトの名無しさん
08/06/19 04:31:05
>>23
#include<stdio.h>
#include<stdlib.h>
void quick_sort(int left, int right);
int pivot(int left, int right);
int *list;
int num_of_data;
main()
{
int i;
scanf("%d", &num_of_data);
list = malloc(sizeof(int) * num_of_data);
for(i=0; i<num_of_data; i++) scanf("%d", list + i);
quick_sort(0, num_of_data-1);
printf("%d\n", num_of_data);
for(i=0; i<num_of_data; i++)
{
printf("%12d\n", list[i]);
}
}
37:デフォルトの名無しさん
08/06/19 05:20:04
> 期待してた18に悪いと思ったんだろ。
本人でもないのに他人の意向を勝手に思い込む、勘違いする奴って
ぜってーどっかズレてるよな。それで相手の気分を害すると。
38:デフォルトの名無しさん
08/06/19 06:21:02
勘違いかどうかは本人以外わからないんじゃ?
勘違いと決め付けることは本人でもないのに他人の意向を勝手に思い込むことだと思うけど。
39: ◆bTjnLXZVZc
08/06/19 06:24:06
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC6.0
[3.3] 言語: C
[4] 期限: 本日13時まで
よろしくお願いします
40:デフォルトの名無しさん
08/06/19 06:26:06
>>22
ちょうど上手いこと消せるかと思ったんだが…ま、いいや
変数はrev_flagだけ消して、whileのとこは下のに変更しとくれ
current = 0;
while(string[current] != '\0'){
if(s.num_of_data > 0) reverse[current] = pop(&s);
else reverse[current] = string[current];
if(string[current] == '#'){
i = current+1;
while(string[i] != '\0' && string[i] != '#'){
push(&s, string[i]);
i++;
}
}
current++;
}
reverse[current] = '\0';
41:デフォルトの名無しさん
08/06/19 07:51:45
>>39
top=top++; /*ポインタを更新*/
これはひどい
42:デフォルトの名無しさん
08/06/19 09:56:42
>>39
ヒントは”参考”にした、ヒントを元に作ってないw
URLリンク(kansai2channeler.hp.infoseek.co.jp)
43:デフォルトの名無しさん
08/06/19 10:15:52
>>42
これはいい感じに喧嘩売ってる
44:デフォルトの名無しさん
08/06/19 10:16:40
>>41
確かに副作用完了点とか無視しまくりんぐwwwwww
45:デフォルトの名無しさん
08/06/19 11:10:10
>>42
static int g_nStack[ STACK_MAX ] = {0,0,0,0,0,0,0,0,0,0};
グローバルならわざわざ初期化いらないんじゃない
STACK_MAX変更するたびに修正しないといけないし
46:デフォルトの名無しさん
08/06/19 11:28:11
そもそもスタックの中身がクリアされてる必要が無いな
47:デフォルトの名無しさん
08/06/19 12:13:01
>>40
動作確認完了です
わざわざ追加したこちらのご要望にも答えていただきありがとうございました
48:デフォルトの名無しさん
08/06/19 12:20:17
>>36
ありがとうございました
ただ実行しても
'=' : 'void *' から 'int *' に変換できません。
のようなエラーがでてしまいます
あと厚かましいのですが
もっと簡単な、サンプルプログラムに近いソースを頂くことはできませんか
49:デフォルトの名無しさん
08/06/19 12:24:23
前スレ745、期限切れですがなんとかなりませんか?
50:デフォルトの名無しさん
08/06/19 12:30:46
[1] 授業単元:プログラミング言語
[2] 問題分:リスト構造
• 数値の列を入力し,それをリスト構造にデータを格納せよ.
その際,数値が大きさの順に並ぶようにせよ.
- 入力する数値の数を限定してもよい
- たとえば5個
• リストの内容を先頭から出力せよ.
- 結果として入力された数値の列が,大きさ順に並び替えられて
表示されることになる.
• リスト構成する要素(セル)はmalloc関数でヒープ領域から
確保するものとする.
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:visualstdio 2008
[3.3] 言語:C++
[4] 期限:6月19日 12時頃まで
[5] その他の制限:特に無し。
申し訳ありませんがどうか宜しくお願いします。
51:デフォルトの名無しさん
08/06/19 12:36:14
>>48
Cで書いてあるから拡張子をcにしろ
C++じゃないとだめならmallocじゃなくてnew使え
52:デフォルトの名無しさん
08/06/19 12:36:25
>>48
mallocの前に(int*)をつける
53:デフォルトの名無しさん
08/06/19 13:27:38
>>32
そそ。フォローども。
54:デフォルトの名無しさん
08/06/19 13:28:38
ってなんかしらんけど荒れてるw
そんな誤解受ける書き方だったかなあ。気をつけるね。
55:デフォルトの名無しさん
08/06/19 13:48:31
[1] ネットワーク論
[2] 基数変換
1)基数変換プログラムを作成しなさい。
「元:2~16進数(選択)→変換先:2~16進数(選択)」
という基数の指定ができるようにすること.
[3] 環境
[3.1] Windows
[3.2] CPad for Borland C++Compiler
[3.3] 言語:C
[4] 期限: 明日まで
[5] その他の制限: 本課題は、基数変換の理解、および、そのプログラムとしての実装を
主たる目的としています。従って、基数変換を行う関数や外部プログ
ラム等を用いてはいけません。
プログラムとってないけど出されてしまいましたorz
正直まったくわかりません・・・
とりあえずロダにあげときました。
よろしくお願いします。
福島大学 共生システム理工学類2年
吉原 千勝
56:デフォルトの名無しさん
08/06/19 13:49:09
前745解こうと思って考えてるんだけど、
たとえば A B C D の順列パターン数は 4! で求まるけど、
A A B C や、 A A A B, または A A B B の順列パターン数はどう求めるんだっけ?
公式ある?
57:デフォルトの名無しさん
08/06/19 13:59:41
レス番指定は正確に
tech:プログラム技術[重要削除]
スレリンク(saku2ch板:60番)
58:デフォルトの名無しさん
08/06/19 14:00:33
プログラム取ってない人に明日まででこんな問題出すのはおかしい
59:デフォルトの名無しさん
08/06/19 14:04:55
トリップ付けないで質問する奴が多い事について
60:デフォルトの名無しさん
08/06/19 14:08:12
>>56
N個からなるパターンの総数はN!
同一種でM個の重複がある場合にはM!で割る
AABC → 4!/2!
AAAB → 4!/3!
AABB → 4!/(2!2!)
61:デフォルトの名無しさん
08/06/19 14:12:19
一般化してみた
AABC → 4!/(2!1!1!)
AAAB → 4!/(3!1!)
AABB → 4!/(2!2!)
62:デフォルトの名無しさん
08/06/19 14:13:05
Cの問題は解くものじゃ無く書くもの。書き残すもの
書く事と解くことを履き違えいほうがいいぞ
63:デフォルトの名無しさん
08/06/19 14:13:59
>>56
重複順列ならn^m
でもサイコロの出目の合計だから重複組合せを求めるんじゃね
てか出目の合計xを求める確率密度関数p(x)がありゃいいんだけどな
64:デフォルトの名無しさん
08/06/19 14:37:57
[1] 授業単元:プログラミング
[2] 問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
例プログラム:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名:gcc
[3.3] 言語:C
[4] 期限: [2008年6月25日まで]
[5] その他の制限:2分木で作る
どなたかお願いします。
65:56
08/06/19 14:38:41
>>60 産休。
だがかなり厄介な問題だ。
めんどくさくなったw どうすっかな。
66:デフォルトの名無しさん
08/06/19 15:00:57
>>55
URLリンク(kansai2channeler.hp.infoseek.co.jp)
67: ◆bTjnLXZVZc
08/06/19 15:24:52
>>42
遅くなりましたが、ありがとうございました
何も言われないことを祈りますw
68:デフォルトの名無しさん
08/06/19 17:16:01
っつーか、やっぱ意図的だよね?
"012345…DEF"でもおk
69:50
08/06/19 17:52:31
うわ、期限間違えてた。
19日12時じゃ書き込んだ時点で既に過ぎてるって。
すみません、08年6月20日の12時迄でした。
70:デフォルトの名無しさん
08/06/19 17:52:33
[1] 授業単元:C言語
[2] 問題文URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:VC 6.0
[3.3] 言語: C
[4] 期限: 6月23日月曜日(早いと助かります)
[5] その他の制限:できるだけ簡単に
何度もすみません,もしできる方がいましたらお願いします.
71:デフォルトの名無しさん
08/06/19 18:29:43
>>70
要するにフィールドを9×9にして9分割して
その中に8個無かったら最後に1列1行調べるようにすればいいんじゃね?
できるだけ効率よく座標調べるようにしてさ
72:デフォルトの名無しさん
08/06/19 18:30:29
またお前か、口先だけで書き込み方と言い方に特徴があるから
する分かるぞw
73:デフォルトの名無しさん
08/06/19 18:49:28
突っ込んだら負けなんですね
色んなイミで
74:デフォルトの名無しさん
08/06/19 19:17:12
[1]授業単元: C言語
[2] 問題文:BMP画像を読み込んで画面に出力するプログラムを作成
[3] 環境:
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン: borland c++ 5.5.1
[3.3] 言語:Cのみ
[4] 期限:20日まで
[5] その他の制限:とくに無し
75:デフォルトの名無しさん
08/06/19 20:32:18
宿題を解いてくれなかったのかなあ。
かわいそうに。
76:デフォルトの名無しさん
08/06/19 20:33:58
>>70
前スレの回答では何がダメだったのだろう。手数が多すぎるからアウト?
ダメな理由を書かずにお願いしますお願いしますじゃ困る人もいるのでは。
77:70
08/06/19 20:40:19
>>76
手数が多すぎたので…
20から30でお願いします
78:デフォルトの名無しさん
08/06/19 20:57:36
参考にしてチューニングしてみたら?
自分でやる時にどうやったら効率よく宝探せるか考えるとか
割とおもしろいと思うけどなあ
79:デフォルトの名無しさん
08/06/19 21:16:23
[1]簡易データベース作成[2]問題文
・入力内容
名前、年齢、メアド
・機能
追加、削除、編集、ソート(No.)、(年齢)、終了
・動作例
[追加の例]
1:add
2:del
3:mod
4:sort(no)
5:sort(age)
6:end
Select Function:1
name:name
age:78
mail:aa@bb.ne.jp
1:namae 78 aa@bb.ne.jp
[3-1]windows
[3-2]gcc
[3-3]C言語
[4]明後日まで。
とりあえず、追加だけでよろしくお願いいたします。
80:デフォルトの名無しさん
08/06/19 21:17:08
[1]簡易データベース作成[2]問題文
・入力内容
名前、年齢、メアド
・機能
追加、削除、編集、ソート(No.)、(年齢)、終了
・動作例
[追加の例]
1:add
2:del
3:mod
4:sort(no)
5:sort(age)
6:end
Select Function:1
name:name
age:78
mail:aa@bb.ne.jp
1:namae 78 aa@bb.ne.jp
[3-1]windows
[3-2]gcc
[3-3]C言語
[4]明後日まで。
とりあえず、追加だけでよろしくお願いいたします。
81:デフォルトの名無しさん
08/06/19 21:17:55
連続投稿すいません…。
82:デフォルトの名無しさん
08/06/19 21:33:35
[1] 授業単位:プログラミング演習
[2] 問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:Visual studio2005
[3.3] 言語:C言語
[4] 期限:20日午後1時まで
[5] その他の制限:特になし
よろしくお願いします
83:デフォルトの名無しさん
08/06/19 21:35:53
tmp = num[j+1];
num[j+1] = num[j];
num[j] = tmp;
84:デフォルトの名無しさん
08/06/19 21:37:40
>>82
URLリンク(kansai2channeler.hp.infoseek.co.jp)
85:デフォルトの名無しさん
08/06/19 21:37:41
>>82
//ここに、数を入れ替えるプログラムを追加する
tmp = num[ j ];
num[ j ] = num [ j + 1 ];
num [ j + 1 ] = tmp;
86:デフォルトの名無しさん
08/06/19 22:04:25
[1] 授業単元:プログラミング
[2] 問題文:int型配列x,yを次のように宣言する。
int x[5]={3,-2,-4,2,3};
int y[7]={1,3,3,-2,3,0,5};
このとき,xおよびyの配列の各要素の合計を返す関数ArraySum()を作成せよ。
なお,xとyとで2つの異なる関数を作る必要はない。
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名:gcc
[3.3] 言語:C
[4] 期限: [2008年6月20日12:00まで]
前スレでも聞いてた人がいたけど俺にはわからなかったので・・・
誰かよろしくお願いします
87:デフォルトの名無しさん
08/06/19 22:07:20
>>86
どこが分からないか言わないと前スレと同じ回答来るだけだと思うが
88:デフォルトの名無しさん
08/06/19 22:07:28
int ArraySum(int *p, int size)
{
int sum = 0;
while(size--) sum += p[sum];
return sum;
}
89:デフォルトの名無しさん
08/06/19 22:07:45
int ArraySum(){
return 2+13;
}
90:デフォルトの名無しさん
08/06/19 22:10:09
[1] 授業単元:C言語プログラミング
[2] 問題文(含コード&リンク):()
URLリンク(kansai2channeler.hp.infoseek.co.jp)
コマンドライン引数で指定した2分木データから2分木を作成し、
次のsumValue関数を使ってノードの合計を計算するプログラムを、↑の資料を参考にして作成せよ。
ただし、下の実行例のように、ルートの左部分木と右部分木の合計も計算するものとする。
必要な関数などはすべて記載しておくこと。
BITREE_TYPE sumValue(BITREE_NODE *p);
実行例
[ 6 [ 8 1 5 ] [ 3 _ 9 ] ]
入力データ [ 6 [ 8 [ 1 _ _ ] 5 _ _ ] ] [3 _ [ 9 _ _ ] ] ]
==> 合計は 32 です
==> 左部分木の合計は 14 です
==> 右部分木の合計は 12 です
[3] 環境
[3.1] OS: (Windows/Linux/等々)
linux
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
gcc
[3.3] 言語: (C/C++/どちらでも可 のいずれか)
C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
6月23日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
特にありません、よろしくおねがいします
91:デフォルトの名無しさん
08/06/19 22:11:21
>>70
またお前か…
8/100の8を全て選ぶ回数が20~30回で、と言う確率がどれくらいかわかってるのか
単純に考えても8x4=32で、1つ探すのにも4手でオーバーだぞw
ズルなしで出来るか、ボケェ
自分のプレイの平均を出してみろ
92:デフォルトの名無しさん
08/06/19 22:14:47
>>91
またお前か…
要らん罵倒レスが入っているから分かりやすいぞw
わざわざ改行して最後に句読点をつけない特徴もそのまんまw
93:デフォルトの名無しさん
08/06/19 22:30:07
アデランスへ行け
94:デフォルトの名無しさん
08/06/19 22:30:25
>>92
あなたもわざわざ改行をして最後に句読点をつけないねw
最後に読点をつける人がいたら結構な特徴になるだろうか
でも>>91はせっせとソース上げてるから>>92よりしっかりしてるよね
95:デフォルトの名無しさん
08/06/19 22:31:01
>>91
まあ一回で九マス十一回で九十九マス調べられるからな
被らないようにすればぎりぎりいける…かも
96:デフォルトの名無しさん
08/06/19 22:32:53
>>95
爆弾ビンゴの時に周囲が分からないのと、盤面が10*10であるというのがあるですよ。
97:
08/06/19 22:33:31
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows vista
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
[3.3] 言語:c
[4] 期限:6月20日 夕方くらいまで
[5] その他の制限:添付ファイルに少し書きました。
ポインタやポインタ配列を習い始めて少ししか経ってないくらいです。
98:デフォルトの名無しさん
08/06/19 22:39:04
#include <stdio.h>
int main(void)
{
char str[256], ch;
int i, cnt = 0;
printf("文字列入力:");
scanf("%s", str);
printf("検索文字入力:");
scanf(" %c", &ch);
for(i=0; str[i]; i++) if(str[i]==ch) cnt++;
printf("検索文字は%d個見つかりました。\n", cnt);
return 0;
}
99:デフォルトの名無しさん
08/06/19 22:39:37
>>96
>>71のやり方でいいのでは?
あとビンゴの時は座標の数開いたら次行って宝がまだ残ってなら周囲探すとか だめ?
100:
08/06/19 22:46:12
>>98
ありがとうございます。
検索文字のカウントをmainではなく別関数でやってほしいのですが・・・
101:デフォルトの名無しさん
08/06/19 22:52:38
大学もそろそろ前期が終わる時期なんですね。
102:デフォルトの名無しさん
08/06/19 22:55:23
#include <stdio.h>
int count(char *p, int ch)
{
int cnt = 0;
while(*p) {
if(*p==ch) cnt++;
p++;
}
return cnt;
}
int main(void)
{
char str[256], ch;
printf("文字列入力:");
scanf("%s", str);
printf("検索文字入力:");
scanf(" %c", &ch);
printf("検索文字は%d個見つかりました。\n", count(str, ch));
return 0;
}
103:デフォルトの名無しさん
08/06/19 22:57:19
>>70
俺のプレイ平均回数とほぼ同じだ…
俺では理論上もうこれ以上は減らせないw
URLリンク(kansai2channeler.hp.infoseek.co.jp)
104:デフォルトの名無しさん
08/06/19 23:01:42
[1] 授業単元:課題研究(自由研究みたいなもの)
[2] 問題文(含コード&リンク):C言語で自動車エンジンの走行距離と走行時間による熱効率と燃費の算出
[3] 環境
[3.1] OS:Windows XP
[3.2] コンパイラ名とバージョン: Microsoft Visual Studio でいいのか?
[3.3] 言語:C言語
[4] 期限:2008/6/27
[5] その他の制限:Cの基本は一通り習ったはず
こんな感じなんですがお願いできますかね?
105:
08/06/19 23:04:14
102>>
ありがとうございました。
感謝してます。
106:デフォルトの名無しさん
08/06/19 23:05:39
出来たけど、うpは来週水曜日くらいしとこっと。
107:デフォルトの名無しさん
08/06/19 23:12:02
>>91
自分でやったら30手以内でできるね
自分の思考をコンピュータにやらせるのはめんどくさそうだが
108:デフォルトの名無しさん
08/06/19 23:12:34
>>104
いくらなんでも情報が少なすぎだろう
109:デフォルトの名無しさん
08/06/19 23:20:51
前スレの1000は知識遅れか?少なくとも、このスレ的にも
そしてどの環境、プログラマでも共通して gets はご法度なのに
擁護して、また憶測で勝手につじつまを合わせようと都合よく解釈して
授業でやるかもしれないよ?なんてこのスレ的にはどうでも良いことを
言い掛かってきて、何が楽しいんだ?
110:デフォルトの名無しさん
08/06/19 23:21:19
104です。
あとどのような情報があればいいですか?
教授から出された課題がこれだけで課題に関してはこれ以上は俺自身もどうしようもない・・・。
あとVisual Studioのバージョンはおそらく2007年のもの。
特に制限はされてないのでCでてきることなら好きなようにやってもらえれば・・・。
課題のイメージとしてはガソリンエンジン車とディーゼルエンジン車をそれぞれ走らせ続けて適当な距離と時間を刻んでデータを取って保存できるようにしてもらえれば・・・。
グラフも作って出せとか言っていたからな、あの教授。
111:86
08/06/19 23:30:04
何とかなりました。ありがとうございました
112:デフォルトの名無しさん
08/06/19 23:42:44
>>110
入力されるものは何?
出力すべきものは何?
113:104
08/06/19 23:54:09
出力されるべきはエンジンの熱効率と燃費。
入力するのはエンジンの出力と単位時間に消費される燃料の重さ。
走行時間と走行距離はループで回す方向で。
上記両方をループで回すのはきついかもしれんのでどちらか固定してもらってもおkかと
114:デフォルトの名無しさん
08/06/20 00:02:49
>>99
マインスイーパ的な、なので、ビンゴの時はそのマスの周囲8マスにある
宝の数は不明かと。
もうちょっと込み入った何かをやらないと手数が足りないのではないかな。
…と見せかけて今までので実現できるならごめん。
115:デフォルトの名無しさん
08/06/20 00:08:53
>>109
あんたもしつこいね。getsがよくないのは後から知ればいい。
それよりもくみ上げる力をつけることのほうが優先だっていってんの。
まず言語になれること。そこからやっていいこと悪いことを知ればいい。
日本語を書くときに「の」の連続はよくないよ、ということを知ったのは
「の」の連続をしてしまうくらいには日本語を知ったあとだろう?
ご法度であることを次の授業で云々と言っている人は他の人だからパス。
116:デフォルトの名無しさん
08/06/20 00:11:21
>>50の並べ替えの部分がよくわからないんだが、どういう風にやればいいんだ?
117:デフォルトの名無しさん
08/06/20 00:14:02
>>116
リストに追加する際、それらしいところに入れてあげれば勝手にソートされる
大きい順なので、たとえば、
3 が既にあるときに1を追加する場合は3の後ろにつなげる。
さらに2を追加する時は3と1の間にいれる。
118:デフォルトの名無しさん
08/06/20 00:14:44
>>51>>52
C++じゃないとダメなのでnewに変えたのですがエラーが発生します
恐らく>>52さんのは試したものの、Cなのでダメなのでしょうが
119:デフォルトの名無しさん
08/06/20 00:18:18
>>118
何がダメなのか知らないが、mallocでキャストするのは実にC++っぽい行為だぞ
120:デフォルトの名無しさん
08/06/20 00:24:26
> C++っぽい
それCですから、mallocでキャスト
121:デフォルトの名無しさん
08/06/20 00:25:59
Cはキャスト必要無いだろ
122:デフォルトの名無しさん
08/06/20 01:38:55
>>121
あれ?蛇足って言ったけど、蛇足じゃないと指摘されたのに
まだ主張しますか?そんなにキャストしてもらえることを
期待しているなら、お前は絶対に今後はキャスツすんなよ
123:デフォルトの名無しさん
08/06/20 01:46:07
型変換は明確なCの規格。
一人わかってないバカがファビョってるだけ。
124:デフォルトの名無しさん
08/06/20 01:51:46
キャストしてはいけない、ならギャーギャー言ってもいいけど
してもしなくてもいいんだからどっちでもいいじゃん
125:デフォルトの名無しさん
08/06/20 01:56:55
>>124
キャストしなくてもいいところに、キャストしろってギャーギャー言ってるアホがいるんだが。
126:デフォルトの名無しさん
08/06/20 01:57:56
C++はmalloc非推奨ってことで終了。
127:デフォルトの名無しさん
08/06/20 02:00:44
それよりも>>23が本当にC++の宿題なのかどうかが気になるんだが
128:デフォルトの名無しさん
08/06/20 02:27:20
[1] 授業単元:
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:6/23
[5] その他の制限:特になし
つい最近始めたばかりです。どなたかお願いします
129:デフォルトの名無しさん
08/06/20 02:36:59
>>123 っと、キャストの意味を知らない素人が申しております
130:デフォルトの名無しさん
08/06/20 02:52:20
>>94
言動がキモイ・・・言い返し方もキモイ・・・だから一言居士はきめぇって
わざわざ改行?お前の真似をしてやったんだよ、皮肉だよ、気づけよ
構ってチャンw
131:デフォルトの名無しさん
08/06/20 02:55:01
>>91の分かりやすい特徴
ズルなしで出来るか、ボケェ < 何か相手に意見するとき、
勢いづいて罵倒レスをつける癖がついてしまっている
> 自分のプレイの平均を出してみろ
命令口調。押し付けるタイプ。
132:デフォルトの名無しさん
08/06/20 02:55:13
C研究
[2] 問題文(含コード&リンク):()
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: (Windows/Linux/等々)
Windows
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
Microsoft Visual Studio 2008
[3.3] 言語: (C/C++/どちらでも可 のいずれか)
C++
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
6月21日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
スルーされたのでもう一度書きます。
お願いします。
133:デフォルトの名無しさん
08/06/20 03:14:40
>>130
どこまで恥の上塗りするのか見てみたいけど、
>>91 = >>94だと思ってる時点でアウトだ。
134:デフォルトの名無しさん
08/06/20 03:41:48
>>133
彼に反論すると漏れなく同一人物認定されます。
135:デフォルトの名無しさん
08/06/20 05:49:34
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):()
浮動小数点実数の文字列表現形式は以下のどれかである。
(1) 文字'0'-'9'だけの並び
(2) (1)の前に'+','-'を高々1個付けたもの
(3) (1)の前に'.'を付けたもの
(4) (2)の直後に(3)が続くもの
(5) (2)または (3) または(4) の後ろに'e'または'E'が続き(2)が続くもの
コンソールから与えた文字列がこの形式になっているかどうかに
応じてYES(なっている場合)あるいはNO(いない場合)を出力
するプログラムを作れ。
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限: 6/20 午後17:00
[5] その他の制限:
よろしくです。m(_)m
136:デフォルトの名無しさん
08/06/20 06:09:34
[1] 授業単元: プログラミング演習基礎
[2] 問題文(含コード&リンク):成績データを処理するために実験用データを,乱数により生成するプログラムを作成せよ.
ただし,成績データは
学生番号,英語,数学,物理,化学,国語,社会
の6科目の得点を1行毎に学生番号毎に並んでいるものとする.得点は0点?100点の範囲に収まっている必要がある.
また,学生番号が1001番から9999番まで存在するとする.実験用データは全ての人数について作成する必要がないので,
コマンドライン引数から作成するデータ数を与え,その人数のデータを,同じくコマンドラインから与える
ファイル名のファイルに出力すること(標準出力を使わないこと).
[3] 環境
[3.1] OS: Windows/Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 6/20 23:00
137:デフォルトの名無しさん
08/06/20 06:45:53
>>136
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char **argv)
{
int i, j, num;
FILE *fp;
if(argc < 3) return 0;
num = atoi(argv[1]);
if(num < 1 || 9000 <= num) return 0;
if((fp=fopen(argv[2], "w"))==NULL) return 0;
for(i=1; i<=num; i++) {
fprintf(fp, "%d", 1000 + i);
for(j=0; j<6; j++) fprintf(fp, ",%d", rand() % 101);
fputc('\n', fp);
}
fclose(fp);
return 0;
}
138:デフォルトの名無しさん
08/06/20 07:10:28
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:CPad for Borland C++Compiler
[3.3] 言語:C言語
[4] 期限:来週の月曜まで
[5] その他の制限:ポインタまで習いました
全然わからないのでよろしくお願いします
139:デフォルトの名無しさん
08/06/20 08:13:49
>>79 >>80
明後日ってことは明日までまだ時間があるね。
よーーし、パパ、ちょっとがんばっちゃうぞぉ~。
とりあえず、追加は出来たが、そのほかもやってみたいんで
それらも含めて出来たらうpしまつ。
140:hoge ◆F6cdlTCMHg
08/06/20 09:54:28
>>135
ちょっとlexとか造りたくなったから自力でトークナイザ書いてみたよ
URLリンク(kansai2channeler.hp.infoseek.co.jp)
141:デフォルトの名無しさん
08/06/20 09:55:56
>>139
構造体というものがよくわからないので配列で作ってもらえないですか?
と、言われるかと思うとしびれるよねw
気にせず満足いくものを作ってみるといいお
142:デフォルトの名無しさん
08/06/20 10:40:31
[1] 授業単元:通信ソフトウェア
[2] 問題文(含コード&リンク):HTTPサーバを実装する.マルチスレッドによる複数クライアントへの対応,GETとHEADの実装、Keep-alive,チャンクの実装をする.
[3] 環境
[3.1] OS:Windows XP/Vista
[3.2] コンパイラ名とバージョン:VC 8.0/VC 9.0
[3.3] 言語:どちらでも可
[4] 期限:6月23日 23:59
[5] その他の制限:特になし
自分で一応作ってみたのですが、どうもうまく動かないのでよろしくお願いします。
また、Keep-alive,チャンクの実装がよくわかりません。
自分で作ったのを置いておきます。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
143:デフォルトの名無しさん
08/06/20 13:11:25
[1]CとC++
[2]テキストサウンドノベルを作成する事。
キー入力でメッセージを表示し、途中で選択肢を含める。(最大3つまで)
画面をスクロールさせることは禁止。ページ切り替えは、画面全消去で対処する事。
テキスト行数は、最低50行から最大100行までとする。
画面全消去方法は、先生に聞くこと。
#include"stdlib.h"
system("CLS");
この時に画面すべて消せる
144:104
08/06/20 13:12:08
とりあえずゴチャゴチャ付け加えちゃったんでもう一回まとめて・・・。
[1] 授業単元:)
[2] 問題文(含コード&リンク):C言語で自動車エンジンの走行距離と走行時間による熱効率と燃費の算出
(エンジンのパワーと単位時間に消費される燃料の重さを入力して走行距離と時間に応じた熱効率を算出する。燃費は熱効率と逆数の関係にあるのでそこから求められる。)
[3] 環境
[3.1] OS:Windows XP
[3.2] コンパイラ名とバージョン: Microsoft Visual Studio 2007
[3.3] 言語:C
[4] 期限:2008/6/27
[5] その他の制限:課題に対する制限は特になし。
これでお分かり頂けるでしょうか?
145:135
08/06/20 14:53:43
>>140
あ、ありがとうございます。
内容は全然わからなかったのですが、取り敢えずコンパイルしてみました。
概ね動作しました。何故か前回正常にOKが返った値(4.39183e32)
がNGと返ってくることがあったような感じです。入力ミスなのかも
しれません。
ネット上のソースを写して提出したら単位認定しないという
結構厳しい授業なので、参考にさせて頂いて、自分で書き直して
みます。
146:デフォルトの名無しさん
08/06/20 15:13:36
>>145
>ネット上のソースを写して提出したら単位認定しない
このスレで言うのも何だがあたりまえだろ
全然厳しくないぞ
147:デフォルトの名無しさん
08/06/20 15:33:59
>>145
それはきびしいねwwwww
148:デフォルトの名無しさん
08/06/20 15:56:44
出題者も当然このスレはチェックしています
俺の出した課題が出てると喜んでいるでしょう
149:デフォルトの名無しさん
08/06/20 16:40:40
[1] 授業単元: プログラミング演習基礎
[2] 問題文(含コード&リンク):
複数の成績データを1度に読み込んで,それぞれのファイルに含まれる学生数と,
各科目の平均点を求めて,ファイル名と共に出力するプログラムを作成せよ.
成績ファイルは,
学生番号(整数),英語(整数),数学(整数),物理(整数)
の得点が一行に記載されている.ただし,学生番号順には並んでないし,抜けがあるかもしれないものとする.
学生番号は整数のみ,0~番などは考慮しなくてよい
[3] 環境
[3.1] OS: Windows/Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 6/20 23:00
[5] >>137ありがとう、これもどなたかお願いします\(^o^)/
150:149
08/06/20 16:42:55
書き忘れ・・・
argvとかを使って
例
% ex016 r901-1.dat r901-2.dat r903.dat
r901-1.dat: 26 English: 82.23 Mathematics: 90.21 Physics: 79.93
r901-1.dat: 97 English: 42.41 Mathematics: 92.34 Physics: 89.93
r901-1.dat: 97 English: 32.23 Mathematics: 91.01 Physics: 99.93
となる感じでお願いします(数値は適当
151:デフォルトの名無しさん
08/06/20 17:50:55
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク)
下に載せてあるプログラムを応用して以下のプログラムを作ってください。
(1)画像をモノクロ化するプログラム
(2)画像の明暗を変化させるプログラム
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:Microsoft Visual Studio 2003
[3.3] 言語: C
[4] 期限: 6月22日までにお願いします
[5] その他の制限:printfの変わりにfprintf文を使ってください。
#include "plite.h"
int main(int argc,char **argv)
{
RGB in;
RGB out;
int i,j;
ReadRGB(&in,argv[1]);
MemRGB(&out,in.row,in.col);
for(i=0;i<out.row;i++){
for(j=0;j<out.col;j++){
out.R[i][j]=in.R[i][j];
out.G[i][j]=in.G[i][j];
out.B[i][j]=in.B[i][j];
}
}
writeRGB(&out);
return0;
}
152:デフォルトの名無しさん
08/06/20 17:59:20
よろしくお願いします
総当たり以外に方法ありますか?
[1] 授業単元:アルゴリズムとデータ構造
[2] 問題文(含コード&リンク):()
それぞれ空き容量が異なる(同じでも良い) C, D, E, F ドライブのHDDに
ファイル a, b, c, d が全て収まりきるか調べ、収まる場合はその入れ方を
一つ表示しなさい。
例)
(C, D, E, F) = (1GB, 6GB, 4GB, 3GB)
(a, b, c, d) = (3GB, 2GB, 2GB, 5GB)
の場合、C:* D:d E:b,c F:a
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC2003
[3.3] 言語:どちらでも可
153:デフォルトの名無しさん
08/06/20 18:05:47
ナップサック問題の亜種だな
演習でやるなら動的計画法でも使えばいい。
154:デフォルトの名無しさん
08/06/20 18:50:44
[1] 授業単元:情報処理
[2] 問題文(含コード&リンク):()
文字列を逆向きにして標準出力に出力するvoid strRev(char *)を定義し、
この関数を用いて標準入力の各行を逆向きにして一行ずつ表示するプログラムを作成しなさい
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ: gcc
[3.3] 言語: C
[4] 期限: 6/23
[5] その他の制限: 関数の戻り値や引数を変更しない
出力例で英語の文章が数行書かれたsample.txtを
./a.out < sample.txt
と入力された場合、それぞれの行が反転して出力されているのですが、これはどうすればいいのでしょうか?
最初の1行だけを反転して出力ならできるのですが・・・。
155:50
08/06/20 18:59:17
なんとか頼みこんで期限を数時間遅らせて貰い、
自分でも調べたりしてるのですが全く理解ができません。
過去ログ探してみるも同じのはあったけどソースが消されていたり。
何とかならないでしょうか。
しつこいかもですがどうか御願いします。
156:デフォルトの名無しさん
08/06/20 19:23:57
>>139
ぜひお願いします。
157:>>155 やっつけ
08/06/20 19:26:10
#include <iostream>
#include <vector>
#include <algorithm>
typedef struct lt{
double value;
lt *left;
lt *right;
}o_list;
void main(){
using namespace std;
vector<double> vec;
double tmp;
for(int k=0;k<5;k++)
{
cin >> tmp;
vec.push_back(tmp);
}
sort(vec.begin(),vec.end());
o_list *old=NULL;
for(int v=0;v<5;v++)
{
o_list *t =(o_list *)malloc(sizeof(o_list));
t->left=old;
t->right=NULL;
t->value=vec[v];
old=t;
}
do {
cout << old->value << endl;
old=old->left;
}while(old!=NULL);
}
158:デフォルトの名無しさん
08/06/20 19:53:50
>>79
> 名前、年齢、メアド
> ソート(No.)、
えっ!?
159:デフォルトの名無しさん
08/06/20 20:17:00
>>158
主キーというか登録順でいいんじゃない?
160:デフォルトの名無しさん
08/06/20 20:45:33
>>157 これじゃmalloc使ってないよ。よし。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
typedef struct lt{
double value;
lt *left;
lt *right;
}o_list;
void main(){
vector<double> vec;
double tmp;
int k, v;
for( k=0; k<5; k++ ) {
cout << k+1 << " of 5 : "; // cout
cin >> tmp; // cin
vec.push_back(tmp);
}
sort(vec.begin(), vec.end());
for( v=0; v<5; v++ ) {
cout << vec[v] << endl; // cout
}
}
161:デフォルトの名無しさん
08/06/20 20:46:10
>>50 C言語指定だと勝手に解釈してみた
#include<stdio.h>
#include<stdlib.h>
typedef struct tag_list_t{
int value;
struct tag_list_t *next;
}list_t;
list_t *list_add(list_t *list, int value){
list_t *member, *member_new, *prev;
member_new=malloc(sizeof(list_t));
member_new->value=value;
member_new->next=NULL;
for(member=list,prev=NULL;member;prev=member,member=member->next)
if(member->value > value) break;
if(!prev){
member_new->next=list;
return member_new;
}
member_new->next=prev->next;
prev->next=member_new;
return list;
}
void list_print(list_t *list){
for(;list;list=list->next) printf("%d\n", list->value);
}
int main(void){
list_t *list=NULL;
int value;
while(scanf("%d", &value)==1) list=list_add(list, value);
list_print(list);
return 0;
}
162:デフォルトの名無しさん
08/06/20 20:56:09
>>154
こんなんでいいのかな?
#include <stdio.h>
void strRev(char *str) {
if(*str!='\0') strRev(str+1);
putchar(*str);
}
int main(void) {
int i;
char buf[64],*str[128];
for(i=0;fgets(buf,sizeof(buf),stdin)!=NULL;i++) {
*(str+i)=buf;
strRev(*str);
}
return 0;
}
163:デフォルトの名無しさん
08/06/20 20:56:48
>>50
c++でmalloc?
164:デフォルトの名無しさん
08/06/20 21:02:58
>>50 の人気に shit!
165:デフォルトの名無しさん
08/06/20 21:05:33
>>83-85
遅れましたが、ありがとうございました
166:デフォルトの名無しさん
08/06/20 21:20:38
>>162
ありがとうございます。
ですが、コンパイルしたファイルを単体で実行するとフプログラムが終了しないのですが・・・。
これはどうしようもないのでしょうか?
167:デフォルトの名無しさん
08/06/20 21:24:45
繰り返し処理についてなんですが
168:デフォルトの名無しさん
08/06/20 21:27:15
>>166
Ctrl+D
169:50
08/06/20 21:27:20
何とか提出に間に合いました。
>>157 様、>>160 様、>>161 様、
お手数おかけました。本当に有難う御座います。
何とか提出が間に合いました。
>>164
C++のを使ってますね。
170:デフォルトの名無しさん
08/06/20 21:28:47
Cなの?C++なの?という疑問をすべてスルーして提出まで
やってのけた>>50はある意味大物か
171:デフォルトの名無しさん
08/06/20 21:28:50
>>162
>*(str+i)=buf;
まさかこれで文字列がコピーされてるとか思ってる?
172:50
08/06/20 21:29:08
何か同じの2回言ってる orz
期限のとかも間違えてたし…。
すみません、次からはちょっと落ち着いて書き込もうと思います。
173:デフォルトの名無しさん
08/06/20 21:31:25
>>171
少なくともそれを期待したコードにはなってないから分かってると思うよ
174:デフォルトの名無しさん
08/06/20 21:32:59
>>173
そうか?
str[i]に毎回同じbuffのアドレスいれてるからわかってないと思うんだが。
175:デフォルトの名無しさん
08/06/20 21:34:10
一見簡単そうにみえるようにちょちょっとやるのがここの醍醐味
printf とか scanf とか再帰とかw
176: ◆qQYVX6rY3I
08/06/20 21:41:35
1.授業単元:データ構造
2.問題文:URLリンク(kansai2channeler.hp.infoseek.co.jp)
3.環境:vista C++
visual studio2008
4.期限: 6/21(土)夕方6時まで
5.その他の制限:基本事項は習ってます。期限が近くてかなり焦ってます。
どうかよろしくおねがいします。
177:152
08/06/20 21:44:26
>>153
ありがとうございます
調べてみます
178:デフォルトの名無しさん
08/06/20 22:00:26
>>174
しかも毎回*(str+i)にbuffを入れておきながら、関数に渡してるのは*strという事実
意味ねーw
179:デフォルトの名無しさん
08/06/20 23:47:50
[1] 授業単元:アルゴリズム
[2] 問題文(含コード&リンク):()
課題①
「騎士の巡回」の解を求めるプログラムを用いて、チェス盤の1辺Nが5と6の場合について、経路の数を求めよ。(スタート地点は(0,0)とする。)
尚出力は、解の数と、時間計算量の評価回数、それに実行時間を示すこと。
課題②
「騎士の周遊」とは、「騎士の巡回」に加えて、経路の最後のマスからスタート地点に1手で戻れる経路を求める問題である。チェス盤の1辺Nが5と6の場合について、この条件を満たす経路の数を求めよ。
尚出力は、解の数と、時間計算量の評価回数、それに実行時間を示すこと。
課題③
下記に示すチェス盤では、移動できる部分をoで、移動できない部分をxで示している。このようなチェス盤に対する 「騎士の周遊」の解の総数を求める問題に対して、時間計算量を見積もった上で、プログラムを実行
し、解の総数と時間計算量(評価回数)を求めよ。
以下、授業中に板書された課題①のソートと、課題③のチェス盤を載せておきます。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限:6月23日(月)まで
[5] その他の制限:
課題①の上のソートじゃなくても全然構わないです。
たくさんありますが・・・よろしくお願いしますm(__)m
180:179
08/06/20 23:51:43
改行するの忘れました・・・
読みにくくて申しわけないですorz
181:デフォルトの名無しさん
08/06/20 23:53:25
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク):
文字列(英小文字)を入力し、その文字列を任意の数(1~25)だけずらして、
文字列を暗号化する関数encryptを作成せよ。
(注)1文字ずらして暗号化する場合
「a」→「b」、「b」→「c」、「z」→「a」
という変換をして暗号化する
<実行例>
------英字の暗号化------
文字列を入力してください(英小文字)
hello
何文字ずらしますか?(1~25)
1
------暗号化された文字列-----
ifmmp
[3] 環境
[3.1] OS: Linux
[3.3] 言語: C
[5] その他の制限: ポインタ使用可です。
よろしくお願いします。
182:デフォルトの名無しさん
08/06/21 00:08:47
#include <stdio.h>
void encrypt(char *str, int n)
{
while(*str) {
*str = 'a' + (*str - 'a' + n) % 26;
str++;
}
}
int main(void)
{
char str[256];
int n;
puts("------英字の暗号化------");
puts("文字列を入力してください(英小文字)");
scanf("%s", str);
puts("何文字ずらしますか?(1~25)");
scanf("%d", &n);
encrypt(str, n);
puts("------暗号化された文字列-----");
puts(str);
return 0;
}
183:デフォルトの名無しさん
08/06/21 00:13:20
>>182
while(*str) {
*str = 'a' + (*str - 'a' + n) % 26;
str++;
ここを少し説明していただけませんか?
184:デフォルトの名無しさん
08/06/21 00:45:23
単にchar配列をn文字前に進めてるだけだろ
185:デフォルトの名無しさん
08/06/21 00:46:51
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:6/23
/[5] その他の制限:特になし
よろしくお願いします
186:デフォルトの名無しさん
08/06/21 00:56:06
>>185
double mean(int a[] , int length)
{
int i;
double ave=0.0;
for(i=0;i<length;i++)
ave+=a[i];
return ave / (double)length;/*キャストいらないかもしれないけど明示するために一応付けとく*/
}
187:デフォルトの名無しさん
08/06/21 01:14:56
>>158
ソートは出題者のほうもよくわかってない感じなんで、とりあえず追加だけお願いします。
188:デフォルトの名無しさん
08/06/21 01:36:03
>>187
ういっ、もう少しでうpするでおじゃる●のクソースが見られるでおじゃるよ
189:デフォルトの名無しさん
08/06/21 01:43:10
>>187 >>79
URLリンク(kansai2channeler.hp.infoseek.co.jp)
190:デフォルトの名無しさん
08/06/21 01:45:08
>>187 >>79
URLリンク(kansai2channeler.hp.infoseek.co.jp)
ちと訂正したでおじゃ
191:デフォルトの名無しさん
08/06/21 01:47:04
クソースとへりくだりつつも、内心、「作品」だと思っている
ところがイタい
192:デフォルトの名無しさん
08/06/21 01:48:02
>>183
a~zまでは文字コードが昇順に並んでいることと、a~zまでは26文字あること。
それくらいしか気になる点はないと思う。
193:デフォルトの名無しさん
08/06/21 01:56:23
>>191
何をおっしゃるか、これは紛れもなく初心者向けにレベルを落とした
クソースでおじゃっ
194:デフォルトの名無しさん
08/06/21 02:08:40
>>187 >>79 すまぬ、さらに訂正。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
195:デフォルトの名無しさん
08/06/21 02:42:30
どうみても初心者向けとは思えないプロ教育を受けた人のコード
である件について
196:デフォルトの名無しさん
08/06/21 02:46:43
ねーよw
197:デフォルトの名無しさん
08/06/21 03:01:18
えぇ~~、思いつきで書いたクソースゆえ、しかも
プロとしてコードを書いてないゆえ、クソースということで
我慢してもらっているでおじゃる。上には上がいるゆえ、
まだまだ精進するでごじゃるよ。
198:デフォルトの名無しさん
08/06/21 05:52:41
>>151
URLリンク(kansai2channeler.hp.infoseek.co.jp)
199:デフォルトの名無しさん
08/06/21 06:36:40
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:CPad for Borland C++Compiler
[3.3] 言語:C言語
[4] 期限:来週の月曜まで
[5] その他の制限:ポインタまで習いました
全然わからないのでよろしくお願いします
200:デフォルトの名無しさん
08/06/21 09:58:43
>>199
汚いソースですが。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
MOJIで文字の種類、HANIで範囲を指定できるようにしました。
範囲チェックとかしてないので入力不可文字を範囲に含めないように。
マスターの文字列については一応重複チェックしてます。
201:デフォルトの名無しさん
08/06/21 10:02:34
実行してみた?
202:デフォルトの名無しさん
08/06/21 10:09:33
あー、環境書いてなかった。
gccでやってるからbccだと動かないかもしれない。
203:デフォルトの名無しさん
08/06/21 10:12:17
環境関係なく無限ループになる可能性があるんだが。
204:デフォルトの名無しさん
08/06/21 10:20:16
うむ。単純ミスorz
今のままだと重複したら無限ループするので
makerandomstrのi--;の次の行にc=0;入れてください。
205:デフォルトの名無しさん
08/06/21 10:32:21
ソースを上げる時は、せめて
テスト済みなのか、
コンパイル済み(文法エラー無し)
未コンパイルなのか、コメントに書きませんか?
206:デフォルトの名無しさん
08/06/21 10:36:14
宿題を片付けてほしい側
ちゃんと動くソースコードがほしい
題意を満たしていてほしい
何も出来ない初心者なので全部やってください><
↑
このギャップは埋められない
↓
宿題を片付ける側
面白そうだからやってみた
(^ω^ がんばったお
207:デフォルトの名無しさん
08/06/21 10:43:10
>>205
コンパイル通らなきゃソース上げないと思うんだが。
未コンパイルの可能性があるのはレスに直接ソースを書いてる場合位のような。
>>205が質問側なのか回答側なのか知らないけど
回答してる側としてはそこまで要求されてもなあ、と思う。
質問者が単位落としたとしてもこっちには関係ないことだし。
208:199
08/06/21 10:58:21
>>200
ありがとうございます!
えーとbccでコンパイルしてみましたがヒットもブロウも0になってしまいます・・
209:>>132
08/06/21 11:23:14
>>132お願いします
210:デフォルトの名無しさん
08/06/21 11:38:39
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク)
>>151です。あと2問残ってたのでこちらもお願いします
下に載せてあるプログラムを応用して以下のプログラムを作ってください。
(3)画像の分割・結合のプログラム。
(各画像の左半分と右半分を取り出し一方の画像の左半分と他方の右半分を結合した画像を出力)
(4)画像の切り抜きをするプログラム
(カラー画像に任意の領域を指定して、指定部分の画像のみを得る)
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:Microsoft Visual Studio 2003
[3.3] 言語: C
[4] 期限: 6月22日までにお願いします
[5] その他の制限:printfの変わりにfprintf文を使ってください。
#include "plite.h"
int main(int argc,char **argv)
{
RGB in;
RGB out;
int i,j;
ReadRGB(&in,argv[1]);
MemRGB(&out,in.row,in.col);
for(i=0;i<out.row;i++){
for(j=0;j<out.col;j++){
out.R[i][j]=in.R[i][j];
out.G[i][j]=in.G[i][j];
out.B[i][j]=in.B[i][j];
}
}
writeRGB(&out);
return0;
}
211:デフォルトの名無しさん
08/06/21 11:48:14
山形大学ですねわかります
212:デフォルトの名無しさん
08/06/21 11:54:15
>>205
なんか不具合があればここで報告しなよ。
せっかくアップしてもノーレスなら対処しようが無い。
あとレスがあれば回答者のモチベーションも上がると思うが。
213:デフォルトの名無しさん
08/06/21 12:12:25
質問者のモティベーションのほうが大切なような気がしないでも
ないのだが...
214:デフォルトの名無しさん
08/06/21 12:13:09
ここに丸投げする奴にやる気があるとでも?
215:デフォルトの名無しさん
08/06/21 12:30:03
まぁ軽く藁をも掴む気概でいるんだろ
216:デフォルトの名無しさん
08/06/21 12:39:52
なんかあれだなここで丸投げしてる奴が、実務の一次請けとか発注元の卵だったりすると最悪だな。
丸投げの予行演習といったところか(w
217:デフォルトの名無しさん
08/06/21 13:14:37
>>216
そういうときは、クソースで返すでおじゃるよ
218:デフォルトの名無しさん
08/06/21 13:19:05
それが命取りだった
219:デフォルトの名無しさん
08/06/21 14:13:34
>>199
つ URLリンク(kansai2channeler.hp.infoseek.co.jp)
一応正常に動きますが マスタが含む文字を5文字連続で入力するとバグります。
例:マスタ "yoooo" 入力 "yyyyy".etc・・・
テスト用に不必要なものまで表示しています。気になるようでしたら削除してください。
220:219
08/06/21 14:28:21
>>219の訂正
マスタが含む文字を複数入力するとバグる orz
バイトいってくるわ
221:デフォルトの名無しさん
08/06/21 15:50:11
こんな課題でそんな糞コード出されても困る。
222:デフォルトの名無しさん
08/06/21 16:09:28
[1] Cプログラミング演習
[2] 1.登録番号"int no"と名前"cahr *name"と年齢"int age"を含む構造体person型の
配列を定義し初期化せよ。なお、最後のデータの名前にはNULLを入れておく。
登録番号は入力順に1,2,3,4,5とする。
配列の先頭アドレスを示す構造体person型のポインタを引数として与え、
データを年齢順に並び替える関数を作成せよ。
2.登録番号(int no)と名前(char *name)と年齢(int age)を含む構造体person型のポインタ変数を宣言し、
登録人数分だけの動的メモリを確保せよ。
そして、データをファイルから入力せよ。
ファイルの形式は、先頭に登録する人数とし、そのあとに人数分のデータを登録番号、
名前、年齢の順に書いていく。(下の例を参照)
登録番号は入力順に1,2,3,4,5…とする。
そして、入力した全員のデータを表示せよ。
(ファイルの例)
3
1 田中 20
2 大田 40
3 井上 35
[3] 環境
[3.1] windows
[3.2] Microsoft Visual Studio 2003
[3.3] C
[4] 6/23まで
[5] とくになし
初心者なので、出来れば分かりやすいコードでお願いします。
お手数おかけしまして、申し訳ないです。
宜しく、お願いします。
223:デフォルトの名無しさん
08/06/21 16:16:19
>>210
URLリンク(kansai2channeler.hp.infoseek.co.jp)
224:デフォルトの名無しさん
08/06/21 16:20:24
>>219
ありがとうございます。
そこの部分考えてみます( ^ω^)
225:デフォルトの名無しさん
08/06/21 16:24:55
>>132,209
URLリンク(kansai2channeler.hp.infoseek.co.jp)
226:デフォルトの名無しさん
08/06/21 17:30:24
[1]プログラミング基礎
[2]10人までの氏名と点数の入力を受け付け、
点数が高い者から順に表示するプログラムを作成せよ
[3.1]windows
[3.2]gcc
[3.3]c
[4]月曜まで
[5]一度提出したのですが、再提出をくらいました
自分で作ったものが↓です
URLリンク(kansai2channeler.hp.infoseek.co.jp)
極力↑に近い解答をいただけると嬉しいです
よろしくお願いします
227:デフォルトの名無しさん
08/06/21 17:37:56
>>226
int ts;
for(i=0;i<10;i++){
for(int i=1;i<10;i++)
{
if(hito[i-1].score<hito[i].score){
ts=hito[i];
hito[i]=hito[i-1];
hito[i-1]=ts;
}
}
}
228:デフォルトの名無しさん
08/06/21 17:52:40
>>226
for(i=0;i<10;i++){
for(j=i+1;j<10;j++){
if(hito[i].score < hito[j].score){
hito[10] = hito[i];
hito[i] = hito[j];
hito[j] = hito[10];
}
}
}
229:デフォルトの名無しさん
08/06/21 18:19:30
[1] 授業単元: ドイツ言語入門
[2] 問題文:次に打ち込まれた文字列に対して適切な文章をそれぞれ返すプログラムをハッシュテーブルを用い、ドイツ言語で書きなさい。"Guten tag","Sie du Japaner?","unko"
[3] 環境 家賃三万円のそれなりの環境
[3.1] OS: VISTA
[3.2] コンパイラ名とバージョン:コンパイラとは何ですか?
[3.3] 言語:ドイツ言語
[4] 期限:私の気が向くまで
[5] その他の制限:門限が7時です
230:デフォルトの名無しさん
08/06/21 18:20:17
反応がない見捨てられたようだ
231:デフォルトの名無しさん
08/06/21 18:20:43
ここの住人は冷たい・・・
232:デフォルトの名無しさん
08/06/21 18:21:06
VIPなら一分と待たずにレスが返ってくるのに・・・
233:デフォルトの名無しさん
08/06/21 18:21:37
やはりプログラマーの心は荒んでいるという噂は本当だったんですね
234:デフォルトの名無しさん
08/06/21 18:24:16
もう期限切れか
235:デフォルトの名無しさん
08/06/21 18:53:55
>>227>>228
ありがとうございます
236:デフォルトの名無しさん
08/06/21 20:24:51
>>226
ninzuu = i;
for(i=0;i<ninzuu-1;i++){
for(j=i+1;j<ninzuu;j++){
if(hito[i].score < hito[j].score){
ts = hito[i];
hito[i] = hito[j];
hito[j] = ts;
}
}
}
for(i=0;i<ninzuu;i++)
237:デフォルトの名無しさん
08/06/21 20:45:40
>>194
どうも素晴らしいソースありがとうございました。
余裕があればでいいので、削除と編集も作っていただきたいです。
238:デフォルトの名無しさん
08/06/21 20:48:49
>>236さんもありがとうございます
239:デフォルトの名無しさん
08/06/21 21:08:43
>>90お願いします。
240:デフォルトの名無しさん
08/06/21 21:11:21
>>237 >>187 >>79 削除を追加
URLリンク(kansai2channeler.hp.infoseek.co.jp)
241:デフォルトの名無しさん
08/06/21 21:14:20
>>240
ありがとうございました。ちなみにここって、自分の作ったソースのどこが悪いかって見てもらえるんですか?
242:デフォルトの名無しさん
08/06/21 21:16:42
>>241
さすがにそりゃスレ違い、となる。質問なら↓で
C言語なら俺に聞け(入門篇) Part 30
スレリンク(tech板)
243: ◆qQYVX6rY3I
08/06/21 21:54:51
すいません>>176です。
提出期限を完全に間違えてました。。
6/23
夕方6です。
いずれにせよ焦ってます;;
どなたか目を通してくれるとありがたいです;;
244:デフォルトの名無しさん
08/06/21 22:05:08
せ、せめてリアクションがほしかった・・・orz
245:デフォルトの名無しさん
08/06/21 22:15:28
何を問うているのかわかりずらいな、>>176
246:デフォルトの名無しさん
08/06/21 22:18:33
>>237 >>187 >>79 編集、削除を追加
URLリンク(kansai2channeler.hp.infoseek.co.jp)
247:デフォルトの名無しさん
08/06/21 22:25:04
>>241 >>237 >>187 >>79
URLリンク(kansai2channeler.hp.infoseek.co.jp)
248:デフォルトの名無しさん
08/06/21 22:31:49
【本日VIP投票日ですた】●第3回全板人気トナメ●【反省会会場】
スレリンク(news4vip板)
vipを助けてくれ!!!!!!!!
負けそうだ!!!!!
シベリア超特急に負けそうなんだ!!!!!!!!!!!
俺 達 の v i p が 無 く な る ! ! ! ! ! ! ! !
ニュー速の本部を荒らして俺らに投票してくれ!!!!!!!!
P C ケ ー タ イ 友 達 家 族 を フ ル 動 員 し て
コードをとってきてくれ!!!!!!!!!!!!!
ここで勝ったら二回戦もよろしく!!!!!!!!!!!
つまんねー話してないで協力するんだ!!!!!!!!!!!!!!!!
2chが変わってしまうぞ!!!!!!!!!!!!!!
助けてくれ!!!!!!!!!!!
まだまだ俺たちはおわれねぇ!!!!!!!!!!!!!!!!!!
249:デフォルトの名無しさん
08/06/21 22:43:04
>>176
>>243
問題文が悪い、そんなんじゃ誰も手を付けない
結局、逆ポーランド記法と通常の計算を数値入力でやれって事か?
やって欲しいなら、具体例をだしなよ
250: ◆qQYVX6rY3I
08/06/22 01:29:43
>>176です。
すいません。
問題文をそのまま載せたんですが
要点をまとめるべきでした。
つまり>>249さんの通りです。
例としては
入力数式
25.18,#,+,8,*,6,7,10,+,*,-,8,/
に対する答えは -5
となっています。
251:デフォルトの名無しさん
08/06/22 01:39:03
>>250
余計わからん
25.18,#,+,8,*,6,7,10,+,*,-,8,/
が-5になる流れを書いてくれ
252:デフォルトの名無しさん
08/06/22 02:15:19
まあ、この調子じゃ期限内に>>176が行なわれる事はないだろう
ヒントに3つの数字を3桁の数値に変換する関数とかあるのに、いきなり 25.18 とか…
本人が問題を理解してないか、問題文以外に課題の仕様があるのを正確に伝えて無いかがオチかと
253:デフォルトの名無しさん
08/06/22 02:17:19
まあ恐らく25,18の書き間違えだろう
それならば-5になる
254:デフォルトの名無しさん
08/06/22 02:51:54
25,18
だとしても逆ポーランド記法なら-6ではあるまいか…
255:デフォルトの名無しさん
08/06/22 02:53:28
スマン、桁落ちさせるのか、四捨五入だと思ってた…
256:デフォルトの名無しさん
08/06/22 03:23:52
”書き間違え”は”書き間違い”の書き間違えだろう
257:デフォルトの名無しさん
08/06/22 05:54:21
どなたか>>64をお願いします!
258:デフォルトの名無しさん
08/06/22 06:36:18
25,18,#,+,8,*,6,7,10,+,*,-,8,/
25
25,18
25,18,#
25,-18
25,-18,+
7
7,8,*
56
56,6
56,6,7
56,6,7,10
56,6,7,10,+
56,6,17
56,6,17,*
56,102
56,102,-
-46,8
-46,8,/
-5.75
こんな感じになった
259:デフォルトの名無しさん
08/06/22 07:11:13
>>176
URLリンク(kansai2channeler.hp.infoseek.co.jp)
260:デフォルトの名無しさん
08/06/22 11:53:48
>>148
そういう発言をしてるあなたはどこにお住まいの方ですか?
あなたの出した課題が載ってたとか?
261:デフォルトの名無しさん
08/06/22 12:23:24
気にすんなよ
最悪バレても単位が出ないだけだろ
もっとどうどうとしろ
262:デフォルトの名無しさん
08/06/22 13:39:55
1.授業単元:分岐演算テーブル作成
2.問題文:URLリンク(www-2ch.net:8080)
3.環境:C言語がコンパイル環境できるならどれでも可
4.期限: できるだけ早く
5.その他
他の分岐演算テーブルは解けたんですが、
最後がどうしても解けません・・・・数学に自信のある方お願いしますorz
※例題とかそういった説明補足に関してはreadme.txtを参照ください。
263:デフォルトの名無しさん
08/06/22 14:09:39
>>247
お願いした通り作って下さってありがとうございました。
質問なんですが16行目のtypedefってなんの処理なんですか?
何せまだC初めて3ヶ月しか経ってなくて…。
264:デフォルトの名無しさん
08/06/22 14:15:46
>>263
URLリンク(www.google.co.jp)
265:デフォルトの名無しさん
08/06/22 15:02:09
だ、誰か>>144を頼みます><
266:デフォルトの名無しさん
08/06/22 15:07:56
> ・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください
267:179
08/06/22 15:09:28
とりあえず騎士巡歴のソースを見つけたのですが、
これに時間計算量の評価回数と実行時間を
どういうやって出力させればいいか全く解りません。
どなたか・・・よろしくお願いします・・・
URLリンク(kansai2channeler.hp.infoseek.co.jp)
268:デフォルトの名無しさん
08/06/22 15:43:38
>>64,257
URLリンク(kansai2channeler.hp.infoseek.co.jp)
C99仕様
269:262
08/06/22 15:47:19
int main(void)
{
int i; /* ループカウンタ */
unsigned char chTable[256]; /* テーブル領域 */
/* テーブル初期化 */
for(i = 0; i < 256; i++)
{
/* このような式でdata.binのデータ内容と同じデータを生成させる */
chTable[i] = (unsigned char)((i % 2) ? 255 - (i + 1) / 2 : (i + 1) / 2);
}
return 0;
}
>>262の課題の算出方法に関する縛りですが、
上記ループ内の様な式で算出する事が条件です。
270:デフォルトの名無しさん
08/06/22 16:15:42
>>269
それは、読めば分かるから。余計な茶々はいれないで。
縛りについて、ほかには? S
271:262
08/06/22 16:22:16
>>270
すみません。一応スレ側にも書いておこうかと思って。
他の縛りは特にないです。
272:デフォルトの名無しさん
08/06/22 17:05:42
>>179
5x5, 6x6のそれぞれの解の個数わかる?
あってるのかどうかわからないから
アップできない。
ちなみにまだ課題1だけしか・・・
273:デフォルトの名無しさん
08/06/22 17:17:40
>>262
for(i=0; i<256; i++) chTable[i] = (int)(16-i/8.0) * (int)(16-i/8.0);
274:272
08/06/22 17:23:34
あ、C言語じゃん
C++で作ってしまった
もういいや
275:デフォルトの名無しさん
08/06/22 17:25:37
>>273
見た瞬間、間違ってるかと…
最初の値は0じゃね
276:デフォルトの名無しさん
08/06/22 17:26:52
見た瞬間とか言っていいレベルじゃないから、実行してから口から糞たれろ。
277:デフォルトの名無しさん
08/06/22 17:29:18
>>276
おまいさん、バイナリエディタすら持ってないのか…?
278:デフォルトの名無しさん
08/06/22 17:31:57
256をunsigned char に代入したらどうなると思ってんだよ、このボケが
279:デフォルトの名無しさん
08/06/22 17:33:02
0xFFです
280:デフォルトの名無しさん
08/06/22 17:36:11
(int)(16-0/8.0) * (int)(16-0/8.0)
これが256になるのか?
281:デフォルトの名無しさん
08/06/22 17:39:45
>>280
どうみても0
282:デフォルトの名無しさん
08/06/22 17:40:22
にはならない
283:デフォルトの名無しさん
08/06/22 17:40:31
16 * 16 が256にならないでどうすんだよw
284:270
08/06/22 17:41:55
unsigned char j;
unsigned char k;
for(i = 0; i < 256; i++)
{
if(i==0) {j=33; k=0;}
if(i==128) {j=253; k=1;}
/* このような式でdata.binのデータ内容と同じデータを生成させる */
if(i<128){
chTable[i]=k;
if((i&7)==0) {j-=2; k-=j;}
}
else{
if((i&7)==0) {j+=2; k+=j;}
chTable[i]=k;
}
if((i&15)==0) printf("\n%03X ", i);
printf("%02X ", chTable[i]);
}
for(i = 0; i < 256; i++)
{
(i==0) ? j=33, k=0 : 0;
(i==128) ? j=253, k=1 : 0;
/* このような式でdata.binのデータ内容と同じデータを生成させる */
(i<128) ? ( chTable[i]=k, ((i&7)==0 ? j-=2, k-=j : 0) ) :
( ((i&7)==0 ? j+=2, k+=j : 0), chTable[i]=k ) ;
(i&15)==0 ? printf("\n%03X ", i) : 0;
printf("%02X ", chTable[i]);
}
285:デフォルトの名無しさん
08/06/22 17:45:06
270の登場で、更に盛り上がってまいりましたw
286:デフォルトの名無しさん
08/06/22 17:49:05
(i==0) ? 0 : (int)(16-i/8.0) * (int)(16-i/8.0);
こうだろw
片落ち代入じゃ、同じデータを作っても式があってないって事だろ?
違うのか…
287:デフォルトの名無しさん
08/06/22 17:49:12
盛り上がるもなにも、猿以下のアホが湧いてるだけだろ。
288:デフォルトの名無しさん
08/06/22 17:49:23
[1] 授業単元: 実験
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
単振り子の方程式の近似解をホイン法によって求めるプログラム
ルンゲ・クッタ法のプログラムを資料として、オイラー法のプログラムは完成し、出力の値も問題ありませんでした。
次にホイン法のプログラムを作り、実行したところ、
本来ならば(π/4)cos(x)のグラフと近くなるはずの解の値が途中から一次方程式のようになってしまいます
[3] 環境
[3.1] OS: LinuxまたはWindows
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 6月23日まで
[5] その他の制限:
できれば自分の作ったプログラムの間違っている箇所を修正して作ってくださると助かります。
今回の課題はプログラムリストの提出は求められていないので、多少動作が分かりにくくても問題はないです。
最後に解の値を出力しているのは、そのデータをgnuplotでプロットするからです。
289:デフォルトの名無しさん
08/06/22 17:54:18
280は(int)(16-0/8.0) * (int)(16-0/8.0)がいくつになると思ったのか答えてくれ
290:デフォルトの名無しさん
08/06/22 17:56:02
0x00000100です
291:デフォルトの名無しさん
08/06/22 17:59:31
ID無しのスレでは何事も諸行無常なり
292:デフォルトの名無しさん
08/06/22 18:00:17
-と/の優先順位がわからないって小学生以下だなw
293:デフォルトの名無しさん
08/06/22 18:03:47
顔真っ赤な人がいると聞いて。
294:デフォルトの名無しさん
08/06/22 18:04:10
>>289
0/8.0ってプログラム落ちないか?
295:デフォルトの名無しさん
08/06/22 18:05:43
8.0/0なら落ちます
296:デフォルトの名無しさん
08/06/22 18:07:11
どこまで釣りでどこまで本気かわからないスレだw
297:デフォルトの名無しさん
08/06/22 18:09:21
270が可哀相だよ
合ってるよスゲーよ
298:デフォルトの名無しさん
08/06/22 18:10:09
この流れはwwwwwwwwwww
299:デフォルトの名無しさん
08/06/22 18:12:21
>>294
void main(){0/8.0;}
300:デフォルトの名無しさん
08/06/22 18:37:08
8x8のナイトの旅がなかなか解き終わらない(´・ω・`)
やっぱり総当り厳しいのかな・・・
301:デフォルトの名無しさん
08/06/22 18:37:10
[1] 授業単元:暇潰し
[2] 問題文(含コード&リンク):
平面上にn個の点について、それぞれ他の全ての点に対し2点を結ぶ辺を作り、その重みをユークリッドノルムとして計算し、昇順にソートする。
nは10万以上のため、全ての重みをメモリ上で保持してソートするのは現実的でない。現実の計算機上で高速に計算しソートする方法を示せ
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: g++
[3.3] 言語: C++
[4] 期限: (無期限]
[5] その他の制限: なし
前スレで回答がもらえなかったので再掲載。
302:デフォルトの名無しさん
08/06/22 18:47:54
>>288
h*の位置がおかしくねーか?
h*(fk1[i] + fk2[i])/2だと思うんだが。
303: ◆hN02YkuTxM
08/06/22 18:56:40
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC6.0
[3.3] 言語: C
[4] 期限: 6月22日 13時まで
[5] その他の制限:
本文内にある三箇所の()の中にのみ手を加えて下さい
304:デフォルトの名無しさん
08/06/22 18:57:14
>>301
nが10万程度の場合ならば、主記憶が128GBの計算機を用いれば簡単。
S社の製品の場合、最も廉価なものであれば200万円程度で購入できる。
305:デフォルトの名無しさん
08/06/22 19:06:47
>>301
データをディスクに書き込んで、ディスク上でマージソート
再帰が深くなって断片がメモリに載るサイズになったら、好きなアルゴリズムを使ってメモリ上でソート
306:デフォルトの名無しさん
08/06/22 19:15:08
>>303
URLリンク(kansai2channeler.hp.infoseek.co.jp)
307:デフォルトの名無しさん
08/06/22 19:17:03
どうでもいいことだが
>>301
> 平面上にn個の点について、それぞれ他の全ての点に対し2点を結ぶ辺を作り、その重みをユークリッドノルムとして計算し、昇順にソートする。
# 平面上にn個の点について ~中略~ 昇順にソートする。
なの?
それとも辺をソートするの?><;;
308:デフォルトの名無しさん
08/06/22 19:18:33
>>307
日本語でおk
309: ◆hN02YkuTxM
08/06/22 19:23:42
>>306
ありがとうございました
310:デフォルトの名無しさん
08/06/22 19:36:27
[1] 授業単元:C言語プログラミング
[2] 問題文(含コード&リンク)
10進数の正の整数を入力し、2進数に変換して表示せよ
可能ならば、正の実数も変換できるものを作成せよ
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限:明日まで
よろしくお願いします
311:262
08/06/22 19:43:08
様々な解答ありがとうございます
上記の解答を元に自分なりに色々思考を
凝らしていきたいと思います
本当にありがとうございました
312:デフォルトの名無しさん
08/06/22 19:44:01
>>310
#include <stdio.h>
int main(void)
{
unsigned int n, i = 1 << sizeof(unsigned int) * 8 - 1;
scanf("%d", &n);
while((i&n)==0) i>>=1;
while(i) {
putchar(n & i ? '1' : '0');
i >>= 1;
}
return 0;
}
313:デフォルトの名無しさん
08/06/22 19:47:01
>>281
>>287
>>292
>>293
>>308
314:デフォルトの名無しさん
08/06/22 19:48:07
>>275
>>277
>>280
315:デフォルトの名無しさん
08/06/22 19:55:11
>>288
func(t, x, f) /*f(t, x)を定義*/ double t, x[], f[];{
f[0] = x[1]; f[1] = - (G/L0)*sin(x[0]);
}
を使わず
func(t,x,f,h)double t,x[],f[],h;{
f[0]=x[1]*h;f[1]=-(G/L0)*sin(x[0])*h;
}
として
for ( n = 0; n < n_step; n++ ) {
t[n+1] = T_s + (n+1)*h;
func(t[n], x[n], dfk1,h); /*dfk1=h* f(t[n], x[n])*/
for( i = 0;i < N_var; i++){
y[i] = x[n][i] + dfk1[i]; /*y[i]:中間変数Xn*/
}
func(t[n+1], y, dfk2,h); /*dfk2=h*f(t[n+1], y)=h*f(t[n+1], Xn)*/
for( i = 0; i < N_var; i++){
x[n+1][i] = x[n][i] + (dfk1[i] +dfk2[i])/2;
/*x[n+1] = x[n] + (fk1 + fk2)/2*/
}
}
316:デフォルトの名無しさん
08/06/22 20:09:00
>>310
#include <stdio.h>
void f1(int x) {
int y=x/2;
if(y!=0) f1(y);
printf("%d",x%2);
}
void f2(double x) {
int y;
double z=x*2.0;
y=(int)z;
z=z-(double)y;
printf("%d",y);
if(z!=0.0) f2(z);
}
int main(void) {
int i;
double r;
scanf("%lf",&r);
i=(int)r;
r=r-(double)i;
f1(i); putchar('.'); f2(r);
return 0;
}
317:デフォルトの名無しさん
08/06/22 20:14:52
>>103
微妙ですがありがとうございます
318:デフォルトの名無しさん
08/06/22 20:15:55
何様だw
319:デフォルトの名無しさん
08/06/22 20:19:35
ワロタ
320:デフォルトの名無しさん
08/06/22 20:21:17
>>263
>>247 に不要なゴミコードが残ってた・・・気づいたら消しておいて。
> printf("p : %p \n",p);
データ追加、コピーの辺り。あと、一番最後に free(list); を忘れてた。
>>264 に説明があるけど、コードの中では
struct p_dataの構造をDATA型として、struct node_listの構造をLIST型
として定義し、変数の宣言のときに、わざわざ struct p_data と書かずに
DATA以下適当に変数を宣言できるようになってる。
321:デフォルトの名無しさん
08/06/22 20:21:32
>微妙ですがありがとうございます
微妙ですが
微妙ですが
微妙ですが
微妙ですが
微妙ですが
微妙ですが
微妙ですが
322:デフォルトの名無しさん
08/06/22 20:23:08
>>103
> 俺のプレイ
> もうこれ以上は減らせないw
そうかそうか、何回も何回もやりまくってやりまくってぇ~
323:デフォルトの名無しさん
08/06/22 20:24:12
>>312>>316
ありがとうございます
>>演算子(?)は初見なんでぐぐってきます
324:hoge ◆ZdPTx91qxk
08/06/22 20:36:18
>>312
URLリンク(kansai2channeler.hp.infoseek.co.jp)
まぁもう回答でてるっぽいけどな
325:デフォルトの名無しさん
08/06/22 20:39:45
ありがとうございます!!!!
微妙ですが
326:デフォルトの名無しさん
08/06/22 20:41:11
微妙ですが
が、今後のスタンダードかなるほど
327:デフォルトの名無しさん
08/06/22 20:41:39
このスレで笑ったのは初めてかもしれない
328:デフォルトの名無しさん
08/06/22 20:49:02
>>317
最近の人間はプログラムの意識が高いんだな…
構造体習って無いから使うな、簡単なコードで、人間と同等以上のAIプログラムを作れって…
と、作った本人が言って見るテスト
キミの周りの学生が、余裕でその課題をこなしてるなら
キミは今居る場所に居つづける事を考え直した方が良いかもよw
329:デフォルトの名無しさん
08/06/22 20:51:48
揚げ足取りがミイラ取りになってる件
330:デフォルトの名無しさん
08/06/22 20:57:17
微妙ですが私も揚げ足取りになってしまうかもしれません ><;
331:デフォルトの名無しさん
08/06/22 21:05:18
[1] 授業単元: Cプログラミング実習
[2] 問題文(含コード&リンク)--------------------
int型の数値データの内部表現を2進数で表示する。
実行に当たっては次のデータを入力して確認せよ。
[1]0
[2]1
[3]-1
[4]32767
[5]-32768
実行例↓
入力データ:-1
内部表現:1111111111111111
入力データ:32767
内部表現:0111111111111111
-----------------------------------------------
[3] 環境
[3.1] OS: (Windows)
[3.2] コンパイラ名とバージョン: (visual studio 2005 )
[3.3] 言語: (C言語)
[4] 期限:25日まで
[5] その他の制限: (まだ大してC言語は習ってないので簡単な関数でお願いします)
332:デフォルトの名無しさん
08/06/22 21:11:35
>>331
なんか、前スレにマイナスにも対応しているものがあった・・・
ちと探してくる
333:デフォルトの名無しさん
08/06/22 21:14:37
>>332
わざわざすいません<(_ _*)>
334:デフォルトの名無しさん
08/06/22 21:20:35
>>331
int型は16bitでいいの?
335:デフォルトの名無しさん
08/06/22 21:25:17
>>331
URLリンク(kansai2channeler.hp.infoseek.co.jp)
336:デフォルトの名無しさん
08/06/22 21:29:04
>>331
#include <stdlib.h>
#include <stdio.h>
void main(int argc,char* argv[])
{
int _in = atoi(argv[1]);
int i;
for(i = 0;i < 32;i++)
{
printf("%d",(_in & (0x80000000>>i) )?1:0);
}
printf("\n");
}
数値は引数で入力、エラーチェックはしてない
337:デフォルトの名無しさん
08/06/22 21:33:54
>>331
#include<stdio.h>
int main( void ){
int i,n;
printf("入力データ:");
scanf("%d",&n);
printf(" 内部表現:");
for(i=0;i<16;++i){
if(n & 1<<15-i) printf("1");
else printf("0");
}
return 0;
}
338:デフォルトの名無しさん
08/06/22 21:34:00
微妙だな
339:デフォルトの名無しさん
08/06/22 21:40:10
いや、絶妙だ
340:デフォルトの名無しさん
08/06/22 21:42:20
>>334
VS2005でWinが対象だから32bitじゃない?
341:デフォルトの名無しさん
08/06/22 21:42:51
絶妙ですがありがとうございます
342:デフォルトの名無しさん
08/06/22 21:45:06
まっ、待ってたもう、麻呂の16進数まで対応したクソースを拝むでおじゃるよ
もう少し待ってたもう
343:デフォルトの名無しさん
08/06/22 21:51:37
>>340
実行例が16桁だから…
344:デフォルトの名無しさん
08/06/22 21:52:05
int i,n;
int bit=sizeof(int)*8;
//nをキーボードから入力
for(i=bit-1; i>=0; i--)
printf("%d", n>>i&1);
345:デフォルトの名無しさん
08/06/22 21:52:46
>>343
それは確かに気になった…。
346:331
08/06/22 22:02:29
テキストの問題なんですけど、何ビットとか書いてないんですよ・・・
多分16ビットでOKだと思います。