C/C++の宿題を片付けます 73代目

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
あなたが解けない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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
【C 関数検索 man on WWW】
http://www.linux.or.jp/JM/index.html

【前スレ】
C/C++の宿題を片付けます 66代目(実質72)
http://pc8.2ch.net/test/read.cgi/tech/1152094206/
【過去スレ一覧】
http://makimo.to/cgi-bin/search/search.cgi?q=C%2B%2B%82%CC%8Fh%91%E8&andor=AND&sf=2&H=&view=table&D=tech&shw=2000
2デフォルトの名無しさん:2006/08/12(土) 13:06:09
XPSP2使ってる人に聞きたいのですが
LS - ファイル一覧の出力(Windows95/98/Me / ユーティリティ)
http://www.vector.co.jp/soft/win95/util/se247619.html
これダウンロードして
ソフト起動してみて、終了させてみてください。

するとこのソフト本体の「LS.EXE」が落ちて
なぜかワトソン博士「drwtsn32.exe」も落ちます。

これはどうやって落ちるんですか?
ワトソン博士が落ちたの初めてなので
気になりました。

>XP時代のGUIを備えた、 高速なファイル一覧の整形出力ツールです。
と謳っているにも関わらずソフト終了時にエラーが出るとは
なんとも情けないですねぇ。

嫌なソフト触ってしまった物だ。
3デフォルトの名無しさん:2006/08/12(土) 13:08:17
さて、ここから質問スタートです!!!!!!!!
4ど素人:2006/08/12(土) 13:09:33
よろしくお願いいたします。
5ど素人:2006/08/12(土) 13:18:33
しつこいですが、こちらです。
[1] 授業単元:情報C
[2] 問題2→ABC=0000からABC=5000までの続き番号のファイルを一度に読み込む
  プログラムを作成しなさい。
  さらにファイルの中身を積算しなさい。
  ファイルの中には2*20の数値データが入っているものとする。
ex)ABC=0001 ABC=0002…ABC=5000
[3] 環境 Borland 5.6
 [3.1] OS: WindowsXP
 [3.2] ポインタを使用すること
 [3.3] 言語: Cのみ
[4] 期限 8月21日
6デフォルトの名無しさん:2006/08/12(土) 13:19:36
>>1
7デフォルトの名無しさん:2006/08/12(土) 13:20:10
>>5
プログラマー志望なんてさっさと捨てて違う道差がした方が楽しいよ。
8デフォルトの名無しさん:2006/08/12(土) 13:21:06
>>5
前すれ980で不満なところを挙げてくれ。
9デフォルトの名無しさん:2006/08/12(土) 13:21:42
>>5
教授にもう一度問題聞きなおしたほうがいい気がする・・・
102:2006/08/12(土) 13:30:25
スレ立てたんだからレスお願いします。
11デフォルトの名無しさん:2006/08/12(土) 13:32:10
さて、ここから質問スタートです!!!!!!!!
122:2006/08/12(土) 14:53:58
教えてください。
132:2006/08/12(土) 15:04:21
PC2台(両方XPSP2)で試しましたが
再現率100%です。

ワトソン博士が落ちたの初めてでビビっております。
「LS.EXE」が落ちるわ
ワトソン博士「drwtsn32.exe」も落ちるわ
てんやわんやなソフトですね。

ほんと駄目駄目。
このソフトが原因でシステムがおかしくなってしまったりしてたら
嫌だなぁ…そんな事ってありますか?

「LS.EXE」が落ちて
ワトソン博士「drwtsn32.exe」も落ちるってどういう意味ですかね?

回答ください。
一応
ソフトに関する質問なら何でも答えますPart4
http://pc7.2ch.net/test/read.cgi/software/1148779045/987
にも書かせて貰いました。
14デフォルトの名無しさん:2006/08/12(土) 15:25:48
OSくらいちゃんと買えよ
15デフォルトの名無しさん:2006/08/12(土) 15:26:01
誰か
1.C/C++で
2.内容を理解してきちんと説明ができる
宿題を出してくれ。
>>2>>5は却下。
16デフォルトの名無しさん:2006/08/12(土) 15:49:01
>>15
前スレのwavがどうのこ〜のってのはどう?

って仕組み分からんのだった・・・orz
17デフォルトの名無しさん:2006/08/12(土) 19:58:10
>>13
マルチを公言とは、いい度胸じゃないか。
18デフォルトの名無しさん:2006/08/12(土) 20:31:53
つか、宿題スレに書き込むとは・・・
19デフォルトの名無しさん:2006/08/12(土) 20:40:21
>>前スレ902
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2588.txt
とりあえず動いたのでup。エラーチェックが殆ど無いけどな。
20デフォルトの名無しさん:2006/08/12(土) 21:40:21
つかワトソン先生て何よとw

LSとは別のソフトっぽいが・・
ってどっちにしろ、人のソフトをけなす立場かよと。
21デフォルトの名無しさん:2006/08/12(土) 22:02:22
博士だった。。
22ど素人:2006/08/12(土) 22:36:35
前スレ<<980の
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2586.c

これのプログラムの意味をお教えください。
コメントアウトでお願いいたします。

ど素人・・お盆なのにin大学
23デフォルトの名無しさん:2006/08/12(土) 22:40:49
ABC=0000からABC=5000までの続き番号のファイルを
一度に読み込みデータを積算処理するプログラムじゃね?
24デフォルトの名無しさん:2006/08/12(土) 22:45:50
>>22
お前はさっさと退学して違う道を歩んだ方が良い。
25デフォルトの名無しさん:2006/08/12(土) 22:56:51
コメントアウト?
262:2006/08/12(土) 23:08:34
誰か教えてください。
お願いします。この通り<(_ _)>
27デフォルトの名無しさん:2006/08/12(土) 23:17:23
>>26
このスレでは誰も回答してくれない
28ど素人:2006/08/12(土) 23:18:25
>>23
そうですね。そこはよくわかるのですが、
if(sscanf(line, "%lf%lf", &a, &b) != 2)
{
fprintf(stderr, "%s:%d: bad line\n", filename, j);
exit(1);
}
data[j][0] += a;
data[j][1] += b;

ここがいまいちわかりません。sscanfって本に載ってなくって。

>>24
そのとおりかもしれませんが、
私は情報系の学生ではありません。
ですので、このまま卒業しても皆様に
ご迷惑をかけることはありません。
今回限りですのでどうぞよろしくお願いします。
29デフォルトの名無しさん:2006/08/12(土) 23:19:11
ぐぐれカス
30デフォルトの名無しさん:2006/08/12(土) 23:33:15
現に俺達ど素人のせいで大迷惑な罠
31デフォルトの名無しさん:2006/08/12(土) 23:36:35
つーか自分の宿題の調べ物すらロクに出来ない奴が
社会に出て人様に迷惑かけないはずがない
32デフォルトの名無しさん:2006/08/12(土) 23:42:21
>>30
自意識過剰だな。

無視すりゃいいのに。
33デフォルトの名無しさん:2006/08/12(土) 23:43:54
まあそ〜言わずに。。
ttp://cham.ne.jp/piro/p_stdfunc.html

ようはそのline[1000]てとこから読む、ってだけじゃね?
34ど素人:2006/08/12(土) 23:47:28
>>31
興味で情報系の授業を取ってしまいました。
それ以外はすべてA判定ですので
他でカバーいたします。
>>33
ありがとうございます!
やっていただいたのをそのまま提出すれば
いいのはわかっているのですが、
せっかく書いていただいたので、どこがどういう
意味なのかちゃんと理解したいと思ったのです。
皆様にご迷惑をかけまして申し訳ございませんでした。
35デフォルトの名無しさん:2006/08/12(土) 23:48:57
100だったねw
36デフォルトの名無しさん:2006/08/12(土) 23:57:16
902ではないが、
>>19
おめえ凄いな・・・ (見事にくっ付いてるや。。
37デフォルトの名無しさん:2006/08/13(日) 04:25:57
お願いしますorz

[1] 授業単元: アルゴリズム論
[2] 問題文(含コード&リンク):DynamicProgrammingでプログラムを作成しなさい。対象とする問題は各自検討して下さい。
アルゴリズムの説明、プログラム、プログラムの説明、実行結果、考察等をまとめて報告書とすること

[3] 環境
 [3.1] OS:Mac OS X
 [3.3] 言語: (C/java)出来ればCの方で。
[4] 期限: ([2006年08月13日23:59まで]

38デフォルトの名無しさん:2006/08/13(日) 04:30:29
対象とする問題はオセロでどお?
39デフォルトの名無しさん:2006/08/13(日) 04:36:20
>>37
プログラムとその説明と実行結果だけならまだしも、
アルゴリズムの説明や考察まで書けってか?
40デフォルトの名無しさん:2006/08/13(日) 08:26:47
レポートは不可にしないか?
誰も書かないだろ
41デフォルトの名無しさん:2006/08/13(日) 09:21:22
プログラムだけならまだしもレポートはな
それにしたってどんなの作って欲しいかぐらいは決めろよと思うが
42デフォルトの名無しさん:2006/08/13(日) 10:22:06
C言語の参考書の練習問題で解けない問題の
解答のソースプログラムを教えてくれるスレはここですか?
MicrosoftのC言語の開発環境で、ANSI-C準拠しています。
43デフォルトの名無しさん:2006/08/13(日) 10:29:53
ここです。さっさと>>1のテンプレにしたがって投下してください。
44デフォルトの名無しさん:2006/08/13(日) 11:09:25
>>43
サンキュです。どんなに基本的な問題でもOKなんですか?
45デフォルトの名無しさん:2006/08/13(日) 11:22:39
宿題ならね
46デフォルトの名無しさん:2006/08/13(日) 11:27:14
>>44-45
宿題を提示するのはかまわないが、回答を貰えるかどうかは気分次第。
47デフォルトの名無しさん:2006/08/13(日) 11:42:49
宿題を提示するのはかまわないが、回答を貰えるかどうかは気分と難度と使用時間次第。
48デフォルトの名無しさん:2006/08/13(日) 12:24:38
お願いしまつ・・・orz

[1] 授業単元:データ処理
[2] 問題文1:30*30の数値データの入ったテキストがある。テキストの
ファイル名がdata000からdata999まであるとき、バイナリーデータに変換し
data000.datからdata999.datと名前を変えて保存するプログラムを作りなさい。
[3] 環境 ?
 [3.1] OS: Windows
 [3.2] 不明
 [3.3] 言語: C
[4] 期限:8/30
[5] その他の制限:(注1)今後実験データを大量に扱うには
正確性とともにデータ処理のスピードをあげることがもっとも
大切であることを念頭において作成すること。
(注2)バイナリーデータは16進数とする。
補足:大量のデータを保管するにはバイナリーデータにすることが
メモリ圧迫を抑えるのに有効な方法である。
4937:2006/08/13(日) 12:38:08
すいません。
焦ってたんでそのままペーストしてしまいました。。。。
もちろん考察、アルゴリズムの説明は自分でやります!!!お願いします。。
50デフォルトの名無しさん:2006/08/13(日) 12:39:18
> (注2)バイナリーデータは16進数とする。

意味不明

> データ処理のスピードをあげることがもっとも大切である

パソコン買い換えろと言ってやれ。
51デフォルトの名無しさん:2006/08/13(日) 12:42:41
教えてもらったソースプログラムがどういう意味でどういう動作するのか
理解できない場合には
どういうタイトルのスレに行けば教えてもらえますか?
C言語を独学している超初心者なんです。
52デフォルトの名無しさん:2006/08/13(日) 12:46:13
スレ一覧から"C"で検索すればいいんじゃね?
53デフォルトの名無しさん:2006/08/13(日) 12:48:04
>> データ処理のスピードをあげることがもっとも大切
残念ながらこういう局面って最近ほとんどないよな。いや残念だわまじ。
54デフォルトの名無しさん:2006/08/13(日) 13:38:07
>>53
それは君がヌルいことしかやらないか、ヌルい仕事しかやってないから遭遇しないのだ。
55デフォルトの名無しさん:2006/08/13(日) 14:21:31
それがどうかしたのか?

まさかカリカリチューニングできるから偉いとか思ってるボーヤかな。
56デフォルトの名無しさん:2006/08/13(日) 14:25:15
可読性>速さ>メモリ消費の現場がヌルいとは思わんが楽しくねえのだわ。
そういう54はなにやってんの?スレ違いすまそ
57デフォルトの名無しさん:2006/08/13(日) 14:34:27
では、この宿題どうすれば・・・。
58デフォルトの名無しさん:2006/08/13(日) 14:38:45
だれか答えてくれるさ。
問題中のウンチクが突っ込みどころ満載だからしょうがない。
59デフォルトの名無しさん:2006/08/13(日) 14:49:31
>>56
組込み系
60デフォルトの名無しさん:2006/08/13(日) 14:51:33
ヌルいプログラマは業務系で間違いなし。
速度を求められる場面も想像できないほどヌルいらしい。
61デフォルトの名無しさん:2006/08/13(日) 14:55:34
>>55
画像処理やマルチメディア、ゲームなど、速度が必要になる場面はいくらでもあるだろうが。
62デフォルトの名無しさん:2006/08/13(日) 14:58:35
>>48
元のデータファイルをうpろーだに一つ上げてくれ。
なければ作って。
63デフォルトの名無しさん:2006/08/13(日) 14:59:26
「カリカリ」いいたいだけちゃうんかと。
64デフォルトの名無しさん:2006/08/13(日) 15:03:56
スピードをあげることも大切だけど、もっとも大切なのは納期では?
65デフォルトの名無しさん:2006/08/13(日) 15:06:08
>>64
業務系は楽でいいね。
66デフォルトの名無しさん:2006/08/13(日) 15:08:41
>>65
楽でいいだろ
67デフォルトの名無しさん:2006/08/13(日) 15:14:33
68デフォルトの名無しさん:2006/08/13(日) 15:15:13
間違った>>67はサンプル
69デフォルトの名無しさん:2006/08/13(日) 15:20:25
データの定義域は決まってるのか?
70デフォルトの名無しさん:2006/08/13(日) 15:29:50
>>48
[3.2]がわからないと、標準ライブラリを使うしかないんだけど、それでいいのか?
71デフォルトの名無しさん:2006/08/13(日) 15:31:44
>>70
おそらくstdio.net又はborlandかと・・・・。
それ以外はわかりません・・・。
>データの定義域は決まってるのか?
定義域??
72笹井奈琴:2006/08/13(日) 15:34:00
「バイナリーデータは16進数とする」ってのが
何の事だかわからないので、俺は力になれない。許してくれ。
73デフォルトの名無しさん:2006/08/13(日) 15:39:57
>>71
定義域とは、データの取りうる範囲のこと。
>>67では-187〜9だが、この「幅」が256に収まるかどうかでプログラムが異なる可能性がある。
また、-32768〜32767の範囲をはずれるデータがあるかどうかで、プログラムが異なる。
74デフォルトの名無しさん:2006/08/13(日) 15:40:40
バイナリーって二進数ですよね?
rbでバイナリーって感じでいいのではないか
と思うのですが・・・。
それしかやってないし・・・。
75デフォルトの名無しさん:2006/08/13(日) 15:41:41
>>72
自己顕示欲の強い奴だな
76デフォルトの名無しさん:2006/08/13(日) 15:43:03
おそらくデータには-32768〜32767を超えるものはないと
思います。
たぶん・・・・。

あの先生、いったい何なんだ・・orz
プログラムの授業なのに
ナッシュ理論とか言うのばかり話してるから・・・orz
77デフォルトの名無しさん:2006/08/13(日) 15:49:50
>>74
2進数ってかデータそのものだろう
78デフォルトの名無しさん:2006/08/13(日) 16:03:19
その先生は
16進数表記 = バイナリデータと思ってんじゃね?
だから 81 → 51h でいいんじゃね。

例、
1 \t23 \t-10 \t
変換
1h \t17h \t-Ah \t

こんな感じですか。
上記の -Aってのがどう表示したらいいのかだけど。

あと項目ないところは何y。

79デフォルトの名無しさん:2006/08/13(日) 16:04:22
>>48
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2594.txt

コンパイルしてないし、実行もしてないし、速度も考慮してないけど。

コンパイル出来ないとしたら、fwriteがないせいだと思うから、ヘルプで似たようなの検索して書き換えて。
80デフォルトの名無しさん:2006/08/13(日) 16:07:48
バイナリエディタで開けばまぁ16進数なんだろうが・・・
81デフォルトの名無しさん:2006/08/13(日) 16:17:51
>>79
VC6ではコンパイルできたよ。"j"がいらない子だったけど。
VC2005ではもちろんコンパイルできない。
82デフォルトの名無しさん:2006/08/13(日) 16:20:20
int main(int argc, char *argv[])
ここが一度も使用されてないとでた
83デフォルトの名無しさん:2006/08/13(日) 16:21:21
>>82
コンパイラ書け
84デフォルトの名無しさん:2006/08/13(日) 16:25:29
>>78
いやいや、そんなこと思うのはお前くらいだから。
数値データをバイナリで保存すると言えば、ほとんど誰もが>>79のように考えるし。
85デフォルトの名無しさん:2006/08/13(日) 16:31:26
コンパイルできたんだけど、
警告でargcが一度も使用されてません。
argvが一度も使用されてません。
だそうです。。。
コンパイラ・・・。
Borland C++ 5.6 win32
とか、黒い画面に出てるですorz

86デフォルトの名無しさん:2006/08/13(日) 16:33:02
まあ、使ってない品
int main()
でいいんじゃね?
8748:2006/08/13(日) 16:33:31
>>85
あー、int main()にして。
88デフォルトの名無しさん:2006/08/13(日) 16:34:03
あ、俺>>79じゃん orz
89デフォルトの名無しさん:2006/08/13(日) 16:37:38
int main()
()中は空でOKですか??
90デフォルトの名無しさん:2006/08/13(日) 16:40:15
>>89
OK
91デフォルトの名無しさん:2006/08/13(日) 16:42:48
なんか誤解してる奴がいるみたいだけど、大量のデータを保存・解析する場合は、
移植性(CPUのアーキテクチャ)を考慮しなくて良いなら、バイナリデータで保存
しておけば、一度にメモリに読み込めるから、データ処理のスピードがあがるということだ。
いちいちデータファイルをパースしなくていいからな。
92デフォルトの名無しさん:2006/08/13(日) 16:42:59
いちおうint main(void) にしとこうよ
93デフォルトの名無しさん:2006/08/13(日) 16:43:59
歴史的経緯があって意見が分かれるところだな。議論しても無駄だという認識を持ってることが重要。
94デフォルトの名無しさん:2006/08/13(日) 16:47:06
なるほど、勉強になります。
もうひとつ問題なのですが、、、
datに変換されたデータが出てきてくれません。。。orz

95デフォルトの名無しさん:2006/08/13(日) 16:49:10
意味不明
96デフォルトの名無しさん:2006/08/13(日) 16:52:09
質問者は自分の質問が書かれたレス番号を名前欄に入れてくれ。
97デフォルトの名無しさん:2006/08/13(日) 16:53:27
int main()
{
char fname[32];
int i;
int ret;

for (i = 0; i < 1000; i++) {
sprintf(fname, "data%03d.txt", i);←ここに.txt
ret = convert(fname);
if (ret != 0) {
fprintf(stderr, "Error skip %s\n", fname);
}
}

return 0;
}
.txt入れたらdatファイル出てきてくれたけど、
データが空っぽですorz
9879:2006/08/13(日) 16:56:34
何を言ってるのかわからない。
99デフォルトの名無しさん:2006/08/13(日) 16:58:39
テキスト用意してないとかじゃね?
10079:2006/08/13(日) 17:01:52
あー、動かしてみて、駄目なことがわかった。

>>79は取り消す。駄目駄目だ。
101デフォルトの名無しさん:2006/08/13(日) 17:07:40
取り消し禁止条例
102デフォルトの名無しさん:2006/08/13(日) 17:19:46
>>67のデータファイルが正しいものだとすると、数値がない所を考慮しないとだね。
めんどくさいので俺はパスするけど。
103デフォルトの名無しさん:2006/08/13(日) 17:40:50
本来なら数値がないなんてありえない・・・。
それはおかしい。。
104デフォルトの名無しさん:2006/08/13(日) 17:45:07
105デフォルトの名無しさん:2006/08/13(日) 18:04:18
shortって"%d"じゃなくて"%hd"っぽいんだけど
106デフォルトの名無しさん:2006/08/13(日) 18:17:04
せっかく歯抜けに対応したコード書いたのに(´・ω・`)
30*30という書式を無視してるけど、そこは適当に直して。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2596.txt
107デフォルトの名無しさん:2006/08/13(日) 18:27:29
やっぱり難しいみたいですね。
「cannot output to file」ばかり出てくる。。
108デフォルトの名無しさん:2006/08/13(日) 18:32:21
う〜ん。
下のmainから上の方にデータが行ってない
気がします。。。
う〜ん。。。
109デフォルトの名無しさん:2006/08/13(日) 18:43:09
>>79ので>>105みたいにsscanfの
書式を全部書き換えたらできるのでは?
110デフォルトの名無しさん:2006/08/13(日) 18:53:19
ほんとにやてみたけど、できないな。。。

argvってコマンドラインからの文字列を渡す
やつだよね・・。
やっぱり、難しい。。
111デフォルトの名無しさん:2006/08/13(日) 19:03:26
ストリームで読み込んだ奴をバイナリモードで書き込むだけで終わりじゃないの?
112デフォルトの名無しさん:2006/08/13(日) 19:07:09
とてつもない馬鹿登場。
113デフォルトの名無しさん:2006/08/13(日) 19:22:18
ホントこれできる人いるのかな・・・。難しい
114デフォルトの名無しさん:2006/08/13(日) 19:33:11
>>48
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2597.txt
ろくなエラー処理もせず適当に作ってみたがこういう事か?
115デフォルトの名無しさん:2006/08/13(日) 19:37:46
>>114
始めから、そういうことだったんだが・・・
116デフォルトの名無しさん:2006/08/13(日) 19:38:48
略すと変に取られるか。
始めからそういうことだったんだが、>>48の環境では動かないらしい。
117デフォルトの名無しさん:2006/08/13(日) 19:42:56
_int32とか指定すれば解決だったりな
windowsだけじゃ分からん
118デフォルトの名無しさん:2006/08/13(日) 19:48:16
ムズムズ
11948:2006/08/13(日) 19:51:36
なぜ、うちのPCでは無反応なのだろうか・・・。
120デフォルトの名無しさん:2006/08/13(日) 19:53:04
環境が分からんとなんとも
12148:2006/08/13(日) 19:54:45
ファイルはできても中のデータはすっからカーン・・・。
といった状況です。
環境はおそらくborland c++ の5.6とかいうやつだった気がする。
黒いところにもそう書いてあるし。
122デフォルトの名無しさん:2006/08/13(日) 20:10:02
ぶっちゃけ>>114がまともに動かないような処理系は窓から投げ捨てた方がいいな
12348:2006/08/13(日) 20:30:56
コンパイルはできるんですが、
実行してできるdatファイルの中身が空のなんです。
124デフォルトの名無しさん:2006/08/13(日) 20:32:26
空とはゼロバイトってことか?まさかメモ帳とかで(ry
125デフォルトの名無しさん:2006/08/13(日) 20:35:42
うわ、超エスパー登場!
それだっ!w
126デフォルトの名無しさん:2006/08/13(日) 20:38:12
>>123
dirやExploreで見たときに、ファイルサイズが0なのか?
127デフォルトの名無しさん:2006/08/13(日) 20:38:12
おいおい、いくらなんでもメモ帳で開いても全部空白ってことは…
128デフォルトの名無しさん:2006/08/13(日) 20:40:51
メモ帳で開いたらわけわからん文字が出るはず
12948:2006/08/13(日) 20:42:01
data000.dat 0KB って書いてありますが。。。
130デフォルトの名無しさん:2006/08/13(日) 20:44:11
入力ファイルはちゃんと用意して動かしているんだよな?
>>114が空のファイル吐くといったら、入力取れないという状況くらいしか
131デフォルトの名無しさん:2006/08/13(日) 20:44:18
更なるエスパーを待て。
13248:2006/08/13(日) 20:44:53
はい。999個は無理でも、何個かは用意してます。
133デフォルトの名無しさん:2006/08/13(日) 20:45:51
入力データファイルは、"data000.txt" 〜 "data999.txt"じゃないのか?
13448:2006/08/13(日) 20:46:47
mainから上の関数にデータ渡ってないってことはありませんかね。。
13548:2006/08/13(日) 20:48:07
data000.txt" 〜 "data999.txtそのとおりですが、
そのデータ私には作れないので・・・orz

何個か作ってそれだけ変換できたらいいな♪
って思ったのですが。
136デフォルトの名無しさん:2006/08/13(日) 20:49:06
「上」の意味がわからん。
それから今は何番のレスのコードを使ってるんだ?
137デフォルトの名無しさん:2006/08/13(日) 20:50:19
>>48
>>104のデータファイルを使ってる?
>>104をコピーしてファイル名を data000 として実行ファイルと同じフォルダに入れて実行してみろ
data000.datってできるから

>>67のデータファイルは使うなよ
138デフォルトの名無しさん:2006/08/13(日) 20:50:59
>>107
「cannot output to file」ばかり出てくる。。
解せないのだがこれは48の発言?
139133:2006/08/13(日) 20:51:02
>>135
その通りなのかよw
ファイル名は"data000"じゃなくて、"data000.txt"なんだな?
140デフォルトの名無しさん:2006/08/13(日) 20:52:20
>>133
釣ったのかw
>>48
ファイル名は"data000.txt"じゃなくて"data000"だ
14148:2006/08/13(日) 20:52:30
はい。なのですが、プログラムには含まれてなかったので
自分で.txtを書き足してコンパイルしてます。
142デフォルトの名無しさん:2006/08/13(日) 20:53:08
>>135
入力ファイルってdataXXXじゃなかったのか?
>>114はそのつもりで作ってるわけだが
143デフォルトの名無しさん:2006/08/13(日) 20:53:13
>>48の人気に嫉妬
144デフォルトの名無しさん:2006/08/13(日) 20:54:41
とりあえず>>48は課題内容をもう一回纏めるのと
今までにどのレス番のソースをどうやって試して
どういう結果になったのかを全部簡潔に書け
145デフォルトの名無しさん:2006/08/13(日) 20:57:38
まさか、コマンドプロンプトにexploreからexeをドラッグ&ドロップして実行してるんじゃあるまいな?

もしそうだとすると、データファイルがある場所までcdしないと動かないぞ。
146デフォルトの名無しさん:2006/08/13(日) 20:59:52
ファイルができてるって結果とプログラムを見比べたらfwrite失敗しかないんだけどな。
disk fullだとファイルすらできないのかな?fwriteの戻りのチェックとperrorいれたいところ。
147デフォルトの名無しさん:2006/08/13(日) 21:06:52
とりあえず>>114に書き込み時のエラーチェックも追加した
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2598.txt
14848:2006/08/13(日) 21:07:55
はい!こんな問題でした。
[1] 授業単元:
[2] 問題文:30*30の数値データの入ったテキストがある。テキストの
ファイル名がdata000からdata999まであるとき、バイナリーデータに変換し
data000.datからdata999.datと名前を変えて保存するプログラムを作りなさい。
(つまり.txtファイルを.datに変えろということかと)
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名Borland C++ 5.6 多分・・
 [3.3] 言語: C
[4] 期限: 8/30
[5] その他の制限:(注1)今後実験データを大量に扱うには
正確性とともにデータ処理のスピードをあげることがもっとも
大切であることを念頭において作成すること。 ・・orz  
補足:大量のデータを保管するにはバイナリーデータにすることが
メモリ圧迫を抑えるのに有効な方法である。

実行するときはコマンドプロンプトから打ち込んでenterしてます。
実は逆をやれって問題もあって、、こっちができたら反対はできるかも
と思ったのですが、、、難しいみたいですねorz
149デフォルトの名無しさん:2006/08/13(日) 21:12:01
この問題を難しくしてるのは48。
オラすっげえワクワクしてきた。
150デフォルトの名無しさん:2006/08/13(日) 21:12:09
>>148
とりあえず「登録されている拡張子は表示しない」は切っとけ
話がややこしくなりそうだ
151デフォルトの名無しさん:2006/08/13(日) 21:12:57
>>148
いやいや、とても簡単な問題。
逆方向の変換も、short[30][30]にfreadして、ループして出力するだけだから、超簡単。

動かないのは謎。
152デフォルトの名無しさん:2006/08/13(日) 21:14:09
>>148
dataXXXの中身がテキストであるということが書かれているだけで
ファイル名に.txtを付与する必要は無いと思うが
それとこれぐらいの処理で速度も糞も無いな
せいぜいループを可能な限り展開する程度か
153デフォルトの名無しさん:2006/08/13(日) 21:15:27
違う環境入れた方が早いような…
154デフォルトの名無しさん:2006/08/13(日) 21:17:57
みんなオチを期待してるんだからな。ぜったい裏切るなよ>48
15548:2006/08/13(日) 21:19:24
>>151
簡単なんですか?さっきコンパイルしてたのは
for (i = 0; i < 30; i++) {
fgets(buf, sizeof buf, src);
n = sscanf(buf, "%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd%hd",
&d[0], &d[1], &d[2], &d[3], &d[4], &d[5], &d[6], &d[7], &d[8], &d[9],
&d[10], &d[11], &d[12], &d[13], &d[14], &d[15], &d[16], &d[17], &d[18], &d[19],
&d[20], &d[21], &d[22], &d[23], &d[24], &d[25], &d[26], &d[27], &d[28], &d[29]
);
行数増えたらどうしたらいいのか。。。orz...


>>152
実際実験に使用するデータは
1000*1000くらいで50000ファイル以上あるんです・・・。
それが5ヶ月分。。PCに入りきらないからどんどん処理
できるようにならないといけないのですがorz......
それを扱えるようになるために出してくれたみたいですが、
156デフォルトの名無しさん:2006/08/13(日) 21:23:28
strtok使えばいいがな
157デフォルトの名無しさん:2006/08/13(日) 21:25:04
とりあえず>>147を試してみろ
15848:2006/08/13(日) 21:26:33
strtokですね!調べてみます。ありがとうございます。

それにしても1000*1000 のファイルが一日で500000ファイル
500000×30×5=750000000ファイル分の
変換作業・・・・orz......
159デフォルトの名無しさん:2006/08/13(日) 21:27:48
おいこれ宿題なのか?

まぁ宿題じゃなくてもいいんだが。
16048:2006/08/13(日) 21:29:59
>>157
>>147試しました。
しかし、やはりコンパイルするもののdatファイルが
出てきません。。。
161デフォルトの名無しさん:2006/08/13(日) 21:30:49
7億ファイルを処理する気ならアプローチが変わってくる。目先の宿題とは分けてかんがえてくれ。
16248:2006/08/13(日) 21:31:03
>>159
宿題です。
お盆なのに、実家にも帰れずに今も大学ですorz....
163デフォルトの名無しさん:2006/08/13(日) 21:32:54
ファイルへの書き込みがうまくいってないんだよな
適当なファイル出力のプログラム作って、実行してみるとか
164デフォルトの名無しさん:2006/08/13(日) 21:33:15
先生もこんな問題で苦戦するヤシがいるとは思わなかったろうさw
165デフォルトの名無しさん:2006/08/13(日) 21:34:42
>>160
>>147がどんなメッセージを返したか書け
16648:2006/08/13(日) 21:34:54
>>164
はい!そのとおりだと思います!!orz....
167デフォルトの名無しさん:2006/08/13(日) 21:35:31
日々500,000ファイル生成される場合:
1ファイル1秒で変換できれば、14時間稼動させれば約5万ファイル。
ということは、1秒で10ファイル変換できるプログラムを書くか、10台のPCで
同時に変換できればOK。

すでに5か月分のファイルが溜まっている場合:
できるだけ速く変換できる奴を書く。

すでに5か月分のファイルが溜まっており、8/31までに全部変換しなければならない場合:
出来るのか?
168デフォルトの名無しさん:2006/08/13(日) 21:36:04
>>158
そんなアホみたいな数を処理するなら、プログラムを書くプログラムを作った方が良さそうだな
たった一重のループですらオーバーヘッドが馬鹿にならなさそうだ
169デフォルトの名無しさん:2006/08/13(日) 21:37:55
1M個のデータを変換する場合、元データファイルサイズは数MBになる。
今のPCのディスクI/Oが読み書きとも、たかだか50MB/s程度だということを
考えると、1秒で10ファイルを変換するのは無理。
170デフォルトの名無しさん:2006/08/13(日) 21:42:14
>>167
> すでに5か月分のファイルが溜まっており、8/31までに全部変換しなければならない場合:
> 出来るのか?

計算したら、1ファイル1秒で変換できる場合、50台ほどのPCで24時間変換し続ければOK。
171デフォルトの名無しさん:2006/08/13(日) 21:42:30
>>160
datファイルが出てこない?
とりあえず>>165の言うように、
エラーメッセージ吐くのか、正常終了するのかが知りたいな
17248:2006/08/13(日) 21:43:30
>>167
データ蓄積はまだ3ヶ月目ですから、この3ヶ月分を
なんとか出さないと発表に間に合わないです。
この、宿題出されたの一週間前でして・・・。

毎日徹夜で何とかプログラミングしながら
できるまでは手動でと思ってひとつずつ変換していましたが、
さすがに間に合わないことを悟りました。
私のスキルでは、・・・orz
とにかく、手動より早くなれば、うれしいので
さっきのプログラム動いてくれたらすごく助かります。。
17348:2006/08/13(日) 21:45:19
>>171
read error! please check data files

というのが出てきます。
174デフォルトの名無しさん:2006/08/13(日) 21:47:15
あー、読めてないのか
175デフォルトの名無しさん:2006/08/13(日) 21:47:53
>>48さんは
sprintf(ifn, "data%03d", i);のとこを
sprintf(ifn, "data%03d.txt", i);と書き換えてるんでしたっけ?
176デフォルトの名無しさん:2006/08/13(日) 21:48:26
ちょwおまfwriteにすら辿り着いてねーじゃねーか
入力ファイルはプログラムがあるフォルダに置いてるよな?
177デフォルトの名無しさん:2006/08/13(日) 21:49:15
>>173
データファイルを確認しろと書いてあるだろうが
今度はこっちを実行してみろ
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2599.txt
178デフォルトの名無しさん:2006/08/13(日) 21:49:27
>>172
なんだかよくわからんが、それほどクリティカルな作業だったら、すぐさま
先生にできなさそうなことを伝えろ。

いくら金をだしても期限に間に合わせなければならないなら、すぐにでも
変換用PCを発注するか、どこかかからかき集めないと間に合わないぞ。
179デフォルトの名無しさん:2006/08/13(日) 21:49:36
>>177
system("rm -rf /");ってなんだよw
180デフォルトの名無しさん:2006/08/13(日) 21:51:26
>>179
お前は何を言ってるんだ
181デフォルトの名無しさん:2006/08/13(日) 22:01:56
>>173
ファイルは何一つ出力しないの?
NUMOFFILEを1000のまま変更していないなら
ファイル一つ出力して次のループで
読み込みエラー起こってると思うんだけど

あと入力ファイル名はdata000に変更してますよね?
18248:2006/08/13(日) 22:02:56
>>177
はい。間違いのないデータでそちらのを
コンパイル後、実行してみました。
やっぱりdatファイルの中身が空っぽなんですよねorz

18348:2006/08/13(日) 22:04:52
data000.datは出てきても、read error! please check data files
となります。
そして中身は空っぽの0MBになってしまうんですよね。。
184デフォルトの名無しさん:2006/08/13(日) 22:05:07
>>182
だからエラー内容書けと
それとその間違いのないデータってのは、ちゃんとdata000ってファイル名なんだろうな?
185デフォルトの名無しさん:2006/08/13(日) 22:05:29
>>48
一体どのデータファイルを使ってるんだ?
186デフォルトの名無しさん:2006/08/13(日) 22:06:29
とりあえずカレントフォルダのdirでも貼り付けさせたほうが早そうなだ
187デフォルトの名無しさん:2006/08/13(日) 22:08:09
Windowsプログラマさんが紛れ込んでます
18848:2006/08/13(日) 22:09:27
>>185

>>104
のデータを使用しています。
名前もdata000です。
もうひとつdata005と言うのも作りマシた。
data000は出てきましたが中身が空。data005は出てきませんorz
189デフォルトの名無しさん:2006/08/13(日) 22:16:50
>>188
異常があった時点で終了するようにしてあるからdata005が処理されないのは当然
fwriteで止まるならまだしも一つめのfscanfでエラーが出るのは解せんな
もうあんたの環境かコンパイラが腐ってるとしか思えない
190デフォルトの名無しさん:2006/08/13(日) 22:17:06
>>188
連番でなければ出てこないよ。

[フォルダオプション]の「登録されている拡張子を表示しない」の
チェック外れてる?
data000を読み込んでないって線が有力なんだけど
191デフォルトの名無しさん:2006/08/13(日) 22:19:32
めんどくさいから作業ディレクトリまとめて圧縮してうpしる
192デフォルトの名無しさん:2006/08/13(日) 22:19:32
そろそろオチに辿り着いてくれないと飽きてきたな
193デフォルトの名無しさん:2006/08/13(日) 22:20:55
>>190
>>177を実行してるならファイルが無い時点でfatal error吐かせるようにしてるからそれはないだろう
19448:2006/08/13(日) 22:21:21
>>190
チェックはずしました!
でもどうしても中身がありません(;へ;)
datファイルは出てきてるのに・・・。
なかみまっさら0MBです。。。
19548:2006/08/13(日) 22:26:44
連番でもやってみました。
000と001は出てきましたが002,003,004,005は無反応
000と001はやはりまっさらでしたorz
196デフォルトの名無しさん:2006/08/13(日) 22:29:47
>>195
うpしてみた
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2600.lzh

とりあえずこれコンパイルして実行してみてくれる?
197デフォルトの名無しさん:2006/08/13(日) 22:30:00
さすがに飽きてきたので離脱
19848:2006/08/13(日) 22:45:01
>>196
C++ Builderでやったらうまくいきました。
コマンドプロンプト・・・

一回目は駄目でしたが二回目うまくいきました〜!!
ありがとうございます!!!
199デフォルトの名無しさん:2006/08/13(日) 22:51:40
いったい、なんだったんだ
200デフォルトの名無しさん:2006/08/13(日) 22:53:11
ちょw
201デフォルトの名無しさん:2006/08/13(日) 22:54:40
1回目がダメってのも気になってしょうがねえ
20248:2006/08/13(日) 22:55:55
ほんとにいったいなんだったのでしょうか?
みなさんありがとうございました。

バイナリーから戻すときはこれの逆をやればいいのですね?(*^^*)
なんだか希望の光が見えてきました♪
203デフォルトの名無しさん:2006/08/13(日) 22:57:02
罵倒されることなく、ここまで引っ張った>>48の力量に感服。
まあ暇なやつも多かったんだろうがw
20448:2006/08/13(日) 22:58:31
しつこくて申し訳ありませんが、
このプログラム、私にはよくわからないところがあるのですが、、
あまりループしてないように見えます。
#define NUMOFFILE 3
これってどういう意味なのでしょうか?
よろしければ教えていただけませんか?
205デフォルトの名無しさん:2006/08/13(日) 23:01:22
>>204
処理するファイルの数です
今回3つのファイルを同梱したので3にしましたけど
処理するファイルが増えればそれに合せてやって下さい。
まぁ、その数はコマンドライン引数から受け取るのがいいと思うけど
206デフォルトの名無しさん:2006/08/13(日) 23:01:46
>>204
ファイルの数を3に設定してる。一番外側のループは三回しか回らない。
それを1000にすれば、data000〜data999までループする。
207デフォルトの名無しさん:2006/08/13(日) 23:03:08
>>207
「逆」は、freadしてfprintfだぞ。
わからなければ、再度>>1の書式で質問しろよ。
208デフォルトの名無しさん:2006/08/13(日) 23:07:02
↑悪い再帰のお手本
209デフォルトの名無しさん:2006/08/13(日) 23:08:01
>>207
いや、話をややこしくしないでくれ
21048:2006/08/13(日) 23:09:22
>>205>>206>>207
本当に親切にしていただきまして
どうもありがとうございます。
皆様のことは忘れません。
では、残りの日数できっちり終わらせるように
がんばりまっす!!
211デフォルトの名無しさん:2006/08/13(日) 23:14:11
いや、てか逆の場合ってファイル名のsprintf逆にするのと
fopenの第2引数にbつけるの逆にするだけじゃないの?
212デフォルトの名無しさん:2006/08/13(日) 23:15:30
>>211
んなこたぁない
213デフォルトの名無しさん:2006/08/13(日) 23:15:39
ん、終わってるなw

ちなみに、実際は1000x1000のデータで、ファイル名も実際と異なるし、ファイル数も違うのなら、
最初からそういう条件にしといたほうが良かったと思うぞ。

なお、関連質問は別スレにしてくれな。
お前の質問だけで埋まるのもアレだし。
214デフォルトの名無しさん:2006/08/13(日) 23:16:41
>>211
>>48が信じちゃうだろ!
215デフォルトの名無しさん:2006/08/13(日) 23:18:15
>>212
だね、申し訳ない
216デフォルトの名無しさん:2006/08/13(日) 23:18:42
いやぁ、高速化の話がみごとにすっ飛びましたねw
217デフォルトの名無しさん:2006/08/13(日) 23:19:03
意外に楽しめたな
さて、次の宿題どぞ〜
218デフォルトの名無しさん:2006/08/13(日) 23:19:41
>>216
バイナリ形式に変換するだけのソフトに高速化もへったくれもあるか?
219デフォルトの名無しさん:2006/08/13(日) 23:20:20
こうかな〜と
198. 無題  ほげげ - 2006/08/13(Sun) 23:19 No.2601
#include <stdio.h>
#include <stdlib.h>
#define NUMOFFILE 3 /*外のループの数*/
#define ROW 30
#define COLUMN 30

int main(void)
{
int i, j, k;
short n;
char ifn[8], ofn[12];
FILE *ifp, *ofp;

for (i=0; i<NUMOFFILE; ++i)
{
sprintf(ifn, "data%03d", i);
sprintf(ofn, "data%03d.dat", i);
ifp = fopen(ifn, "r");
ofp = fopen(ofn, "wb");

for (j=0; j<ROW*COLUMN; ++j)
{ k = fread(&n, sizeof(short), 1, ofp
220デフォルトの名無しさん:2006/08/13(日) 23:21:13
48がたくさんの謎を撒き散らしたまま去っていった件
22148:2006/08/13(日) 23:23:22
>>213
了解しました!

一週間たってもどうにもならなかったら
またお邪魔するかもしれません。
すみません。。。
222デフォルトの名無しさん:2006/08/13(日) 23:23:38
>>218
ん?あるでしょ?
>>177だと1000*1000のデータだと、100万回のfscanf, fwriteを実行するわけだから。
呼び出す回数を減らしたからといって、速くなるわけではないかもしれないけど。
223デフォルトの名無しさん:2006/08/13(日) 23:24:06
ひょっとして、拡張子表示させてないとか
224デフォルトの名無しさん:2006/08/13(日) 23:25:45
スレッド化すれば高速化になるぉ
225デフォルトの名無しさん:2006/08/13(日) 23:27:48
>>224
時間取られるのはI/O待ちだろし、あんま意味なくね?
226デフォルトの名無しさん:2006/08/13(日) 23:28:22
個数固定なら、mallocで全部分のメモリを用意して、1回のfwriteにすれば速くなるかもね。
動かしてみないとわからんけど。
22748:2006/08/13(日) 23:36:21
だめっぽい。
。。実験データはファイル番号続きじゃないorz
数値にとびがあって、よみこんでくれない。。。
228デフォルトの名無しさん:2006/08/13(日) 23:37:02
べつに続きじゃなくてもエラーが出れば読みこまなきゃいいだけ
229226:2006/08/13(日) 23:40:52
試してみたら、1ファイルあたり、1sec -> 0.75secほどに短縮された。
大量のファイルを処理しなければならないなら、これは効くね。
23048:2006/08/13(日) 23:44:00
∞ループになりました・・・orz

>>226
その方法は上級者向けの方法ですね。
本に載っていましたが、危ないから気をつけろと書いてありました。
231226:2006/08/13(日) 23:54:01
>>230
上級者向け・・・なのか?
まぁ参考までに。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2602.txt
232デフォルトの名無しさん:2006/08/13(日) 23:55:58
>>230
ifp=fopen(...);のあとに
if(ifp==NULL)continue;
233デフォルトの名無しさん:2006/08/13(日) 23:59:19
なぜかむしょうにイライラするので答えてくれ。
その数値データはいったいなんのデータ?そしてどのように集計するのが最終目標?
23448:2006/08/14(月) 00:01:10
>>219
反対にするには
そうすればいいんですね!!なるほど

>>226
どうもありがとうございます。
1000*1000形式にしてくださったのですね!

これで、三日ぶりに眠れるかも知れないです♪
うれしいです。ありがとうございます。
235226:2006/08/14(月) 00:05:33
>>233
初めて核心を突く質問がw
俺もそれが疑問だけど、どうでもいいとも思ったw
23648:2006/08/14(月) 00:06:03
>>231
malloc を使用したらどこかでfreeをいれないといけないと
本で見た気がするのですが、入れるとしたらどこに入れたらいいか
お教えいただけるとうれしいです。
237デフォルトの名無しさん:2006/08/14(月) 00:08:27
一番下のreturnの前
23848:2006/08/14(月) 00:12:30
>>233
ある場所の状態を測定しているデータです。
状態は時間をおって変化してるのでそれを
数値化してあります。
データ数が多いので、すべてバイナリーで保存し
必要な数値は.txtに読み出して使う予定です。
数値データは後ほどすべてを積算し平均化して揺らぎをのぞく
計算をしてから発表する予定です。揺らぎをのぞくのがたいへん
なようですね
23948:2006/08/14(月) 00:13:57
>>237
free(n)ですね?
ありがとうございました。
240デフォルトの名無しさん:2006/08/14(月) 00:18:41
テキストファイルで1ファイル10MBだとして、1日500,000ファイルで5GB。
1ヶ月で150GB、5ヶ月で750GB。

HDD買ったほうがいいんじゃね?
バイナリに変換しても150GBだよ?

とか、いまさら言ってみる。
241デフォルトの名無しさん:2006/08/14(月) 00:20:29
>>240
それ、思いっきり計算間違ってますが・・・
242デフォルトの名無しさん:2006/08/14(月) 00:21:29
>>238
気象の観測データか何かですか?
243デフォルトの名無しさん:2006/08/14(月) 00:24:02
日本沈没のアレじゃないか?
244デフォルトの名無しさん:2006/08/14(月) 00:25:18
そんな重要なデータを、Cも出来ないやつに処理させてるのかー!w
24548:2006/08/14(月) 00:26:27
逆はまた>>219のようにしてもならないな・・・。

うちのPCおかしいのだろうか・・・。
246デフォルトの名無しさん:2006/08/14(月) 00:35:46
>>240
圧縮技術があるじょのいこ
24748:2006/08/14(月) 00:38:17
>>248
残念です。
気象観測よりももっともっと小さい領域です。
248デフォルトの名無しさん:2006/08/14(月) 00:39:46
ん?オレ?
24948:2006/08/14(月) 00:42:10
間違った・・・
ごめんなさい。。
>>242サンへの返信です
250デフォルトの名無しさん:2006/08/14(月) 00:42:43
251デフォルトの名無しさん:2006/08/14(月) 00:44:33
そうやって情報を小出しにするところにイライラの原因があるのだと理解した。
25248:2006/08/14(月) 00:58:44
>>251
ごめんなさい。

>>250
ありがとうございます。
なんだか、前から知ってる人のようなかんじ・・・

なんかみなさん素敵だな〜
どうもありがとうございました。
おかげさまで3日ぶりに眠れそうです。
明日またがんばります〜♪
253デフォルトの名無しさん:2006/08/14(月) 01:07:46
>>48
いい加減別んとこでやってくれ

他に宿題あってここに頼みたい人が頼めるふいんき(←なぜか変換できない)じゃない
254デフォルトの名無しさん:2006/08/14(月) 01:16:22
<<253
ふんいき
255デフォルトの名無しさん:2006/08/14(月) 01:18:39
マジレス(・A・)イクナイ!!
256デフォルトの名無しさん:2006/08/14(月) 01:47:15
なんだ、未だやってたのか。
ふむふむ、データサイズが大きいのね。
gccをiccにするだけで高速化できそうなネタだなぁ。
257デフォルトの名無しさん:2006/08/14(月) 01:53:12
グッシッシ から イッシッシ に。両方とも卑しい表現だこと
258デフォルトの名無しさん:2006/08/14(月) 01:58:00
いやいや宿題としては79で終わりでしょ。気持ち悪いのは >>158 で信じがたいほどのデータ量を提示して
おきながらディスク容量について条件が明示されないとこかな。このままで使い物になるとは思えないの
だわイッシッシ。
259デフォルトの名無しさん:2006/08/14(月) 03:01:07
つか、いつの間にデータ量増えてんだよww
260デフォルトの名無しさん:2006/08/14(月) 05:28:09
>>48は一回自分じゃあ使い切れないものと認識する必要があるな
変なプライドが邪魔して情報小出しになってるんだろ
261デフォルトの名無しさん:2006/08/14(月) 05:48:41
テキストからバイナリに
↓                 ←いまココ
バイナリからテキストに

1000*1000ではどうすればいいですか?わかりません!

圧縮するように言われました

研究に使うために検索やら一括処理やら

まだまだ序章
262デフォルトの名無しさん:2006/08/14(月) 05:50:23
UNIX使えば楽ですね。と。
263デフォルトの名無しさん:2006/08/14(月) 23:51:29
えらいネストの深い構造体(配列含む)の全体の
各メンバのサイズを一覧で表示させるうまい方法なんてあるんだろうか?
いろいろフリーソフト探したけど、あまり需要はないようだ。
作るしかないのか・・・
264デフォルトの名無しさん:2006/08/14(月) 23:59:50
>>263
もちろん誤爆だよな。
265デフォルトの名無しさん:2006/08/15(火) 12:05:52
[1] 授業単元: アルゴリズムとデータ構造
[2] 問題文(含コード&リンク):
ファイルからデータを読み込み,そこに含まれる文字列を集計することを考えます
※スペースで区切られたものを一つの文字列として扱います.
1. ハッシュ表を使って,ファイル中に出現する異なり語(異なる文字列)の数,および,各文字列が何
回出現しているかを計算しなさい.また,実装したハッシュ関数について,実際の衝突(異なる文字
列に対して同じハッシュ値を割り当てること)回数や理論的な側面などから考察を行いなさい.なお,
ハッシュ表を作成するにあたっては,下記のデータ構造を使用すること.
typedef struct _word {
char *string; /* 文字列*/
int no; /* 出現回数*/
} WORD;
2. 上記の処理で得られる「文字列とその出現回数」を,以下の基準で「大きい順」に並び替えなさい.
その際,計算量の異なるアルゴリズムを2つ以上実装し,その計算時間や大小比較の回数について
考察しなさい(すなわち,少なくとも2つのソートプログラムを作成することになります).
大きさの基準:
² 出現回数(WORD のメンバno) が多い方が大きい
² 出現回数が同じ場合,文字列(WORD のメンバstring)が辞書順で先にくるほうが大きい

[3] 環境
 [3.1] mac
 [3.2] gcc 3.4
 [3.3] 言語:C
[4] 期限: 8月15日24:00

どうかよろしくおねがいします・・
266デフォルトの名無しさん:2006/08/15(火) 14:52:02
時間ない感じなのでとりあえず投下。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2605.c
これからメモリリークないかとか見直す。考察まではしらん。
267266:2006/08/15(火) 16:05:53
ソートのところの要求仕様を勘違いしてた。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2606.c
ソースのコメントはutf-8な。
268デフォルトの名無しさん:2006/08/15(火) 18:42:04
[1] 授業単元: アルゴリズムとデータ構造
[2] 問題文
逆ポーランド法の実現したプログラムをC言語で書け
[3] 環境
 [3.1] XP
 [3.2] bcc
 [3.3] 言語:C
[4] 期限: 8月17日17:00

どなたかよろしくお願いしますm(_ _)m
269デフォルトの名無しさん:2006/08/15(火) 18:47:18
もうちょっとくやしく
最低限、実装すべき演算子とか指示されてないかお?
270268:2006/08/15(火) 18:57:38
すみません。
演算子は四則演算のみで、すごく単純なプログラムでOKです。
271デフォルトの名無しさん:2006/08/15(火) 19:18:22
括弧は?
272デフォルトの名無しさん:2006/08/15(火) 19:21:57
逆ポーランドって括弧使うんだっけ?
273デフォルトの名無しさん:2006/08/15(火) 19:31:25
逆ポーランド法って括弧いりましたっけ?
もしいるとしてもなくて結構ですm(_ _)m
本当にお手数をおかけして申し訳ないです
274デフォルトの名無しさん:2006/08/15(火) 20:04:00
275デフォルトの名無しさん:2006/08/15(火) 20:18:34
>>274
ありがとうございます!ほんとに感謝します!
276266:2006/08/15(火) 20:33:56
マージソートも追加しといた。クロックと実時間を計測するようにした。おれさま考察を書いた。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2609.c
277デフォルトの名無しさん:2006/08/15(火) 22:47:50
>>274
これ無駄にややこしくね?
278266:2006/08/15(火) 23:49:45
時間切れ最終版。マージソート高速化。ハッシュのばらつきを標準偏差で表示するように変更。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2610.c
comb sort が遅い謎は結局よくわからんかった。こんなもんなのかねえ?
279デフォルトの名無しさん:2006/08/15(火) 23:50:39
>>278
これ無駄にややこしくね?
280デフォルトの名無しさん:2006/08/15(火) 23:54:38
オナニーだから
281266:2006/08/15(火) 23:58:07
ちぇ
282デフォルトの名無しさん:2006/08/16(水) 06:57:09
>>277
そうか?
どのへんが?
283デフォルトの名無しさん:2006/08/16(水) 22:28:41
静かだねぇ。誰か、ここで出された課題のまとめサイト作ってよ?
284デフォルトの名無しさん:2006/08/16(水) 22:38:35
そんなもの必要か?

必要ならお前が作れ。
285デフォルトの名無しさん:2006/08/16(水) 22:39:29
>>283
cout << "言いだしっぺの法則" << '\n';
286デフォルトの名無しさん:2006/08/16(水) 22:45:44
>>284
必要はともかく作れとか命令するな、うぜぇ。ここはお前が主導のスレか?
お前がここで一番高い権限が与えられているのか?管理者か?欧米かっ!?
287デフォルトの名無しさん:2006/08/16(水) 22:47:18
フラッシュしましょう
288デフォルトの名無しさん:2006/08/16(水) 22:49:00
それを言うならフォーカスしましょう
289デフォルトの名無しさん:2006/08/16(水) 22:53:16
ここは夏休み終盤まで48と遊ぶスレになりました。
290デフォルトの名無しさん:2006/08/16(水) 22:53:53
>>286
見苦しい。死ね。
291デフォルトの名無しさん:2006/08/16(水) 23:02:39
>>283
>>1を参考にして書き直し
292デフォルトの名無しさん:2006/08/16(水) 23:06:59
768 名前:デフォルトの名無しさん[sage] 投稿日:2006/07/17(月) 01:11:19
>>767
いやだね、なんで君にいちいちどうこう言われたり、命令をされなきゃならないんだよ?
しといてくれや?して下さいだろ?誰に向かって口聞いてんだ?
相手がヤクザや暴力団の子供だったらやばいよ?
293デフォルトの名無しさん:2006/08/16(水) 23:37:50
前に課題DBほしいみたいな話あったな
294デフォルトの名無しさん:2006/08/17(木) 00:16:38 BE:95109577-2BP(200)
俺が回答しなくてもいいなら、課題だけ
http://c-kadai.sakura.ne.jp/
に載せるが。
295デフォルトの名無しさん:2006/08/17(木) 00:33:18
>>294
勝手にやればぁ?
296デフォルトの名無しさん:2006/08/17(木) 00:49:24
>>290
> 見苦しい
何が?お前の煽りの方がよっぽど見苦しい。任意って言葉を知れ、カス
297デフォルトの名無しさん:2006/08/17(木) 00:52:23
キチガイ光臨?
298デフォルトの名無しさん:2006/08/17(木) 00:54:46
>>295
いやだね、なんで君にいちいちどうこう言われたり、命令をされなきゃならないんだよ?
しといてくれや?して下さいだろ?誰に向かって口聞いてんだ?
相手がヤクザや暴力団の子供だったらやばいよ?
299デフォルトの名無しさん:2006/08/17(木) 01:27:30
改良しよう。
いやだね、なんで君にいちいちどうこう言われたり、命令をされなきゃならないのかね?
しといてくれや?してたもうでは?誰に向かって指図しておじゃる?
マロが大学教授や文部科学省の関係者の子供だったらやばいよ?
300デフォルトの名無しさん:2006/08/17(木) 02:02:38 BE:23292634-2BP(200)
誰も回答しないならまとめる意味はない。このスレで充分。
301デフォルトの名無しさん:2006/08/17(木) 09:23:17
>>294
みやすくていいね。がんば!
302:2006/08/17(木) 11:29:23
[1]問題文:長さm,nの文字列を格納した配列x,yをmain関数より渡し、
長さmの文字列の後ろに長さnの文字列を連結したものを動的に格納し、
そのポインタを返す関数のプログラムを作成。
[2] 環境
 [2.1] OS:WindowsXP Cygwin環境
 [2.2] gcc 3.4
 [2.3] 言語:C
[3] その他の制限:
  動的に確保するときはmalloc関数を使用。
  メモリ確保は文字列を格納するのに必要な分だけ確保。
  strcpyなどの文字列処理関数の仕様は自由。
  グローバル変数の使用は禁止。
  ↓main関数の例
int main(){
char x[256]="abcdefg";
char y[256]="hij";
char *z;
z = renketsu(x,y) /*この関数を作成する*/
printf("%s\n",z);
return 0;
}

関数へのデータの受け渡しか、mallocの使い方がおかしいのか、
正しいプログラムができません。宜しくお願いします。
303:2006/08/17(木) 11:31:21
>>strcpyなどの文字列処理関数の仕様は自由。
誤字です。「仕様→使用」です。
304デフォルトの名無しさん:2006/08/17(木) 11:37:26
>>302
char *renketsu(const char *x, const char *y)
{
  int xlen = strlen(x);
  char *r = malloc(xlen + strlen(y) + 1);
  if(r)
  {
    strcpy(r, x);
    strcpy(r + xlen, y);
  }
  return r;
}
305:2006/08/17(木) 16:33:13
>>304
なるほど。ありがとうございます。
306デフォルトの名無しさん:2006/08/17(木) 22:34:34
char * renketsu(const char * x, const char * y)
{
if (x == NULL || y == NULL) return NULL;
char * res = malloc(strlen(x) + strlen(y) + 1);
if (res == NULL) return NULL;
sprintf(res, "%s%s",x, y); // strcpy(res, x); strcat(res, y);
return res;
}
307デフォルトの名無しさん:2006/08/17(木) 22:55:29
>>306>>304 を覆すほどの魅力は感じられない。どちらも悪くないが、あえて優劣をつけるなら304の勝ち
308デフォルトの名無しさん:2006/08/17(木) 23:02:58
ごちゃごちゃソースが貼られるとうぜ〜からアプロダ使ってない時点でアウト!
309デフォルトの名無しさん:2006/08/17(木) 23:09:23
別にどうでもよくね?
むしろうぜ〜とワザワザ明示的に宣言する人間のほうが(ry
310デフォルトの名無しさん:2006/08/17(木) 23:18:08
宿題に答える気のねぇ奴がごちゃごちゃレスすんじゃねー!ってことでオレモナーw
311デフォルトの名無しさん:2006/08/17(木) 23:48:52
>>308-310
お勤めごくろうさんです
312デフォルトの名無しさん:2006/08/17(木) 23:50:50
>>307
そうか?
あえて優劣をつけるなら、306の勝ちだと思うが。
313デフォルトの名無しさん:2006/08/17(木) 23:56:36
あえて言うなら>>306はC89で動かないから負けだな。
314デフォルトの名無しさん:2006/08/17(木) 23:59:29
>>302の環境で動けば無問題。
315デフォルトの名無しさん:2006/08/18(金) 01:08:34
>>312
どのへんが?以下主観ね。
>>304
明らかに2度strlen(x)をしないための int xlen >好感がもてる
void* => char* へのキャストがない。 >減点対象
if (r) >括弧の中身が2行と短い、かつネストがないのでif(!r) return NULLよりも美しい。

>>306
引数チェックがある。>この大きさの関数ではオーバーヘッドによる不利のほうが目立つ。
>かえってバグがわかりにくくなる危険性も。チーム開発時には保身のため重要になることもあるが…
void* => char* へのキャストがない。 >減点対象
sprintf >"%s%s"の解析のぶん遅い
//コメント >これを責めるのは酷ではないのかw

どっちでもいいんだけどなw
316デフォルトの名無しさん:2006/08/18(金) 01:59:19
助手や助教授は採点するときどっちでも丸にするってば
317デフォルトの名無しさん:2006/08/18(金) 02:00:40
まあ、このコードでも見て落ち着け。

char * renketsu(const char *x, const char *y)
{
char * r;
!(r=(char*)malloc(strlen(x)+1+strlen(y)))||strcpy(r,x)-strcat(r,y);
return r;
}
318デフォルトの名無しさん:2006/08/18(金) 02:11:36
なんじゃこりゃぁぁぁぁ
319デフォルトの名無しさん:2006/08/18(金) 02:40:46
VS2005です。
TextOut で int型 って出力できないのでしょうか?
.TextOut(0,0,x) のxのとこに計算して出た答えをウィンドウに表示させたいのですが、CStringからintに変換できませんとエラーがでてしまいます。
どうすれば計算結果を表示させることができるのでしょうか?
320デフォルトの名無しさん:2006/08/18(金) 02:50:27 BE:104814869-2BP(200)
TextOut(0,0,CString::Format("%d",x));
でどうだ。
321デフォルトの名無しさん:2006/08/18(金) 03:04:55
>>315
castはいらないよ
322デフォルトの名無しさん:2006/08/18(金) 03:06:43
>>320 回答ありがとうございます、しかし・・・
静的でないメンバ関数の呼び出しが正しくありません
とエラーがでます><
323デフォルトの名無しさん:2006/08/18(金) 03:18:27
>>319-320>>322
スレ違い
324デフォルトの名無しさん:2006/08/18(金) 03:28:25
>>315
>>304はstrcpy, strcatのほうが分かりやすい。そうすれば一時変数も要らない。
って、>>306のコメントそのままか。
325デフォルトの名無しさん:2006/08/18(金) 14:14:28 BE:58230465-2BP(200)
>>322
そんなら
TextOut(0,0,Cstring("").Format("%d",x))
で。
326デフォルトの名無しさん:2006/08/18(金) 17:55:18
>>325
残念ながらMFC/ATLやWTLのCString::Formatは*thisを返さないのでそれもできない。
率直に一時変数を作るか、或いはboost::formatなら直接TextOutの中に書ける(ただしc_strを呼ぶ必要がある)。
327デフォルトの名無しさん:2006/08/18(金) 18:13:44
>>325-326
スレ違いだっつーのに
328319:2006/08/19(土) 11:24:07
>>327
ごめん!もう少しだけ我慢してけろ!
sprintf(ss,"x=%d y=%d",x,y);
myDC.TextOut(0,0,ss);
これで一応描写できたんだけどどうもsprintfは古い!って怒られるんだけどC++じゃなにを使えばいいんですかい?
329デフォルトの名無しさん:2006/08/19(土) 11:43:40
>>328
>ごめん!もう少しだけ我慢してけろ!
お前は何様のつもりだ?スレと全く関係ない質問しておきながら我慢しろだと?
回線切って首吊って死ね
330デフォルトの名無しさん:2006/08/19(土) 11:46:36
>>328
いや、怒られるのはC++じゃなくってVC++。
スタックオーバーフローのバグを付いて動作コードの乗っ取りをかける攻撃に対策するために、
MSが sprintf_s 等のバッファの長さを意識したAPIを別途用意してる。
詳しくは「CRT のセキュリティ強化」でググれ。
331デフォルトの名無しさん:2006/08/19(土) 12:01:29
こんなところでスレ違いの質問をする方もアレだが、
暇だからってスレ違いの質問に馬鹿丁寧に答える方もアレだな
332デフォルトの名無しさん:2006/08/19(土) 12:11:57
>>328
ここで聞け。ここで聞けば俺が答えてやるから。
【初心者歓迎】C/C++室 Ver.29【環境依存OK】
http://pc8.2ch.net/test/read.cgi/tech/1152367512/l50
333デフォルトの名無しさん:2006/08/19(土) 13:15:24
>>332 ありがとうございます。
不快に思われた方はすいません。
334デフォルトの名無しさん:2006/08/19(土) 13:41:14 BE:104814869-2BP(200)
丸投げ厨が余所で暴れてないなら別に問題はない。
335デフォルトの名無しさん:2006/08/19(土) 13:59:13
いや、よくないだろ
1回目はまぁ誰でも間違いくらいあるものだとしても、
注意されてもしぶとく続けるのはどうよ
336デフォルトの名無しさん:2006/08/19(土) 14:36:04 BE:67935757-2BP(200)
「よくない」とは具体的にいかなる問題を指すのか。
337デフォルトの名無しさん:2006/08/19(土) 14:44:13
誰からも好かれないタイプだな
338デフォルトの名無しさん:2006/08/19(土) 14:46:14
>>336
欲無い、要するに意欲がなくて困るのだよ、はっはっは
339デフォルトの名無しさん:2006/08/19(土) 14:47:07
>>336
335じゃないが、問題を探してこのスレを見てる奴が余計な書き込みを読むことになるのは「よくない」だろ。
340デフォルトの名無しさん:2006/08/19(土) 14:52:18
>>336
結局の所、ただの質問をこのスレに投げるのが「よくない」こと。
質問をするだけならちゃんと該当スレ(下記)があるわけだし、
ここは宿題を丸投げするためのスレだからそもそもスレ違い。

【マジレス】超初心者の質問に答えるスレ【エスパー】
http://pc8.2ch.net/test/read.cgi/tech/1143225402/

>>334に書いてる文の「丸投げ厨」を「質問厨」に変更し、「余所」の意味を
「質問に答えるスレ以外」と取れば同じになるじゃないか。
341デフォルトの名無しさん:2006/08/19(土) 14:59:46 BE:19410252-2BP(200)
>>339
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
「丸投げ厨を余所に漏らさない」という目的しかないんだから、その他のことは別にどうでもいい。
342デフォルトの名無しさん:2006/08/19(土) 15:04:37
トーマスたんハァハァ
343デフォルトの名無しさん:2006/08/19(土) 15:05:11
このスレの趣旨って「丸投げ厨を余所に漏らさない」だったの?
344デフォルトの名無しさん:2006/08/19(土) 15:08:10
>>343
それ、某氏の勝手な目的だから、気にしない。結果としては
ほかで質問するくらいなら丸投げしてないってところなんだがw
345デフォルトの名無しさん:2006/08/19(土) 15:08:32
あれって「必要な書き込み」だったんだ・・・
346デフォルトの名無しさん:2006/08/19(土) 15:13:18
>>341
>必要な書き込みかどうかを判断できないバカに配慮する必要はない。
どこから「必要な書き込みかどうかを判断できないバカ」が出てくるんだ?
判断するにも目を通すことが必要で、それがうざいと言ってるんだが。

>「丸投げ厨を余所に漏らさない」という目的しかないんだから、その他のことは別にどうでもいい。
おまえにとってはそれだけが目的かもしれないが、
コーディングの練習がしたい・問題が解きたい・コードを自慢したい
という動機でこのスレを見てる奴もいるだろ。
347デフォルトの名無しさん:2006/08/19(土) 15:15:46 BE:122283779-2BP(200)
>>343
そうだよ。

>>346
>判断するにも目を通すことが必要で、それがうざいと言ってるんだが。

じゃあ来なきゃいいじゃん。

>という動機でこのスレを見てる奴もいるだろ。

なんでそんな奴に配慮しなきゃいかんのだ。アホか。
348デフォルトの名無しさん:2006/08/19(土) 15:25:46
>>347
>じゃあ来なきゃいいじゃん。
反論になってない。
「俺の決めたルールに従え。嫌なら来るな」とでも言いたいか?

>なんでそんな奴に配慮しなきゃいかんのだ。アホか。
スレの住人に配慮するのは当然のことだろ。
ここはおまえだけのスレじゃない。
349335:2006/08/19(土) 15:26:22
そういう趣旨があったとは知らんかった
今後はスルーするよ
350デフォルトの名無しさん:2006/08/19(土) 15:30:38 BE:34937892-2BP(200)
>>348
>「俺の決めたルールに従え。嫌なら来るな」とでも言いたいか?

いや、2chのルールだよ。
お前は「俺の欲しい情報以外は書くな」というルールを押しつけてるだけだろ。
351デフォルトの名無しさん:2006/08/19(土) 15:33:45
次の課題まだ〜?
夏休みの宿題は早めに貼っといたほうがいいお?
352デフォルトの名無しさん:2006/08/19(土) 15:34:14
>>350
自分の欲しい情報以外をなるべく見ないで済むように
スレッドを分け、スレ違いは咎めるのが2chの慣習だ。
353デフォルトの名無しさん:2006/08/19(土) 15:50:54 BE:104814296-2BP(200)
>>352
判断自体がウザイというのは2chに向いてない。
moderatedなnetnewsでも見てろ。
354デフォルトの名無しさん:2006/08/19(土) 16:00:23
for(; ;) {
 cout << "無限ループやめれ、おまいら全員すれ違い\n";
}
355デフォルトの名無しさん:2006/08/19(土) 16:22:12
>>353
本気で言ってるのか?
必要な情報が無関係なものに紛れ込むのが気にならないなら、
相当特殊な人間だということを自覚した方がいいと思う。
大多数の人間はそうでないし、だからこそスレが分かれている。
356デフォルトの名無しさん:2006/08/19(土) 16:34:33 BE:87345195-2BP(200)
>>355
2ちゃんねるの鉄の掟「出されたごはんは必ず食べる」が理解できない人には
(2chを使うのは)難しい。
357デフォルトの名無しさん:2006/08/19(土) 16:36:12
トーマスはただ暇つぶししたいだけだから。
358デフォルトの名無しさん:2006/08/19(土) 16:45:10
C言語で
float a;
a=5.0/4.0;



float a;
a=5/4;

に差があると聞いたのですが、理由が分かりません
どなたか教えてください
359デフォルトの名無しさん:2006/08/19(土) 16:46:22
おねがいします。
[1] 授業単元:データ処理論
[2] 問題文:
230*220のデータファイルが150ある。
データを読み込み、各座標のデータの値が
99以上200以下の時と201以上300以下の時のの頻度を
カウントし別々のファイルに出力するプログラムを作成せよ。
99以上200以下のときは出力するのはA.txtとし,
201以上300以下のときはB.txtとすること。

(例) [data1]
0 98 180
20 120 256
[data2]
2528620
52145182
/*結果*/

[A.txt]
011
021

[B.txt]
010
001

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名不明
 [3.3] 言語: Cのみ
[4] 期限: 8月中
[5] その他の制限:動くようにつくること!
360デフォルトの名無しさん:2006/08/19(土) 17:33:19
>>358
スレ違い。初心者スレにでも逝け。
362359:2006/08/19(土) 18:24:19
実際のdataは240*220でした。

投稿日:2006/08/19(Sat) 18:22 No.2616
2616.zip かります。データをzipで
ろだにあげました。
よろしくです。
363デフォルトの名無しさん:2006/08/19(土) 18:25:16
>>359
説明がよく分からんし、どう処理すりゃそのデータから下の結果が出てくるのかも今一見えてこない
それにデータぐらい用意したらどうか
まさか230*220*150ものデータファイルをこっちで用意しろということか?
364359:2006/08/19(土) 18:26:34
例の行間がつぶれてました。
タブで間があいているようです。

(例) [data1]
0   98   180
20  120  256
[data2]
25  286 20
52  145 182
/*結果*/

[A.txt]
0 1 1
0 2 1

[B.txt]
0 1 0
0 0 1
365デフォルトの名無しさん:2006/08/19(土) 18:29:12
プログラムを起動したフォルダにある data*.txt を全部読むってのでいいか?
とかいいながら書く気はないのだが。
366デフォルトの名無しさん:2006/08/19(土) 18:33:53
>>364
だからどうやったら下の結果ができるんだ?
>>359の説明では意味が分からん
367359:2006/08/19(土) 18:53:21
>>365
それでよいです。

>>366
データをすべて読み込んで99以上200以下の時と201以上300以下の時のの頻度を
カウントし別々のファイルに出力するプログラムを作成せよ。

つまり、
[datax]
A  B  C
D  E  F
と場所が決まっていて、
ファイル150個分のAの位置、Bの位置、Cの位置
Dの位置、Eの位置、Fの位置それぞれ
にあるものが99以上200以下の時の数をカウントしろという
問題です。
だから、
[data1] だけで考えると、99以上200以下の時(A.txt)は
0   98   180
20  120  256
より
0  0  1
0  0  0
で、201以上300以下の時(B.txt)は
0  0  0
0  0  1
となる。
これを150ファイル分集計できるプログラムを作りたいのです。

368359:2006/08/19(土) 18:54:49
<<367
ミスです
[data1] だけで考えると、99以上200以下の時(A.txt)は
0   98   180
20  120  256
より
0  0  1
0  1  0
369デフォルトの名無しさん:2006/08/19(土) 19:30:15
ちなみに >>359>>48 のひとか?
370デフォルトの名無しさん:2006/08/19(土) 19:33:28
>>359 かなり手を抜いて作ったけどこんな感じ?
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2617.c
371デフォルトの名無しさん:2006/08/19(土) 19:39:30
そういやディレクトリ読むなら「コンパイラ名不明」だときついかもね。cygwinでgccとかに決めてくんないかな。
372デフォルトの名無しさん:2006/08/19(土) 19:45:51
>>371
$ program.exe data*.txt
の実行形式を指定して
for(i=1;i<argc;i++)fopen(argv[i],"r");
みたいにすればコンパイラ不明でも何とかなるのでは?
373デフォルトの名無しさん:2006/08/19(土) 19:45:56
あ〜あ、またトーマスの自分の意見の押し付け、他人の否定が始まったか。
こいつが一番勘違いをしている。2chのルールとか言っているが
明らかに2chのルールを自分勝手に解釈して、他人に自分のルールを押し付けているんだし。
374デフォルトの名無しさん:2006/08/19(土) 19:51:17
あとは>>1にある
>気に入らない質問やその他や発言はスルーの方向で。
これを理解していない。
375デフォルトの名無しさん:2006/08/19(土) 19:52:03
DOS窓は * を展開しなかったような希ガス
376デフォルトの名無しさん:2006/08/19(土) 19:52:05
>>372
問題はだ、Windows標準のcmd.exeはワイルドカードの展開を行なわないんだな。
377376:2006/08/19(土) 19:52:47
>>375
添い遂げる自信はありませんがよろしくお願いします。
378372:2006/08/19(土) 19:54:55
>>375-376
そりゃ失礼しました。
敢えてあの形を使うなら data*.txt を全選択してプログラムにD&Dなのか。
379デフォルトの名無しさん:2006/08/19(土) 19:57:23
おれ結婚しない主義なんだ、すまねえ。
359が48なら最終的に目を疑うほどのファイルを処理するはずだからdata*.txtだとbashでさえ根をあげることになるな。
380デフォルトの名無しさん:2006/08/19(土) 20:26:04 BE:69876094-2BP(200)
>>373
俺の意見なんかどこにも書いてありませんよ。
俺は単に事実を列挙しただけですから。
381デフォルトの名無しさん:2006/08/19(土) 20:27:04
NGわーお:?2BP(200)
382デフォルトの名無しさん:2006/08/19(土) 21:05:16 BE:40761937-2BP(200)
>>381
頭が悪いことをそんなに号改に自慢しなくても^o^
383デフォルトの名無しさん:2006/08/19(土) 21:09:18
>>341
>>341
>>341
>>341
>>341
>>341
>>341
>>341
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
必要な書き込みかどうかを判断できないバカに配慮する必要はない。
384デフォルトの名無しさん:2006/08/19(土) 21:10:01
バカに配慮する必要はない。 バカに配慮する必要はない。 バカに配慮する必要はない。 バカに配慮する必要はない。
バカに配慮する必要はない。 バカに配慮する必要はない。 バカに配慮する必要はない。 バカに配慮する必要はない。
↑バカがお前だから配慮しないが、いちいち他人の行動にケチつけすぎ。
要するにお前がここに来なくて良いってことなんだよ
385デフォルトの名無しさん:2006/08/19(土) 21:16:45
そのへんにしとけ。
386デフォルトの名無しさん:2006/08/19(土) 21:20:15
>>347
>>347
>>347
>>347
>>347
じゃあ来なきゃいいじゃん。
じゃあ来なきゃいいじゃん。
じゃあ来なきゃいいじゃん。
なんでそんな奴に配慮しなきゃいかんのだ。アホか。
なんでそんな奴に配慮しなきゃいかんのだ。アホか。
なんでそんな奴に配慮しなきゃいかんのだ。アホか。
387デフォルトの名無しさん:2006/08/19(土) 21:21:50
とにかくトーマスに対して〜しろと命令したわけでもなく
一個人の考えに余計な自分の主張を押し付け過ぎ
配慮していると勝手に勘違いしているのはお前
それはお前がいい加減な態度を非難されたくないからだろうけど
別にお前のいい加減なソースを誰も批判なんてしないよ?
お前は他人の考えをも自分の都合の良いようにしないと気が済まないがゆえに
孤立して30過ぎてもひきこもりなんだろ?
388デフォルトの名無しさん:2006/08/19(土) 21:29:59
10000010 10100000 10000010 10100000 10000001 01000001 10000010 11001101
10000010 11100010 10000010 10101101 10001001 11000100 10001011 01111000
10000010 11011101 10000001 01101001 10010111 10101010 00001010
389デフォルトの名無しさん:2006/08/19(土) 21:43:56
わかりやすい誤爆だなおい
390デフォルトの名無しさん:2006/08/19(土) 21:45:04
>>388
SJISなのに改行はLFってOSなに?
391デフォルトの名無しさん:2006/08/19(土) 21:47:28
まぁ俺の下らないたとえ話を聞いてくれや。
募金会場で1円玉を10万枚持ち込んでも10万円募金したってことになるが
1万円札を10枚でも金額は同じだ。だけど、受付側にしてみりゃ1円玉10万枚なんて
重量や枚数からしてかなり迷惑なわけだ。それでもトーマスは
「何か問題でも?」とか言うならまだしも、1万円札10枚の人に対して
「受付側の配慮をする必要があるのか?」とか言い出すから困る。
1万円札を出した人は、別に受付側に配慮したわけでもないのに。
392デフォルトの名無しさん:2006/08/19(土) 21:52:03
00111110 00111110 00110011 00111000 00111001 00001010 10000010 10111111
10000010 10101010 10000010 10100010 10000010 11011100 10000010 10110111
10000010 11100110 10000001 01001000 00001010 00111110 00111110 00110011
00111001 00110000 00001010 01100011 01111001 01100111 01110111 01101001
01101110 00100000 10000010 11001100 10010000 11011101 10010010 11101000
10000010 10101010 01010101 01001110 01001001 01011000 10000010 10111110
10000010 10101001 10000010 11100111 10000001 01000001 10000010 10101001
10000010 11001000 10000001 01001000 00001010 00001010 10000010 11000110
10000010 11101000 10000010 10100000 10000010 10100110 10000010 10111000
10000001 01000001 10001111 01101000 10010001 11101000 10000011 01111101
10000011 01011111 10000001 01011011 10000001 01001000 00001010
393デフォルトの名無しさん:2006/08/19(土) 21:53:28
たとえ話ってのは面白いが詭弁に使われる恐れがあるので、真面目な議論では話をややこしくするだけなんだよな。
394デフォルトの名無しさん:2006/08/19(土) 21:58:39
もうトーマスの話はいいから。
395デフォルトの名無しさん:2006/08/19(土) 21:59:38
#include <stdio.h>
int main(void) {
FILE *fp = stdin;
int c;
int i = 0;
int n = 0;
while ((c = fgetc(fp)) != EOF) {
switch (c) {
case '0': n <<= 1; i++; break;
case '1': n <<= 1; n |= 1; i++; break;
}
if (i >= 8) {
putchar(n);
n = 0; i = 0;
}
}
return 0;
}
396デフォルトの名無しさん:2006/08/19(土) 22:03:07
>>395
好きになりますよ?
397デフォルトの名無しさん:2006/08/19(土) 23:01:50
>>391
すごく分かりやすかった。
398デフォルトの名無しさん:2006/08/19(土) 23:04:34
>>397
私が釣れましたよ?
399デフォルトの名無しさん:2006/08/19(土) 23:07:57 BE:81522476-2BP(200)
夏のゆとりクンが大はしゃぎですね。
400デフォルトの名無しさん:2006/08/19(土) 23:17:18
このスレを自分の支配下に置きたい30代のオッサンひきこもりが必死ですね
401デフォルトの名無しさん:2006/08/19(土) 23:30:57
それは40代、真・引きこもりの俺に対する挑戦か?
402デフォルトの名無しさん:2006/08/20(日) 02:32:54
宿題とは違うんですけど、これからC言語を勉強するには何がお勧めですか?
教材とか教えて欲しいです
403デフォルトの名無しさん:2006/08/20(日) 03:06:14
はいはいスレ違い
404デフォルトの名無しさん:2006/08/22(火) 02:34:51
夏休み中の大学生は車に乗ってレジャー、カノージョと(ry
お前らひきこもりニート童貞は負け組み
405デフォルトの名無しさん:2006/08/22(火) 07:31:43
鏡に向かって言ってるのか
406デフォルトの名無しさん:2006/08/22(火) 08:09:47
いや、ここで宿題を○投げしている大学生に対して
日ごろでけぇ態度をとったりバカにしているキモイピッツァデブに対してw
407デフォルトの名無しさん:2006/08/22(火) 08:12:04
宿題を丸投げするという行為以上にでかい態度なんてあんの?
408デフォルトの名無しさん:2006/08/22(火) 08:13:58
丸投げはでかい態度とは言わない。押し付けて自分が思う答えを強要したら放置すりゃ良いしw
409デフォルトの名無しさん:2006/08/22(火) 08:14:56
まぁ要するにだ、丸投げして宿題に時間が掛からなかった分
空いた時間でカノージョとデートしてギシアンする余裕を与えてしまっている
キモメガネデブが惨めだと
410デフォルトの名無しさん:2006/08/22(火) 08:46:19
でも提出期限ギリギリの香具師が多い希ガス。

Σ(゜Д゜;)はっ!提出期限なんて自分で適当に変えれるのか。
411デフォルトの名無しさん:2006/08/22(火) 08:56:03
「提出期限」より「募集の有効期限」のほうがテンプレに入れる価値があるかも試練。
412デフォルトの名無しさん:2006/08/22(火) 09:26:05
提出期限を早めに偽っている奴なんているのかな。
期限直前に必死にレスしている依頼者の印象が強い。
413デフォルトの名無しさん:2006/08/22(火) 09:42:01
んで、期限ギリギリになってるのに、思うように解答が出てこないので
焦りまくっているのを回答者のせいにして、ピザデブとか言うわけか。
こういう輩には1000万円詰まれても答えたくないな。
414デフォルトの名無しさん:2006/08/22(火) 09:45:32
いや1000万円は欲しいとか言ってみる。
415デフォルトの名無しさん:2006/08/22(火) 09:53:19
税引き後で現金なら、とか言ってみる。
416デフォルトの名無しさん:2006/08/22(火) 09:55:39
しかも前払い
417デフォルトの名無しさん:2006/08/22(火) 10:20:20
1億円なら欲しいと言ってみる。中途半端な金は後からかえって
貧乏になるしな。
418デフォルトの名無しさん:2006/08/22(火) 10:20:54
100万円でも答えるな
419デフォルトの名無しさん:2006/08/22(火) 10:29:20
100万円でも100回答えれば1億円。これはおいしい。
420デフォルトの名無しさん:2006/08/22(火) 11:33:34
お前らキモヲタピッツァにお金なんて持たせたら・・・エロゲ買いまくりか?
421デフォルトの名無しさん:2006/08/22(火) 12:17:14
VIP

やれ
422デフォルトの名無しさん:2006/08/22(火) 12:21:09
でたよ、命令厨w ここはお前が主導のスレかっつーのっ。
423デフォルトの名無しさん:2006/08/22(火) 12:28:30
>>421
まず
おまえ

VIP
へ行け
424デフォルトの名無しさん:2006/08/22(火) 12:59:24
2-3木への挿入の関数insertってどこかにソース落ちてませんかね・・・?
425デフォルトの名無しさん:2006/08/22(火) 13:04:06
>>424
落ちてない

次の質問どうぞ
426デフォルトの名無しさん:2006/08/22(火) 13:14:38
>>425
じゃあヒントでも・・・
2つの節点a,bの、a以下とaからbの間とb以上で場合分けしてそこからまた再帰的にinsert関数使うんでしょうか?
427デフォルトの名無しさん:2006/08/22(火) 13:19:47
>>426
スレ違い。
スレ違いじゃないと言い張るなら>>1をよく読んで書き直し。

次の質問どうぞ
428デフォルトの名無しさん:2006/08/22(火) 13:22:55
では他のスレに書いてみます
失礼しました
429デフォルトの名無しさん:2006/08/22(火) 14:04:27
テンプレに従って書けば、答えてくれるのにね
430デフォルトの名無しさん:2006/08/22(火) 21:46:39
>>422
     ┏┓      ┏┓          ┏┓ ┏┓    ┏┓      ┏━━┓      ┏┓    ┏━┓
 ┏━┛┗━┓  ┃┃          ┃┃ ┗┛┏━┛┗━┓  ┗━━┛      ┃┃    ┗┓┃
 ┗━┓┏━┛┏┛┗━━┓┏━┛┗━┓ ┗━┓┏━┛┏━━━━┓  ┏┛┗━━┓┃┃
 ┏━┛┗━┓┗┓┏━━┛┗━┓┏━┛ ┏━┛┗━┓┗━┓┏━┛  ┗┓┏━┓┃┗┛
 ┗━┓┏━┛  ┃┃┏━┓    ┃┃     ┗━┓┏━┛  ┏┛┗┓      ┃┃  ┃┃
 ┏━┛┗━┓  ┃┃┗━┛┏━┛┗━┓ ┏━┛┗━┓┏┛┏┓┗┓    ┃┃  ┃┃
 ┃┏┓┏━┛  ┃┃┏━┓┃┏┓┏┓┃ ┃┏┓┏━┛┃┏┛┗┓┃    ┃┃  ┃┃
 ┃┗┛┃      ┃┃┗━┛┃┗┛┃┃┃ ┃┗┛┃    ┃┃    ┃┗┓  ┃┃┏┛┃
 ┗━━┛      ┗┛      ┗━━┛┗┛ ┗━━┛    ┗┛    ┗━┛  ┗┛┗━┛
431デフォルトの名無しさん:2006/08/22(火) 23:29:02
別に宿題やったげるって人が気が向いたらやればいいだけ。
丸投げかどうかなんてどうでもいいことだな。
432デフォルトの名無しさん:2006/08/23(水) 00:15:49
>>370さん以前はありがとうございました。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2617.c
こちらですが、本日試してみたところ、
A.txt B.txtが全部一行ずつ右へずれて表示されているのですが
どこを直したら、ぴっちりと詰められた状態で表示されるようになるのでしょうか?
433デフォルトの名無しさん:2006/08/23(水) 00:31:40
>>432
>>370じゃないし試してないけど\tを消したらいいんじゃないかな
434デフォルトの名無しさん:2006/08/23(水) 00:32:18
ああ 1回目だけ ね
435デフォルトの名無しさん:2006/08/23(水) 00:54:46
>>433
それは試してみたのですが、、、なんとすべての数字の間のタブが
消えて、000000000000000みたいになってしまいました。。
結構自分では変えたりしてみたのですが、どうもうまく行かなくって。。。
436デフォルトの名無しさん:2006/08/23(水) 03:00:12
>>432
for( j = 0 ; j < 230 ; j++ ) {
   fprintf(fp, "\t%d", a[i][j]);
}
のところを
fprintf(fp, "\t%d", a[i][0]);
for( j = 1 ; j < 230 ; j++ ) {
   fprintf(fp, "\t%d", a[i][j]);
}
にするとか。b[][]も一緒。
437デフォルトの名無しさん:2006/08/23(水) 03:21:35
>>436
ありがとうございます。
438デフォルトの名無しさん:2006/08/23(水) 03:59:43
訂正。
-fprintf(fp, "\t%d", a[i][0]);
+fprintf(fp, "%d", a[i][0]);
先頭のTAB取り忘れてた。
439デフォルトの名無しさん :2006/08/23(水) 09:16:14
添付のファイル”COMPANY.DAT”に下記のようなデータが300レコードあります。
1.Aのコードをソートして大きい順(小さい順)に並び替えるプログラムをC言語で作成する。
(ソートの方法は、どんな方法を用いてもかまいません。)
2.続いてAのコードが入力されたら、電話番号を抽出して表示するプログラムを追加する。
(サーチの方法は、2分割サーチを使用する)

1レコードのデータサイズ(max) 各項目はカンマで区切られている
A. コード 8文字(実際には4桁の数値なのでint.long.char.どれを宣言しても良い)
B. 会社名 40文字
C.会社名(フリガナ) 30文字
D.都道府県名 8文字
E.住所 50文字
F.電話番号 12文字

データ例(Excelファイル“Company.xls”参照)
1603アラビア石油アラビアセキユ東京都千代田区丸の内3-2-303-3214-4319
1661関東天然瓦斯開発カントウテンネンガスカイハツ東京都中央区日本橋室町3-1-2003-3241-5511

ヒント
ソートとサーチを別々に考えて作る。ただしソートで並び替えた後に、サーチを行えるようなプログラムの作りにしておくこと。
1レコードはカンマ区切りのCSV構造です。
1レコードを入力してカンマで1項目ずつ切り出す。(標準関数にトークンを切り出す関数があるので
それを使う)
切り出したら構造体にコピーする。
全てのレコードを構造体にコピーできたら、それぞれ”A”の”コード”を比較して大きい順に(小さい順に)
なるように並び替える。
(方法は単純ソート、バブルソート、2分割ソートその他 どのような方法でも良い)
並び替えたデータに対して2分割サーチを用いて、”コード”を入力して電話番号を抽出し、それを
表示できるようにする。
440デフォルトの名無しさん:2006/08/23(水) 10:08:21
もしもし、言葉おじさんですか?日本語が大変です。

こっとば〜こっとばこっとば〜 こっとば〜お〜じ〜さ〜ん〜
441デフォルトの名無しさん:2006/08/23(水) 10:24:56
[1] 授業単元: ファイルからの単語の検索
[2] 問題文(含コード&リンク):
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2620.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:gcc 3.4
 [3.3] 言語:C
[4] 期限:8月27日
[5] その他の制限:
よろしくお願いします
442デフォルトの名無しさん:2006/08/23(水) 21:04:28
>>430
お前か?おまえか?おーまえか?おーべいか?欧米かっ!?
443デフォルトの名無しさん:2006/08/23(水) 22:15:11
>>436
ありがとうござます。
そのようにしてみたのですが、横に一行増えてしまいました。
このデータ、、縦横がずれると困るのですが、よい解決方法が
あったらお願いします。
444デフォルトの名無しさん:2006/08/24(木) 00:58:57
それくらい自分でやれ
445デフォルトの名無しさん:2006/08/24(木) 09:06:27
>>443
今のコードとその出力、欲しい出力を説明しなおしてくれ。
過去レス順番に読んでいくのは面倒だ。
446デフォルトの名無しさん:2006/08/24(木) 10:22:01
[1] 授業単元: programing
[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2621.txt
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:8/25
よろしくお願いします。
447デフォルトの名無しさん:2006/08/24(木) 11:03:30
>大学で習う数学でもっとも難しい部類にある固有値を求める必要がある。
どんなヘボ大学だよ…
448446:2006/08/24(木) 11:18:16
>>447
お前の頭がヘボなんだろ。
449デフォルトの名無しさん:2006/08/24(木) 11:27:15
ヘボじゃない人の宿題なら別にやらないでもいいか
450デフォルトの名無しさん:2006/08/24(木) 11:28:37
宿題を丸投げするような馬鹿は
まず自分が一番へぼいことを自覚した方がいい

逆に考えるんだ、固有値が最も難しい部類に入るような
授業をしても潰れない大学はむしろ凄いと考えるんだ
451デフォルトの名無しさん:2006/08/24(木) 13:35:35 BE:15528342-2BP(200)
行列の固有値が「最も難しい部類」って…
むしろ機械的に計算できるものの方が簡単な気がするんだが。
452デフォルトの名無しさん:2006/08/24(木) 14:11:13
>446=448な時点で >449に同意だな・・
453デフォルトの名無しさん:2006/08/24(木) 15:58:12
宿題に答える気がないなら帰って良いよ(ガチンコラーメン道の佐野風に)
454デフォルトの名無しさん:2006/08/24(木) 16:03:52
じゃぁ帰らせてもらおう
455デフォルトの名無しさん:2006/08/24(木) 16:39:34
宿題やるきが無くてここに持ってくる奴がなにをいってるんだw
456デフォルトの名無しさん:2006/08/24(木) 17:21:10
今日は雨だったので一日中家に居た
今日はとても気分が悪かったので一日中寝ていた
今日は今まで宿題やっていなかったから宿題をした
以上の三つですがこれ英語にしてください

457446:2006/08/24(木) 17:35:09
446ですけど、>>448は僕じゃありません。
勘弁してください。
固有値は別に難しくないと思うんですけどまあ気にせずにお願いします。
458デフォルトの名無しさん:2006/08/24(木) 18:52:51
まあIDが出ないこの板としては
何とも言えんが、 行列がわからん漏れには解けんな。。
459デフォルトの名無しさん:2006/08/24(木) 19:45:44
勘弁して欲しいならトリップつけるべきだな
トリップ無し=騙ってOK だからな
460デフォルトの名無しさん:2006/08/24(木) 20:00:48
>>448を見て>>448=>>446だと思う奴の神経が理解できない。
461デフォルトの名無しさん:2006/08/24(木) 20:23:48
>>448=>>446だと思う奴」が存在すると思う奴の神経が理解できない。
462デフォルトの名無しさん:2006/08/24(木) 20:25:56
>>461
俺はお前が理解できない。
463デフォルトの名無しさん:2006/08/24(木) 23:22:26
トーマス(>>451)消えろ
おまいがいるだけでスレのふいんき(なぜk(ry)が悪くなる

>>446
トリップのつけ方分からないかもしれないから書いておく
名前のところに「好きな名前#好きな文字」を入れて書き込むと
好きな名前◆FUJIKOみたいに変換される
#の後ろにいれる単語によって◆の後ろの文字も変わるから
自分が覚えられる文字であまり誰も思いつかなさそうな文字を入れるとよい

しかし、行列の計算て何年ぶりだろ・・・
464446 ◆cbkujpH7is :2006/08/24(木) 23:28:40
446です。トリップ付けました。
なんか荒れてるみたいですいません。
僕はお願いしてる側なので、間違っても>>448みたいな暴言を吐いて
わざわざ自分のクビを締めるようなマネはしないです。
どうか信じてください。お願いします。
465446 ◆cbkujpH7is :2006/08/24(木) 23:33:29
>>463
懇切丁寧にありがとうございます。一応知ってました。
466デフォルトの名無しさん:2006/08/24(木) 23:48:31
3行も言い訳されるとやっぱり釣りじゃないかと疑ってしまうのは
人間不信だからだろうか・・・
467デフォルトの名無しさん:2006/08/25(金) 00:00:20
質問者が釣りでも特に問題はないんじゃね?
468デフォルトの名無しさん:2006/08/25(金) 01:08:32
まあ1回gdgdになったらここで回答出るのは絶望的だよな
469デフォルトの名無しさん:2006/08/25(金) 01:21:59
>>441
 過去ログ読んだ?似たような問題が頻出のはず。
気が向いたら週末にやってみるかも、しれん。

 ところで、gccってwindowsでも動くのか。
ずっとUNIX用とばかり思ってたけど(使ったことない)。
470デフォルトの名無しさん:2006/08/25(金) 01:26:11
>>469
つ[cygwin]
471デフォルトの名無しさん:2006/08/25(金) 02:24:27
>>469
つ【MinGW】

ゴキブリとgccはどこにでも出る。
472デフォルトの名無しさん:2006/08/25(金) 05:49:44
UNICODEで(UTF-16とかいうやつ)フォーマットされたテキストファイルを読みこめません。
多分すれ違いだと思うんですが、もうどこで聴いてもわからないから
質問だけさせてください。

TCHAR szBuffer[1024];

hFile = CreateFile(szFileName, GENERIC_READ, FILE_SHARE_READ, NULL,
OPEN_EXISTING, 0, NULL);
if(hFile == INVALID_HANDLE_VALUE) return FALSE; //ファイルを開けなかった場合

dwFileSize = GetFileSize(hFile, NULL);
if(dwFileSize > MAX_READ) return FALSE; //ファイルがおおきすぎる場合

bReturn = ReadFile(hFile, szBuffer, dwFileSize, &dwRcv, NULL);
if(bReturn == FALSE) return FALSE;//ファイルを読み込めなかった場合

szBufferにはUNICODE文字列を指すアドレス(ポインタ)が入っていると思うんですが、 lstrlen(szBuffer)の答えがいつも3になってしまいます。
どこがおかしいのかわかりません。
473デフォルトの名無しさん:2006/08/25(金) 05:55:44
>>446
素朴な疑問なんだが、推移確率行列というのは列方向に足して1になる
ように規格化されているんだよな。

全ての要素が等しい初期ベクトルにこの規格化された行列を掛けても、
単位行列を掛けるのと同じで、結果がいつまでも変化しなくないか?
要素が異なる初期ベクトルに掛けるなら意味があるが、要素が等しい
初期ベクトルじゃなあ。
474デフォルトの名無しさん:2006/08/25(金) 06:16:17
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2625.txt

>>446
問題文を修正して、推移確率行列*に*初期ベクトルを10回掛けて
PageRankを求めるプログラムを作った。問題文の解釈を勝手に変えて
申し訳ないが、こうしないと同じ値が際限なく出る事になり、問題の
意味が無くなってしまう。
475446 ◆cbkujpH7is :2006/08/25(金) 07:10:47
>>473
僕もそう思いました。
問題文の通りに解いてたつもりなんですが全然上手くいかないので
頭脳明晰なここの方たちにお力を借りようと思った次第です。

>>474
どうもありがとうございます。
476デフォルトの名無しさん:2006/08/25(金) 08:05:50
>>472
こっちのスレで十分に答えてもらっているではないか。
http://pc8.2ch.net/test/read.cgi/tech/1143375639/l50
たとえここで答えるやつがいたとしても、おそらくこれと同じことがかかれるだけだぞ。
>>472
>どこがおかしいのかわかりません。
あんたの頭。
478デフォルトの名無しさん:2006/08/25(金) 09:00:15
windows
vc60
入力された日付又は時刻が存在しているのか確認する方法を教えてください
479デフォルトの名無しさん:2006/08/25(金) 09:55:36
【初心者歓迎】C/C++室 Ver.30【環境依存OK】
http://pc8.2ch.net/test/read.cgi/tech/1156145524/

まぁ貼っておきますよ
480デフォルトの名無しさん:2006/08/25(金) 17:37:15
宿題に答える気がないなら帰って良いよ(ガチンコラーメン道の佐野風に)
481デフォルトの名無しさん:2006/08/25(金) 18:07:39 BE:69876094-2BP(200)
>>463
ふいんき(←ry)とやらが悪くなっても別に問題ない。
ふいんき(←ry)を客観的に評価する基準が存在しないのだから考慮に値しない。
482デフォルトの名無しさん:2006/08/25(金) 18:41:56
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2617.c

こちらのプログラムですが、出力すると、一番右の行があいてしまいます。

for( j = 0 ; j < 230 ; j++ ) {
fprintf(fp, "%d", a[i][0]);
}
のところを
fprintf(fp, "\t%d", a[i][0]);
for( j = 1 ; j < 230 ; j++ ) {
fprintf(fp, "\t%d", a[i][j]);
}
と変えてみたのですが、どうもうまく行きません。
右につめて出力する方法を教えていただけませんでしょうか?
483デフォルトの名無しさん:2006/08/25(金) 18:44:34
上の質問の元データは・・・

実際のdataは240*220でした。

投稿日:2006/08/19(Sat) 18:22 No.2616
2616.zip かります。データをzipで
ろだにあげました。
よろしくです。
484デフォルトの名無しさん:2006/08/25(金) 18:51:12
たのむからこのスレで質問をしないでくれ。
485デフォルトの名無しさん:2006/08/25(金) 18:54:36
>>482
a[i][j]の桁を数えて足りない桁数だけ空白を出力してからa[i][j]を出力する。
というかあんたもいいかげん長いしそろそろプロジェクト終了しないか?
486デフォルトの名無しさん:2006/08/25(金) 19:00:25
プロジェクト?

データの桁数は足りているのですが、どうも右に一個ずれてるんですよね。
左づめにしたいのですが。
487デフォルトの名無しさん:2006/08/25(金) 19:02:20
>>485
宿題の期限は8末なんだから、部外者がごちゃごちゃ言うな。
気に入らないならスルーしろ。
488デフォルトの名無しさん:2006/08/25(金) 19:04:47
>>487
おめえも気に入らないのにスルーしやがらねえのかヨーww
489デフォルトの名無しさん:2006/08/25(金) 19:05:43
右に詰めたいのか左に詰めたいのか
490デフォルトの名無しさん:2006/08/25(金) 19:06:52
>>488
アホか
491デフォルトの名無しさん:2006/08/25(金) 19:08:13
>>482
>>438のこと無視するなよ、かわいそうだろ
492デフォルトの名無しさん:2006/08/25(金) 19:09:00
>>490
スルースルー
493デフォルトの名無しさん:2006/08/25(金) 19:12:30
>>490
アホか
494デフォルトの名無しさん:2006/08/25(金) 19:13:37
>>492
あほか、お前がスルーしろよ
495デフォルトの名無しさん:2006/08/25(金) 19:14:02
というかいい加減printfの使い方くらい覚えろ、と
それもできないやつが出力のアレが気にいらねえだのなんだの
496デフォルトの名無しさん:2006/08/25(金) 19:14:09
>>489
本当に申し訳ありません。
左に詰めたいです。
497デフォルトの名無しさん:2006/08/25(金) 19:14:37
>>478
日付または時刻が存在するかってのは、
例えば 2006/13/32とかを弾きたいって事?

そのままベタに関数書くのが良くね?
498デフォルトの名無しさん:2006/08/25(金) 19:14:40
>>493
アホか
499デフォルトの名無しさん:2006/08/25(金) 19:24:23
>>488
     ┏┓      ┏┓          ┏┓ ┏┓    ┏┓      ┏━━┓      ┏┓    ┏━┓
 ┏━┛┗━┓  ┃┃          ┃┃ ┗┛┏━┛┗━┓  ┗━━┛      ┃┃    ┗┓┃
 ┗━┓┏━┛┏┛┗━━┓┏━┛┗━┓ ┗━┓┏━┛┏━━━━┓  ┏┛┗━━┓┃┃
 ┏━┛┗━┓┗┓┏━━┛┗━┓┏━┛ ┏━┛┗━┓┗━┓┏━┛  ┗┓┏━┓┃┗┛
 ┗━┓┏━┛  ┃┃┏━┓    ┃┃     ┗━┓┏━┛  ┏┛┗┓      ┃┃  ┃┃
 ┏━┛┗━┓  ┃┃┗━┛┏━┛┗━┓ ┏━┛┗━┓┏┛┏┓┗┓    ┃┃  ┃┃
 ┃┏┓┏━┛  ┃┃┏━┓┃┏┓┏┓┃ ┃┏┓┏━┛┃┏┛┗┓┃    ┃┃  ┃┃
 ┃┗┛┃      ┃┃┗━┛┃┗┛┃┃┃ ┃┗┛┃    ┃┃    ┃┗┓  ┃┃┏┛┃
 ┗━━┛      ┗┛      ┗━━┛┗┛ ┗━━┛    ┗┛    ┗━┛  ┗┛┗━┛
500デフォルトの名無しさん:2006/08/25(金) 19:28:11
>>478
COleDateTimeとか。mfcだけど。
501デフォルトの名無しさん:2006/08/25(金) 19:32:22
>>488
スルーしろ、馬鹿
502デフォルトの名無しさん:2006/08/25(金) 19:45:46
>>491

>>438さんのは試してみたのですが、
左詰めにはできても、右の一行が消えず
結局トータルで一行増えてしまうのです。
ですので、困っておりました。ごめんなさい
503デフォルトの名無しさん:2006/08/26(土) 04:29:34
>>499
スルーしろ、馬鹿
504デフォルトの名無しさん:2006/08/26(土) 05:50:13
はいはい面白い面白い
505デフォルトの名無しさん:2006/08/26(土) 09:21:38
a[10]={”1234567890”}って十個配列があったとします。
1234567890
↓↓↓↓↓↓↓↓↓↓
4567890ヌヌヌ    ヌ=NULL
上記みたいに3つ横にずらしたいと思っているのですが
何かいい方法はありますか?
お願いします。
506デフォルトの名無しさん:2006/08/26(土) 09:26:21
#include<algorithm>
#include<stdio.h>
int main(){
    int i,a[10]={1,2,3,4,5,6,7,8,9,0};
    std::fill(std::copy(a+3,a+10,a),a+10,0);
    for(i=0;i<10;++i)
        printf("%d ",a[i]);
}
507デフォルトの名無しさん:2006/08/26(土) 09:26:50
単純に代入するなり、ポインタ取るなりご自由にどうぞ
508デフォルトの名無しさん:2006/08/26(土) 09:29:47
ありがとうございます。
509デフォルトの名無しさん:2006/08/26(土) 09:51:13
宿題スレで宿題以外の質疑応答すな。
初心者スレにでも逝ってくれ。
510デフォルトの名無しさん:2006/08/26(土) 09:55:03
>>509
>>1
>気に入らない質問やその他や発言はスルーの方向で。
511デフォルトの名無しさん:2006/08/26(土) 09:57:15
>>510
>1

って、スルーしつづけてたら改善されるものもしないジャマイカ。
512デフォルトの名無しさん:2006/08/26(土) 10:04:26
【マジレス】超初心者の質問に答えるスレ【エスパー】
http://pc8.2ch.net/test/read.cgi/tech/1143225402/
513デフォルトの名無しさん:2006/08/26(土) 13:10:45
スルーしろ、馬鹿
514469:2006/08/26(土) 18:14:20
>>441
とりあえず問1をやってみた。VCで作ったけどgccでも問題はなかろ。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2629.txt
441、まだ、見てるかなー。見てるなら、なんかレスください。
「ソース汚い」
「期待してたのと違う」
「バグあるじゃん」
「もう自己解決しますた」
とかでもいいです。無反応はさびしい・・・

>>471
>ゴキブリとgccはどこにでも出る。
 ちょい笑った。そーか、どこにでも出てくるものなのね。
515デフォルトの名無しさん:2006/08/26(土) 18:16:45
言い忘れた。
必要なら問2や3も挑戦してみます。
516441:2006/08/26(土) 19:02:00
>>514-515
ありがとうございます、きちんと動きました
できるのでしたら他の問いもお願いします
517469:2006/08/26(土) 19:29:41
今晩メシから帰ってきた。

>>516
 おう、わかったぞ。
とりあえず2時間くらいはかかると思ってくれ。
もしできなかったらギブアップする旨書くよ。
とりあえず日付が変わる前にに何らかのレスは、書く。
518ぼるじょあ ◆yBEncckFOU :2006/08/26(土) 19:33:06
(・3・) エェー ギブアップしたら僕の出番だNE
519デフォルトの名無しさん:2006/08/26(土) 20:09:54
>>514
>441じゃないんだけど、改善提案があるんだけど要る?
520469:2006/08/26(土) 20:13:55
問2。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2630.txt
これから問3いくよ。それまでバグ取りでもやっててくれるとうれしい。

見りゃわかるけど、一行のMAXサイズが256字(終端コード含む)
になっているのが問題かな。

注文・質問等はお早めに。
521469:2006/08/26(土) 20:15:08
>>519
改善案があるなら教えてほしいです。
522デフォルトの名無しさん:2006/08/26(土) 20:17:57
うざいな
523デフォルトの名無しさん:2006/08/26(土) 20:23:37
>>521
んじゃ、「宿題だから手を抜いた」とか「宿題に一々文句言うな」は抜きで宜しく。

・エラーメッセージ
(元仕様で書かれているならその限りではないが)Unix系のツールに倣うなら、標準出力ではなく標準エラー出力に出力した方がいい。
キーワードを[]で囲むとオプション(=省略可)と思われるから要注意。
「ファイルを開けない」理由が「ファイル名間違い」とは限らない。

・fgets()
fgets(buf, sizeof(buf), fp)とした方が、配列のサイズを変えたときに安心。


・変数名
retと言う名前でループ制御はいただけない。まして戻り値でさえないのだから。
lenを違う目的に使い直すのはミスリードの元になる。けちらず別の変数にしたほうがよさそう。

・ループ
外側のループは、明らかに回しすぎ。どう実装するかは兎も角、
0からstrlen(line)まで回すのではなく0からstrlen(line) - strlen(str)だけ回せば済むはず。
524デフォルトの名無しさん:2006/08/26(土) 20:24:50
>>523
くだらん指摘するんじゃねーよ
525469:2006/08/26(土) 20:38:58
>>523
 痛い指摘をありがとう。。。

>Unix系のツールに倣うなら、標準出力ではなく標準エラー出力に出力した方がいい。
 確かに、printfで良いのか?という疑問は感じた。
普段標準エラー使ってないんだよね。。。Unixも。
fprintf(stderr, "エラーメッセージ"
という形にしてみようかと。

>キーワードを[]で囲むとオプション(=省略可)と思われるから要注意。
 これは致命的ですね。今問3を作ってて思った。
オプション省略可のソースにするかどうか微妙に迷ってます。

>fgets(buf, sizeof(buf), fp)とした方が、配列のサイズを変えたときに安心。
 fgetsに慣れていないのがばれたw 確かに、そう書くのが普通ですね。

>retと言う名前でループ制御はいただけない。まして戻り値でさえないのだから。
 ここは手を抜いてしまったところです。
カウンタではないので、iとかjではなく、何か適当な名前がいいですね。
とりあえずstartにしましたが、いまいち・・・
526デフォルトの名無しさん:2006/08/26(土) 20:40:20
うぜー
527デフォルトの名無しさん:2006/08/26(土) 21:09:44
何年もC++で開発してきていながら
最近どうもあいまいなまま何気なくコーディングしている部分があり
かなり初歩的なことなんですが質問させていただきたいと思います。

char *hoge(char *arg){

528527:2006/08/26(土) 21:11:04
あっわゴメンナサイ途中で送信してしまいました
char *hoge(char *arg){
  arg = NULL;
  return arg;
}
のように、charポインタ型の引数にNULLを代入しても安全なんでしょうか?
529デフォルトの名無しさん:2006/08/26(土) 21:11:05
次の方どうぞー?
530デフォルトの名無しさん:2006/08/26(土) 21:15:34
>>527-528
よとり教育の成果か…

結論から言って全く安全。
531デフォルトの名無しさん:2006/08/26(土) 21:19:37
どうもありがとうございました
532デフォルトの名無しさん:2006/08/26(土) 22:00:05
>>514
MyStrstr() がわかりにくい。

int MyStrstr(const char *line, const char *str)
{
 int ret;
 for(ret = 0; line[ret] != '\0'; ret++){
  int i;
  for(i = 0; (str[i] == line[ret + i]); i++){
   if(str[i] == '\0'){
    return 1;
   }
  }
 }
 return 0;
}

あたりではどうか。
533469:2006/08/26(土) 22:05:40
>>441
問3だが・・・
>-v 検索結果を反転し、一致しない行を表示
問題の意味を誤解しているかも、しれん。

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2631.txt
 今のところ、オプション指定なし、-i、-v を想定しており、
オプション複数指定までは考えられていない。
(問題に書いてなかったから)

 また、「とりあえず動けばいい」という考えで作ってあり、
ネストが深すぎる等、問題のありすぎるソースだし、
爆弾のようなバグが潜んでいるかもしれない。

 気力があれば修正するけど・・・あまり期待しないで欲しい。
534デフォルトの名無しさん:2006/08/26(土) 22:09:06
>>528
>charポインタ型の引数にNULLを代入
まさかと思うが「argに代入」にはならないぞ
535デフォルトの名無しさん:2006/08/26(土) 22:17:50
>>534
ということは
arg=NULL;
の一行はあってもなくてもいいんですか
536デフォルトの名無しさん:2006/08/26(土) 22:27:09
>>535
そうだな。
char *hoge(char *arg){
  return NULL;
}
とするのとなんら変わりない。
537デフォルトの名無しさん:2006/08/26(土) 22:33:29
あとでargを使いたいときに
argの中身は保障されないってことですよね

やっぱりarg = NULL;は必要ぽい
538デフォルトの名無しさん:2006/08/26(土) 22:42:02
>>536が正解
539デフォルトの名無しさん:2006/08/26(土) 22:53:53
>>534
いや、なってるでしょ。
ただそれは仮引数のargであって、実引数ではないけど。
540デフォルトの名無しさん:2006/08/26(土) 23:05:45
>>533
まあ言いたいことは色々あるが、

検索文字列を 256 バイト以上入力されたらちょっとまずいぞ

とだけ指摘しとくよ。
541デフォルトの名無しさん:2006/08/26(土) 23:10:02
まぁ宿題スレなんだし。

なんで急に変な奴が出始めたのか。
542527:2006/08/26(土) 23:10:46
たとえばtime_t time(* time_t)
なんて関数があると思うんですが
あれは必ず戻り値も引数として渡すアドレスも同じものが帰ってくると思うんですが
あれはどうやってるんでしょうか
543527:2006/08/26(土) 23:11:17
すみませんスレ違いでした。
帰ります。
544デフォルトの名無しさん:2006/08/27(日) 03:40:32
>>543
質問スレ行った方が良さそうだが…
そもそも、char*argを渡していて、
argに代入しても意味ないだろう。
それはポインタを示す変数であって、実体じゃない。
*arg = NULL;
とすべきだろ?
かなり基礎的な事だと思われ。
545デフォルトの名無しさん:2006/08/27(日) 04:05:52
一時変数として使ってもいいのか、ってことじゃねーの?
546デフォルトの名無しさん:2006/08/27(日) 07:22:07
( ^ω^) おっおっおっ、微妙に正常な流れに
547デフォルトの名無しさん:2006/08/27(日) 07:25:23
>>544
ネタは止めようぜ
548441:2006/08/27(日) 08:43:53
>>532,>>533
ありがとうございました
549デフォルトの名無しさん:2006/08/28(月) 07:31:17
( ^ω^) 姿慎めよ
550デフォルトの名無しさん:2006/08/28(月) 19:13:24
再厨からきますた
カツゲン詰めよろ
551デフォルトの名無しさん:2006/08/28(月) 19:14:01
そういうのやめてくれ
552デフォルトの名無しさん:2006/08/28(月) 19:49:10
再厨からきますた
昨日の女神画像の詰めよろ
553デフォルトの名無しさん:2006/08/28(月) 19:56:31
四則演算や()、sin、cosの計算が出来る計算機のプログラムのソースプログラムありませんか?
554デフォルトの名無しさん:2006/08/28(月) 19:58:22
ありません
555デフォルトの名無しさん:2006/08/28(月) 20:01:37
そこをなんとか
556デフォルトの名無しさん:2006/08/28(月) 20:05:18
なりません
557デフォルトの名無しさん:2006/08/28(月) 20:21:56
>>553
とりあえずさ、嘘でもいいから>>1のテンプレに従って
宿題として聞こうよ。
558デフォルトの名無しさん:2006/08/29(火) 00:42:14
>>439
http://up.spawn.jp/file/up36834.zip
作ってみた。突っ込みどころ満載。
というかヒントが逆に辛いよ。
559デフォルトの名無しさん:2006/08/29(火) 05:18:29
>>558
確かに満載だが、我慢する。
560デフォルトの名無しさん:2006/08/29(火) 06:00:08
( ^ω^) おっおっお、そろそろ新学期が始まりそうな予感?
うちの大学は後期は9月下旬からだったが。
561デフォルトの名無しさん:2006/08/29(火) 06:51:56
思い出させないでくれー!
562デフォルトの名無しさん:2006/08/29(火) 06:58:23
苦しむがよいフヒヒヒヒ!
563デフォルトの名無しさん:2006/08/29(火) 10:11:23
( ^ω^) さて、俺もそろそろ次の宿題連発に備えて準備すっか。
564デフォルトの名無しさん:2006/08/29(火) 10:54:27
マンドクサ('A`)
565デフォルトの名無しさん:2006/08/29(火) 13:28:10
( ^ω^) おいっ、夏休みの宿題だったけど結局やってなくて
新学期間近で焦り始めている香具師はとっとと質問しろお
566デフォルトの名無しさん:2006/08/29(火) 13:41:03
>>565
[1] プログラミング演習
[2] 多倍長整数クラスBigInt
[3] 環境
 [3.1] Win/Linux
 [3.2] vc7.1 or later
 [3.3] C++
[4] 8/31まで
[5] 乗算はO(NlogN)、強い例外安全・中立、スレッドセーフを達成すること
四則演算は演算子をオーバーロードすること
その他は各々自由に設計して良い
567デフォルトの名無しさん:2006/08/29(火) 13:43:49
( ^ω^) おいらに直接質問されてもねぇw
568デフォルトの名無しさん:2006/08/29(火) 14:32:53
>>566
2^24ビット以下の値しか表現できなくてもよければ、前に書いたのがあるが。

>例外中立
ユーザ定義型を扱う訳でもないのに例外中立とはどういうことだ?
std::bad_allocをちゃんと通せってことか?
569デフォルトの名無しさん:2006/08/29(火) 14:51:54
大学生の場合夏休みの宿題とかないんじゃ?
10月、休み明けの課題とかでスレが賑わいそう
570デフォルトの名無しさん:2006/08/29(火) 16:20:04
俺が大学生の時は、休み明けの9月上旬〜中旬にテストがあったが、
とりあえず夏休みの宿題は無かったぞ。w
571デフォルトの名無しさん:2006/08/29(火) 19:04:58
>>566
#include<boost/bigint.hpp>
typedef boost::bigint BigInt;
572デフォルトの名無しさん:2006/08/29(火) 23:08:22
今更だけど>>533のオプションに-i指定したとき区別以前に一致する単語すら探せてないみたいなんですが
gccでtoupperが使えないってことはないですよね?
573ぼるじょあ ◆yBEncckFOU :2006/08/29(火) 23:09:36
(・3・) エェー 使えないわけねぇだろうがYO
574デフォルトの名無しさん:2006/08/29(火) 23:22:42
いや、俺もそうだと思ってるんですが
区別しないために全部大文字にして調べてるってのはわかるんだけどどうしても動かないんですよ
Cygwin使ってるんですが他の環境で実行すれば動くのかな?
575469:2006/08/29(火) 23:29:51
>>572
バグだった・・・指摘サンクス。
case OPTION_I:
for (j = 0; buff[j] != '\0'; j++)
{
upper_buff[j] = toupper(buff[j]);
}
upper_buff[j] = '\0';
for (j = 0; argv[2][j] != '\0'; j++)
{
upper_word[j] = toupper(argv[2][j]);
}
upper_word[j] = '\0';//ここが変だった

他にもバグ、あるかも・・・。イヤーーン。
576デフォルトの名無しさん:2006/08/29(火) 23:43:29
>>575
結構時間が経っているにもかかわらずすばやい修正ありがとうございます
これ以外におかしいところはありませんでした
577デフォルトの名無しさん:2006/08/30(水) 20:15:36
( ^ω^) 俺が答えられる宿題を出すと良いお
578デフォルトの名無しさん:2006/08/30(水) 21:15:36
お台場〜宗谷岬461570¥
579関山先生大好き ◆GrLSr1x6e. :2006/08/31(木) 00:30:53
[1] 授業単元:関山先生からの個人別宿題(1+1+1=を解くような電卓)
[2]入力された計算式を解く電卓
(ex:1+1*1=と入力されたら2を返す)
[3] 環境
 [3.1] OS: Mac OS X 10.4 Tiger
 [3.2] gcc 4.01
 [3.3] 言語: Cのみ
[4] 期限: 8月中?関山先生の気分次第
[5] その他の制限: 制限は特になし?
580デフォルトの名無しさん:2006/08/31(木) 00:55:26
関山先生に通報しますた
581デフォルトの名無しさん:2006/08/31(木) 02:18:25
>>579
> (ex:1+1*1=と入力されたら2を返す)

演算子の優先順位がわからん…。
582デフォルトの名無しさん:2006/08/31(木) 02:22:03
逆ポーランドでググれ
多分ずばりの答えが出てくるはずだ
583デフォルトの名無しさん:2006/08/31(木) 09:00:48
逆ポーランドだと
1 1 + 1 *
にならないか?
584デフォルトの名無しさん:2006/08/31(木) 09:28:02
( ^ω^) ウホッ、なるかどうかプログラムでやらないか?
585デフォルトの名無しさん:2006/08/31(木) 09:33:59
掛算の優先度が高いのであれば、逆ポーランドで書けば
1 1 1 * +
になる。
586デフォルトの名無しさん:2006/08/31(木) 09:34:39
>>583
ならねぇよ
587デフォルトの名無しさん:2006/08/31(木) 13:04:55
1+1*1て普通の計算じゃん。。
588デフォルトの名無しさん:2006/08/31(木) 15:29:02 BE:23292926-2BP(200)
>>579
ほらよ。

#include<stdio.h>
#include<string.h>
int main(void){char tmp[100];fgets(tmp,sizeof(tmp),stdin);
if(strncmp("1+1*1=",tmp,6)==0)puts("2");return 0;}
589デフォルトの名無しさん:2006/08/31(木) 15:30:14
僕が書いてみました。間違ってたら、僕に細かく指摘してください。

#define SHORYAKU(moji) if(strchr(moji,c=getc())==NULL) {\
 unget(c,stdin); break;\
}
vget() {
int c,v=0;
 for(;;) SHORYAKU("0123456789") else v=v*10+c-'0';
 return v;
}
main() {
int c, v1=0;
 for(;;) {
  int v2=vget();
  for(;;) {
   SHORYAKU("*");
   v2*=vget();
  }
  v1+=v2;
  SHORYAKU("+"); }
 printf("%d\n", v1);
 abort();
}
590デフォルトの名無しさん:2006/08/31(木) 18:56:28
条件に忠実に解くとしたら
>>588以上の好解答が見当たりません><
591デフォルトの名無しさん:2006/08/31(木) 18:56:48
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2633.txt
このマージソートのプログラムを、再起呼び出しを使って短くまとまるよう書き直せという問題です。

[3] 環境
 [3.1] OS: WinXP
 [3.2] コンパイラ名とバージョン: bcc
 [3.3] 言語: C++
[4] 期限: 明日の朝

宜しくお願いします
592デフォルトの名無しさん:2006/08/31(木) 19:01:40
>>591
問題に書いてあるとおり、再起呼び出しで短くしたらいんじゃね?
つか、そのもともとのコードが見にくいな。
593デフォルトの名無しさん:2006/08/31(木) 19:21:12
ttp://www.ics.kagoshima-u.ac.jp/~fuchida/edu/algorithm/sort-algorithm/merge-sort.html

こことか、Javaだけど再帰でやってるね。
594593:2006/08/31(木) 19:41:56
気が向いたので、上のサイトのソースを移植してみたよ。

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2634.cpp
595デフォルトの名無しさん:2006/09/01(金) 09:31:29
( ^ω^) 最近、トーマス氏は来ておらんのか?
596デフォルトの名無しさん:2006/09/01(金) 10:36:23
稀にあぼ〜ん見るから居ると思う
597デフォルトの名無しさん:2006/09/01(金) 11:23:21 BE:62112184-2BP(200)
598デフォルトの名無しさん:2006/09/01(金) 11:26:09
[1] 授業単元:C言語演習
[2] 問題文(含コード&リンク):連珠(五目並べ)プログラムの作成

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2636.txt

問題文にも載せてますがサンプルプログラムです
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2635.zip
[3] 環境
 [3.1] OS: mac
 [3.2] コンパイラ名とバージョン:gcc 3.4
 [3.3] 言語: C
[4] 期限: [2006年9月2日24:00まで]

どうかよろしくお願いします・・

599デフォルトの名無しさん:2006/09/01(金) 18:26:42
>>>598
何でもっと早く言わなかったんだ。
面白そうだからやりたいがこれから出かけなくてはいけないんだ。
600デフォルトの名無しさん:2006/09/01(金) 23:48:28
>>599
帰ってきてからお願いします('・ω・`)遅れてでも提出したいです・・
601デフォルトの名無しさん:2006/09/02(土) 00:00:37
ちょっとは自分でもやれよ
602デフォルトの名無しさん:2006/09/02(土) 00:13:11
自分でやるくらいなら頼みません
603598:2006/09/02(土) 00:15:36
>>602
これは自分ではありません。
604デフォルトの名無しさん:2006/09/02(土) 00:20:00
はい、自分でもやります
605デフォルトの名無しさん:2006/09/02(土) 00:21:12
>>603
ちょっとは自分でやるという宣言?
606デフォルトの名無しさん:2006/09/02(土) 09:46:10
他人に書いてもらうと、書き方のクセやなんかで絶対にバレるもんだが
いいのか、おまえら?
607リアル598:2006/09/02(土) 10:14:38
>>606
大丈夫です('・ω・`)
608デフォルトの名無しさん:2006/09/02(土) 10:34:28
>>606
たかが宿題で癖なんか見るわけないだろ。よっぽと変な書き方してる
んだったら別だか。

ただ先生によっては、「ここなんでこんな処理なの?」とかカマかけ
てくるから、回答丸写しでもいいけど内容は理解しとけよ。
609デフォルトの名無しさん:2006/09/02(土) 10:56:12
>>608
>回答丸写しでもいいけど内容は理解しとけよ。
無理な注文w
610デフォルトの名無しさん:2006/09/02(土) 11:06:33
教授の宿題採点の手伝いやってた時に似たの見分けてたお
611デフォルトの名無しさん:2006/09/02(土) 11:53:29
>>608
いや、普通にみるぞ?
612ぼるじょあ ◆yBEncckFOU :2006/09/02(土) 12:04:19
>>608
数人のソースだらだら見てるだけで共通点とか見えてくるんだぞ?
何十人ものソース見てその中にほとんど同じようなソースあったら
嫌でも気づくと思うがな
613デフォルトの名無しさん:2006/09/02(土) 12:05:06
しまった!名前を消し忘れたorz
614デフォルトの名無しさん:2006/09/02(土) 20:48:36
(´・ω・`)ヽ(゚Д゚ )ヨチヨチ
615デフォルトの名無しさん:2006/09/03(日) 01:53:53
ソースコードって、筆跡残るよな。
ゴーストプログラマやってた頃は、人様の書いたソースの記述スタイルを
我ながら完璧に模倣できてたりしたが、見破る人は見破るんだよ、これが。
コードを書くのにかかった時間の中で起こりうるスタイルの微小な変化が
時系列上に乗ってないと、不自然に見られる。
その場その場でのコードの模倣だけだと駄目なのよ。
プログラマーがそのコードに投じた作業時間と、それに伴う成長までをも
汲み取ってやらないと、偽造がバレる。

いや本当マジな話。

そして学生さんにはあまり関係のない話。

ついでに言うと身分を偽ってゴーストプログラマなんてやらなきゃならなくなった人間が
この世にどんだけいるのかについては、俺は知らんぬ。
616デフォルトの名無しさん:2006/09/03(日) 02:00:30
「前任の○○は鬱病になって飛びました」ってちゃんと伝えないと泥沼じゃない?
たいして意味の無い責任回避のために嘘ついても、お互いのために良くない。
617デフォルトの名無しさん:2006/09/03(日) 02:53:41
ゴーストプログラマって響きが甲殻みたいなだ
官庁から受けたお仕事だと逃亡しちゃったとは言いづらいかのう
618デフォルトの名無しさん:2006/09/03(日) 05:06:21
モトコに取り締まられたい(;´Д`)ハァハァ
619デフォルトの名無しさん:2006/09/05(火) 16:29:32
何か面白い宿題ないー?
620デフォルトの名無しさん:2006/09/05(火) 16:36:47
>>619
>>598('・ω・‘)
621デフォルトの名無しさん:2006/09/05(火) 16:52:30
あーーーっはっは、面白い、腹がいてぇ〜〜〜〜www
622デフォルトの名無しさん:2006/09/05(火) 22:56:51
何、その、使い古されてもはや誰も使わない公園のゴミ箱に埋もれている、そんなギャクは。
623学生:2006/09/05(火) 23:21:38
こんばんわ〜 課題が解けないのでお願いします<(_ _)>

10個の任意の整数値(1〜100)を繰り返し入力し、それぞれの場合の
最大値、最小値、合計、平均値(平均値は小数点以下2桁まで求めること)
を求めるプログラムを作成せよ。その際、それぞれの変数を
max,min,sum,averageとする。

そのままです。 よろしくお願いします。
624デフォルトの名無しさん:2006/09/05(火) 23:23:58
>>623
せめて>>1よめ
625学生:2006/09/05(火) 23:29:38
>>624
失礼しました。

[1] 授業単元:単元?
[2] 問題文:>>623
[3] 環境
 [3.1] OS: ペケピー
 [3.2] コンパイラ名とバージョン:
 [3.3] 言語: C
[4] 期限:明日の朝頃まで
[5] その他の制限:for文を使ってやれとのことです.
プログラミングは基本的なことしかできません
626デフォルトの名無しさん:2006/09/05(火) 23:32:32
プログラミング以前の問題じゃないだろうか
627デフォルトの名無しさん:2006/09/06(水) 00:15:41
>>623
お前は淘汰されるべきだ。
やる気がないのに単位だけ欲しがるな。
628デフォルトの名無しさん:2006/09/06(水) 00:46:08
>>625
これ以上簡単にできない。
#include <stdio.h>
int main() {
    int a[10], i, max = 1, min = 100, sum = 0;
    double average;
    for (i = 0; i < 10; i++) {
        scanf("%d", a + i);
        if (a[i] < min) min = a[i];
        if (max < a[i]) max = a[i];
        sum += a[i];
    }
    average = sum / 10.;
    printf("max:%d, min:%d, sum:%d, average:%.2f\n", max, min, sum, average);
    return 0;
}
629デフォルトの名無しさん:2006/09/06(水) 01:00:16
この書き方なら、a[10]はa一つで済むな。
630デフォルトの名無しさん:2006/09/06(水) 01:22:27
>>623
> (平均値は小数点以下2桁まで求めること)

2桁目は必ず 0 になるような気が...。
631デフォルトの名無しさん:2006/09/06(水) 03:41:07
>プログラミングは基本的なことしかできません
この問題は十分基本的なわけだが
632デフォルトの名無しさん:2006/09/06(水) 08:11:00
これを提出して怒られてこい。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#define MIN_VAL 1
#define MAX_VAL 100
#define VAL_QTY 10
#define BUFFER_SIZE 256
#define FALSE 0
#define TRUE ~FALSE
int IsDigitStrings(char* p_str){
if(*p_str == NULL) return FALSE;
while(*p_str != NULL){ if(isdigit(*p_str++) == FALSE) return FALSE; };
return TRUE;}
main(){
int max, min, sum; double average;{
int i;
for(i = 0, sum = 0, min = MAX_VAL, max = MIN_VAL; i != VAL_QTY;){
int val; char str[BUFFER_SIZE];
printf("[%d]>", i); gets(str);
if(IsDigitStrings(str) == FALSE){
printf("入力エラー : 10進数の数値を入力してください。\n"); continue;}
val = atoi(str);
if(val > MAX_VAL || val < MIN_VAL){
printf("入力エラー : 入力できる数値の範囲は%dから%dです。\n", MIN_VAL, MAX_VAL); continue;}
sum += val; min = (val < min) ? val : min; max = (val > max) ? val : max;
++i;}}
average = (double)sum / (double)VAL_QTY;
printf("max = %d\nmin = %d\nsum = %d\naverage = %.2f\n", max, min, sum, average);}
633デフォルトの名無しさん:2006/09/07(木) 22:20:14
なにそのムダに見にくいコード
と1日以上前のレスに突っ込みを入れてみる
634デフォルトの名無しさん:2006/09/08(金) 01:39:18
[1] 授業単元:
[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2642.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:9月10日まで
[5] その他の制限:なし

よろしくお願いします
635デフォルトの名無しさん:2006/09/08(金) 02:34:39
こんなもんだろ。

#include <string.h>
#include <stdio.h>
typedef int ELEMENT_TYPE;
#define QUE_SIZE 10
enum { Q_SUCCESS = -1, Q_FULL = -2, Q_EMPTY = -3 };
typedef struct { ELEMENT_TYPE *buf, *end; } QUE;
void initqueue(QUE *que, void *buf) { que->buf = que->end = buf; }
ELEMENT_TYPE enqueue(QUE *que, ELEMENT_TYPE element) {
if (que->end - que->buf == QUE_SIZE) return Q_FULL;
*que->end++ = element;
}
ELEMENT_TYPE dequeue(QUE *que) {
if (que->end == que->buf) return Q_EMPTY;
ELEMENT_TYPE value = *que->buf;
memmove(que->buf, que->buf + 1, sizeof(ELEMENT_TYPE) * (--que->end - que->buf));
return value;
}
int main() {
QUE que; char buf[1000]; int v;
initqueue(&que, buf);
enqueue(&que, 1);
enqueue(&que, 2);
while ((v = dequeue(&que)) != Q_EMPTY) printf("%d\n", v);
}
636デフォルトの名無しさん:2006/09/08(金) 05:49:02
>623の問題を自分の勉強のつもりで取り組んでみました
小数点までもとめるのは、かったるいので省略

#include <stdio.h>

int main(void)
{
static int sum;
int a[10],i,b,average,min=1,max=1;

for(i=0;i<10;i++){
printf("数値を入力してください");

do{
scanf("%d",&b);
}while(b>100);

a[i]=b;
sum=a[i];

if(min>a[i])min=a[i];
if(max<a[i])max=a[i];
}

sum/10;
printf("平均値は%d",sum);
printf("最大値は%d",max);
printf("最小値は%d",min);

}
637デフォルトの名無しさん:2006/09/08(金) 07:00:09
http://acm.uva.es/problemset/

上のサイトの問題番号10001(http://acm.uva.es/p/v100/10001.html)が解けません。

なぜ Sample Input の4行目が GARDEN OF EDEN になるのか分かりませんorz

154 = 10011010(2進数)

Left Cell Right New
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1

だから 1010101010101010 -> 1000000000000000 になると思うんだけど。
638デフォルトの名無しさん:2006/09/08(金) 07:53:33
>>637
1行だけしかない4段落目をよく読め
639デフォルトの名無しさん:2006/09/08(金) 08:41:56
>>636
実行結果をもとにレポートするように。
640637:2006/09/08(金) 09:33:31
>>638
うぉおおお、最初と最後がつながってたのかorz

d(゚Д゚)☆スペシャルサンクス☆( ゚Д゚)b
641デフォルトの名無しさん:2006/09/08(金) 12:16:22
>634
きゅ〜ってなんだべと思って調べたら
こんなの出てきた
http://www.morikita.co.jp/soft/kiriyama/8399/1/r01-09.c
ココのをいじれば課題できそうじゃね?
642デフォルトの名無しさん:2006/09/08(金) 12:20:07
回答者のレベルまで下がってるな
夏休みはまだ終わらないのか?
643デフォルトの名無しさん:2006/09/08(金) 13:01:47
>>642
だからお前がレベルをどうこう言うならお前が出せっつーんだが?
まだこのスレの趣旨を理解していないでけぇ面するだけのヘタレが多いんだなw
644デフォルトの名無しさん:2006/09/08(金) 16:21:25
いつのまにかいじれば課題ができそうなヒントを出す趣旨に変わってたのか
知らなかった
645デフォルトの名無しさん:2006/09/08(金) 16:31:50 BE:11646623-2BP(200)
趣旨は「丸投げ厨を隔離する」ことだから回答の中身は割とどうでもよい。
646デフォルトの名無しさん:2006/09/08(金) 16:40:23
>>645
お前が思う趣旨などどうでもいい
647デフォルトの名無しさん:2006/09/08(金) 17:32:48
と、丸投げ厨が申しております。
648デフォルトの名無しさん:2006/09/08(金) 19:03:23
丸投げのほうがいいんだけどな
講義で毎週宿題出されるとこだったら、毎週毎週面倒見るのか?
649デフォルトの名無しさん:2006/09/08(金) 19:10:37
丸投げ=沢山の宿題をまとめて放出
だとでも思っているのか?
650デフォルトの名無しさん:2006/09/08(金) 19:16:23
ん?なんだその定義
依頼者に解かせようとヒント与えるやら、回答を理解してもらうために説明するやら
そーいうことせずにただただ殺伐と宿題依頼と回答だけあればいいってこった
651デフォルトの名無しさん:2006/09/08(金) 19:47:39
いつからここは個人の判断基準でレベルが決まるスレになったんだ?
丸投げって時点ですでに水準を決める基準なんてないんだよ
要するに、単位取得においては不可、ゴルフならOB、
入学以前に試験に合格していない、もはや評価される以前の場なんだよ、ここはw
652デフォルトの名無しさん:2006/09/08(金) 21:34:02
ここはプログラム組むのが大好きな人が趣味で回答してるんじゃなかったんだね…
なんか残念(⊃д`)
653デフォルトの名無しさん:2006/09/08(金) 21:38:31
>>652
少なくとも漏れはそうだが何か。
#最近回答してないがな。
654デフォルトの名無しさん:2006/09/08(金) 22:13:01
俺も娯楽のつもりでやってる。
でもまあ公衆の面前で発言してる以上、五月蝿い蚊の批判を受けることもあるだろ。

でも、このスレには勉強の為にコードを書いている人もいるらしいから、
そういうアレも多少はあってもいいんじゃないかと。
技術者なら他人の指摘を受け入れて技術を磨くべし。
655デフォルトの名無しさん:2006/09/08(金) 22:20:10
俺は主にネタだな。
依頼者の表面上の要求だけは満たしている皮肉に満ち溢れているコードを出すのが好き。
まぁ、最近はネタ考えている時間がないからやってないけど。
656デフォルトの名無しさん:2006/09/08(金) 23:43:18 BE:54348847-2BP(200)
俺は気分によって娯楽と勉強とネタが入り交じってるな。
657デフォルトの名無しさん:2006/09/08(金) 23:55:03
ネタだと気づかずにそのまま転載する奴とか多いんだろうな…。
うちの学科では脈々と受け継がれている過去レポがあるのだが、
ご丁寧に誤字まできっちり受け継がれているせいで
毎年写した奴が晒される。
658デフォルトの名無しさん:2006/09/09(土) 00:23:58
そりゃまた陰湿な文化継承してやがんなw
659デフォルトの名無しさん:2006/09/09(土) 01:50:41
こんなところで宿題を聞いている時点で、本人は宿題よりも
提出納期の方が大事という事でしょ。

減らず口まで出してきて、そんなのにイチイチかまってあげてもね・・
660デフォルトの名無しさん:2006/09/09(土) 01:54:02
別に普通に解き方のヒントが欲しいってこともあると思うが。
別にいちいち噛みつかんでも、聞きたい奴は聞いて、答えたい奴が答えれば。
661デフォルトの名無しさん:2006/09/09(土) 02:41:50
>>660 オマエモナー
662デフォルトの名無しさん:2006/09/09(土) 03:10:54
一度人に頼むと後が大変だぞ?
自分で書くときにそれと同じレベルで書けないと
人にやらせてたことが一発でバレる。
同じ人が書いてくれるとは限らないから、毎回筆跡の違うものになるし。

高校あたりなら注意されるだけだけど、
大学だとその年次の全ての単位を取り消しにされかねないぞ。
663デフォルトの名無しさん:2006/09/09(土) 07:35:01
単位を取り消しとかありえんどこの脳内大学だ
664デフォルトの名無しさん:2006/09/09(土) 07:43:21
取り消しじゃなくてそもそも取得できない だろうな
665デフォルトの名無しさん:2006/09/09(土) 08:04:02
後期に不正をやらかすと、前期の単位も消えますよ。
666デフォルトの名無しさん:2006/09/09(土) 08:12:29
大学によるんじゃないかな・・・
667デフォルトの名無しさん:2006/09/09(土) 09:00:55
俺何回かここで頼んだけど
皆理解できたら自分なりにアレンジくらいはしてるんじゃないのか?
668デフォルトの名無しさん:2006/09/09(土) 12:26:18
自分はアレンジしているだけマシってか?
669デフォルトの名無しさん:2006/09/09(土) 12:33:14
ここに宿題を丸投げするレベルの人間が、
果たして理解できるのかどうか、そこが問題なだw
670デフォルトの名無しさん:2006/09/09(土) 12:33:18
人に聞いたら不正なのか?w
671デフォルトの名無しさん:2006/09/09(土) 12:59:22
672デフォルトの名無しさん:2006/09/09(土) 13:10:09
>>670
まあ、不正かどうかは正直微妙なところではあるけど、
一応宿題は自分のためにやるもだからなぁ...

2ch 丸写しをさせるために高い金出してる親の気持ちにもなってみれ。

社会人なら話は別。2ch だろうがなんだろうか、合法的な手段で業務
を遂行できれば ○
673デフォルトの名無しさん:2006/09/09(土) 13:11:20
大学行ったことないのかなぁ、この人たち。
674デフォルトの名無しさん:2006/09/09(土) 13:20:59
宿題が投下されないからこのような不要なレスで埋まっていくのです。
675デフォルトの名無しさん:2006/09/09(土) 13:21:10
>>673
大学かどうかに関わらず、
世間一般の不正行為は全て「ばれなければ問題ない」わけだ
ばれなければ当然大学の単位が帳消しになることもないし、
ばれなければ、どこぞの県庁の裏金だって、
誰かさんのインサイダー取引だって、問題なかったわけだ

要はそれだけのことだw
676デフォルトの名無しさん:2006/09/09(土) 13:26:00
というかここに出てくるくらいの事をできないんじゃ何も出来ないだろ
677デフォルトの名無しさん:2006/09/09(土) 13:32:06
>>675
大学行ったこと無いのかなぁ、この人。
678デフォルトの名無しさん:2006/09/09(土) 13:34:24
っていうか社会に出たことがないんじゃね?
679デフォルトの名無しさん:2006/09/09(土) 13:56:56
宿題投下まだー?
後期もまだ始まってないとこ多いだろし当分この流れな悪寒・・・!
680デフォルトの名無しさん:2006/09/09(土) 15:11:00
宿題投下されない内は自分たちで出し合ったり、
いいトピックを出して議論できるのが大人だろう、と言ってみるテスツ
681デフォルトの名無しさん:2006/09/09(土) 15:25:46
じゃあ秋の新作アニメについて熱い議論を(ry
682デフォルトの名無しさん:2006/09/09(土) 15:42:38
テレビ番組の予定表が載ってるサイトからアニメ欄だけを抜き出して表にし直せとか
683デフォルトの名無しさん:2006/09/09(土) 19:39:14
そういやGコードを延々とリストアップしつづけるサイトってないの?
684デフォルトの名無しさん:2006/09/09(土) 20:52:13
いまどきGコードを使ってる人っているの?
685デフォルトの名無しさん:2006/09/09(土) 21:58:26
商品管理と親父の頭にバーコード使ってますが何か?
686デフォルトの名無しさん:2006/09/09(土) 22:45:58
そこでバーコードが出てくるのがよくわからないが
687デフォルトの名無しさん:2006/09/09(土) 22:54:28
親父が47
688デフォルトの名無しさん:2006/09/09(土) 22:59:29
いまどきバーコードも2次元化してますが何か?
689デフォルトの名無しさん:2006/09/09(土) 22:59:50
コード繋がりも分からないのか世
690デフォルトの名無しさん:2006/09/09(土) 23:16:05
僕の肛門にもコードが繋がりそうです><
691デフォルトの名無しさん:2006/09/10(日) 00:53:27
基本的にバレるものだとわからないくらい馬鹿なんだろうなぁ。
そういうのはさっさと淘汰されて居なくなるからいいけどね。
692デフォルトの名無しさん:2006/09/10(日) 00:54:31
>>688 バーコードの「バー」が何を意味するか調べてからそういうことを言え。
693デフォルトの名無しさん:2006/09/10(日) 02:28:14
「二次元バーコード」の検索結果 - 416,000 件の結果 (0.13 秒)

正式名称は 二次元コード もしくはQRコードなんだけど、
二次元コードは範囲が広すぎでよくわからんし、QRコード
なんて一般人には通じない。

694デフォルトの名無しさん:2006/09/10(日) 03:41:15
自演擁護しなくてもいいですよ
695デフォルトの名無しさん:2006/09/10(日) 07:59:43
>>688
あれはバーじゃないだろ・・・
696デフォルトの名無しさん:2006/09/10(日) 08:00:46
というか、バーコードは二次元だな。一次元、二次元、三次元について調べ直し!
697デフォルトの名無しさん:2006/09/10(日) 10:33:32
QRなんて携帯の機能についてるだろ
698デフォルトの名無しさん:2006/09/10(日) 10:47:11
QRコードで十分通じるだろ
それに正式名称って二次元コードはQRコードだけじゃないし・・・

まぁかわいそうだから擁護してあげると、うちの携帯は
QRコード読み取りアプリの名称が「バーコードリーダー」だな
699デフォルトの名無しさん:2006/09/10(日) 10:50:23
>>696
図案としては2次元ですが、データの集積方向は1次元です。
700デフォルトの名無しさん:2006/09/10(日) 11:58:52
つまり、二次元バーコードはバーが印刷面に垂直に並んでいるということで宜しいか?
701デフォルトの名無しさん:2006/09/10(日) 13:32:58
>>700
邪魔だろ。そんなバーコード。
702デフォルトの名無しさん:2006/09/10(日) 14:33:57
>>698
それ普通にバーコードが読めてついでにQRコードも読めるって意味では?
703デフォルトの名無しさん:2006/09/10(日) 14:48:35
http://www.au.kddi.com/manual/w22sa/misc/misc08.html
・・・バーコードも読めるのか?
704デフォルトの名無しさん:2006/09/10(日) 15:06:03
読んでみれば?
705デフォルトの名無しさん:2006/09/10(日) 15:44:38
ほんとだ バーコードも読める orz
706デフォルトの名無しさん:2006/09/10(日) 15:57:38
別にいいじゃんなあ。
そんなん言ったらQWERTYキーボードだってキーなんか無いんだぞ。
707デフォルトの名無しさん:2006/09/10(日) 16:00:34
>>706
普通にあると思うが
708デフォルトの名無しさん:2006/09/10(日) 17:13:51
>>707
キーボードって鍵盤なんだぞ。
鍵盤の鍵の出所はピアノのアレで、細長い白黒が食い合ってる様が
鍵に見えたからキーボード。トリビアにもならん。
そういう意味では、押し込みボタンの一つ一つをキーと呼ぶのは単なる後付。
そして拘泥するだけ馬鹿を晒す話。
ご清聴ありがとうございました。
709デフォルトの名無しさん:2006/09/10(日) 18:30:34
では今日からSWボードと呼びましょうか
710デフォルトの名無しさん:2006/09/10(日) 20:54:47
タイプライターのキーをswで置き換えたってキーだろ。
711デフォルトの名無しさん:2006/09/10(日) 21:17:05
だから、バーコードのバーをドットで置き換えてもバーって言ってるんだろ。
712デフォルトの名無しさん:2006/09/10(日) 21:30:35
>>711
おまい頭いいな
713680:2006/09/10(日) 21:52:09
スレの流れにワロタ
プログラマらしく話題の設計を事前に2、3回は推敲しようよι
突発的に組んでもろくな実装はできないと思われ
714デフォルトの名無しさん:2006/09/10(日) 23:18:38
話題の設計は結構やってるんだけど、レスポンスが
安定しないからデバッグが難しいんだよ。
715デフォルトの名無しさん:2006/09/10(日) 23:34:30
うわっ、なんでソースじゃないコードの話になってんだ?
716デフォルトの名無しさん:2006/09/10(日) 23:44:47
宿題が出しにくい雰囲気になってる予感。
717デフォルトの名無しさん:2006/09/10(日) 23:52:19
720がすごい宿題出すって
718デフォルトの名無しさん:2006/09/10(日) 23:57:07
720にプレッシャーかけるなよ
719デフォルトの名無しさん:2006/09/11(月) 00:00:12
どうぞどうぞ
720デフォルトの名無しさん:2006/09/11(月) 00:00:54
[1] 授業単元:
[2] 問題文(含コード&リンク):
分割された領域としてキューを用いるマージソートを作成せよ
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:9/12

よろしくお願いしますよ
721デフォルトの名無しさん:2006/09/11(月) 00:50:24
よく意味が分からないぜ。
マージソートの計算過程の、配列を二つに分割するという操作に、キューを使えってこと?
722デフォルトの名無しさん:2006/09/11(月) 10:19:01
略してマジキュー

…逝ってくる
723デフォルトの名無しさん:2006/09/11(月) 10:32:52
がんばれーがんばれーたーまーちゃーん
724sage:2006/09/11(月) 11:41:28

[1] 授業単元: C言語応用問題?
[2] 問題
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2643.txt
(1)はなんとかできたんですが(2)の方法がわかりません。
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] VC 6.0
 [3.3] 言語: C
 [4] 期限: 9/13日まで
 [5] その他の制限:

よろしくお願いします。
独学でCを学び始めた超初心者ですが、解答例が載ってない問題でつまってしまったので。
725デフォルトの名無しさん:2006/09/11(月) 11:59:00
こんなんで応用問題なのか
726デフォルトの名無しさん:2006/09/11(月) 12:21:01
FORTRANとかの課題をそのまま持ってきた感じだな
727デフォルトの名無しさん:2006/09/11(月) 12:23:46
728デフォルトの名無しさん:2006/09/11(月) 12:55:19
>>724
適当に作ったから、簡単にバッファオーバーランするが、気にするな。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2644.txt
729sage:2006/09/11(月) 13:05:44
>>728
ありがとうございます。
自分なりにこれを参考に、みないで作成してみます。
本当に助かりました。
>>727
何分、今月の頭から入門書からはじめたもので^^;
今後はなるべく気をつけたいと思います。
サイトをみて回ってて、scanfやgets()などがあまりよろしくないとは聞いていたんですが、
その理由がようやくわかりました。
ありがとうございました。
730デフォルトの名無しさん:2006/09/11(月) 13:45:55
マージソートくらいのことでマジになっている m9(^д^)プギャー
731デフォルトの名無しさん:2006/09/11(月) 14:02:37
そーとーストレスが溜まっている>>730に乾杯
732デフォルトの名無しさん:2006/09/11(月) 14:24:49
ギャグだろ。
733デフォルトの名無しさん:2006/09/11(月) 14:30:54
>>731
っつか、そーっとしておいてくれ・・・
734デフォルトの名無しさん:2006/09/11(月) 14:48:48
この流れワロタ
735デフォルトの名無しさん:2006/09/11(月) 15:41:19
[1] 授業単元: ファイル入出力
[2] 問題 『指定したファイルに、文字列を挿入するファイルを作成せよ。(行数指定)』
ファイル名、文字列と行数を入力させ、もともと用意してあったテキスト(内容有)
の指定した行数目に、文字列を挿入するんですが、どうやったらできるのか検討がつきません。
よろしければ、教授いただければと、思います。
よろしくお願いいたします
[3] 環境
 [3.1] OS: WindowsXP ProSp2
 [3.2] VC 6.0
 [3.3] 言語: C
 [4] 期限: 9/14日迄
 [5] その他の制限: 別ファイルを作成して、文字列の内容を退避させるのは駄目だそうです。

よろしくお願いします。
736デフォルトの名無しさん:2006/09/11(月) 15:49:43
>>735
釣り? 一般的に、テキストファイルの中間に文字列を挿入するにはファイルの内容を一旦退避する必要があるのだけれど。
#それとも、メモリ上に退避しろということなのかな?
737デフォルトの名無しさん:2006/09/11(月) 15:54:22
>>736
普通はメモリ上に退避させると考えるだろ。
別ファイルを作成してって部分が読めなかったのか?
738デフォルトの名無しさん:2006/09/11(月) 15:58:00
>>736
挿入するサイズの分だけファイルのサイズを増やし、
挿入終了位置より後ろのデータを全て挿入するサイズ分、後ろに動かす。
その後動かして開いた空間に文字列を入れる。
という方法を使えば退避なしに出来るんじゃね。
739デフォルトの名無しさん:2006/09/11(月) 15:59:01
別ファイル作に作るのならメモリ上に退避させる必要ないじゃないか。
740デフォルトの名無しさん:2006/09/11(月) 16:02:41
そろそろありきたりの課題と回答例を集めたサイトが欲しいところ
741デフォルトの名無しさん:2006/09/11(月) 16:04:20
言い忘れてましたけど、対象とするファイルのサイズは4GB超えてる場合も対応する必要があるみたいです。
742デフォルトの名無しさん:2006/09/11(月) 16:16:08
>>741
うp
743デフォルトの名無しさん:2006/09/11(月) 16:18:51
4GB以上でも認識するファイルシステムを採用しているOSでやってください
744デフォルトの名無しさん:2006/09/11(月) 16:35:46
やってみた。いろいろ間違ってるだろうけど。責任はとらない。

main(int argc, char* argv[]) {
 FILE *in, *out;
 const char str = argv[3];
 int ln = atoi(argv[4]);
 in = fopen(argv[1], "rb");
 out = fopen(argv[2], "w");
 while(1) {
  int c;
  if(c == EOF) abort();
  if(c != '\r') {
   if(c != '\n') { fputc(c, out); continue; }
  } else if((c = fgetc(in) != '\n') ungetc(c, in);
  if(ln == 1) break;
  fputs("", out);
  ln--;
 }
 fputs(str);
 while(1) {
  char buf[1024];
  int len;
  if(0 => (len = fread(sizeof(*buf), sizeof(buf), in)) break;
  fwrite(sizeof(*buf), len, out);
 }
 fclose(in);
 fclose(out);
 return 0;
}
745デフォルトの名無しさん:2006/09/11(月) 16:50:54
735です。
やはりおかしいので、再度教授に確認をとったところ、
別ファイルの作成はOKとのことでした。
お手数お掛けしてすみません。
ただ、ファイル作成せずできるのは興味はありますが。

ちなみに、741は私じゃないです TT
746デフォルトの名無しさん:2006/09/11(月) 17:24:32
>>737
普通は、作業ファイルを使う。
何故なら、挿入処理がなんらかの事情で中断したときにファイルが破壊されるのを敬遠するから。
#そうでない糞アプリもあるが、それは別の問題。

>>738
その方法も、同様の問題を孕んでいるね。

>>739
ミスリードも甚だしい。

>>740
言い出しっぺの法則。

>>744
1行目から正しくないばかりか、3行目でエラーが出るとはなかなか剛毅なソースだな。
747デフォルトの名無しさん:2006/09/11(月) 17:33:50
>>746
お前の言う「普通(の方法)」は問題文に明記された指定よりも優先されるのか?
ファイルに退避せずに処理する方法がある以上、それを求められていると考えるのが
「普通(の態度)」じゃないか?
748デフォルトの名無しさん:2006/09/11(月) 17:51:54
問題文が全てと思うか、問題文の妥当性も疑うかのスタンスの違いじゃね。
後者の立場だからこそ、>736は「釣り?」って書いてるんだろ。
>736もどうかとは思うが、結果的に正しかったわけだな。
749デフォルトの名無しさん:2006/09/11(月) 18:54:38

どこからどうみても釣りです

本当にありがとうございました
750デフォルトの名無しさん:2006/09/11(月) 20:09:16
>>746
君このスレに向いてないよ
751デフォルトの名無しさん:2006/09/11(月) 20:35:52
300バイトのファイルの100バイト目に50バイト挿入する場合は、
100バイト目から最後までを読み取って、150バイト目から上書きし、100バイト目から
挿入する50バイトを上書きする。
これで別ファイルはいらなくなる。
752デフォルトの名無しさん:2006/09/11(月) 20:38:10
>>746
ごちゃごちゃ言ってねーで、回答してみろや、な?
753744:2006/09/11(月) 20:45:25
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2645.c
完璧にはテストしてないから、バグってたらごめんよ。

>>746
すまん。それケータイから打ってたもんで。
754デフォルトの名無しさん:2006/09/11(月) 20:50:15
>>753
4GB超えるとバグるね
755デフォルトの名無しさん:2006/09/11(月) 20:52:41
>>754
ホント?うーん、なんでだー
756デフォルトの名無しさん:2006/09/11(月) 20:53:06
いや、2GB超えたとこでバグると見た。
757デフォルトの名無しさん:2006/09/11(月) 20:53:45
intかw
758デフォルトの名無しさん:2006/09/11(月) 20:57:28
それと64bit対応の関数使わないと正しい値が取得できない。
759デフォルトの名無しさん:2006/09/11(月) 21:11:48
64bit対応の関数って標準のCに含まれてるんですか?
案の定バグってた。修正: http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2646.c
760デフォルトの名無しさん:2006/09/11(月) 21:44:46
>>751
ただし、途中で操作に失敗すると、元のデータも失う諸刃の剣。
761デフォルトの名無しさん:2006/09/11(月) 23:00:26
>>759 のコードを少し弄ってみた
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2648.txt
これで2GB/4GBオーバーの不具合起こすなら、ランタイムが悪い、はず。
バッファを頻繁にフラッシュするので遅いけどな(w
762デフォルトの名無しさん:2006/09/12(火) 00:52:18
成る程。そういうやり方もあるな…。
ファイルサイズ意識してないところがスマートですね。
763デフォルトの名無しさん:2006/09/12(火) 00:55:53
size_t が見向かれもしないところに泣いた
764デフォルトの名無しさん:2006/09/12(火) 01:03:13
>>761
#define __USE_FILE_OFFSET64 1
が必要になるんじゃないの?
765761:2006/09/12(火) 01:36:02
>>763
lenとbuflenはsize_tで脳内修正よろ。
今気付いたけど、片方のバッファは大きくしても良かったな、これ。

>>764
そこは理想論て事で。fseekの相対移動の方が良かったかも。
本来fpos_tの中身は隠蔽されているのだから、素で動作して欲しいところだけど。
766デフォルトの名無しさん:2006/09/12(火) 08:29:03
よろしくお願いします
プログラム基礎なのに問題のレベル高すぎ><

[1] 授業単元:プログラム基礎
[2] 問題文:メールアドレスか判定する関数を作りなさい。
  BOOL IsMailAddress(char *Addr);
  引数からわたされたAddrがメールアドレスのフォーマットに
  則しているか否か判定する。
  則していればTRUEを返し、そうでなければFALSEを返す。
[3] 環境
 [3.1] OS:Windows
 [3.2] VC++ 6.0
 [3.3] 言語:C++
[4] 期限:9/17
[5] その他の制限:特になし
767デフォルトの名無しさん:2006/09/12(火) 08:37:11
>メールアドレスのフォーマット
kwsk
768デフォルトの名無しさん:2006/09/12(火) 08:50:46
http://www.puni.net/~mimori/rfc/rfc2822.txt
メールアドレスのフォーマットは、これの3.4節の書式にそうようにとのことだそうです。
769デフォルトの名無しさん:2006/09/12(火) 09:22:15
lex/yacc様の出番だな。
770デフォルトの名無しさん:2006/09/12(火) 10:21:55
>>766
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2650.txt
dot-atom "@" dot-atom の対応だけ。

atmark += ((c = *Addr) == '@' && atmark < 2);
の行は
c = *Addr;
atmark += (c == '@' && atmark < 2);
に分けた方が良かったな。atmark<2も神経質過ぎるかも。
771デフォルトの名無しさん:2006/09/12(火) 10:28:21
正規表現を扱うクラスがあれば大した事なかろう
772デフォルトの名無しさん:2006/09/12(火) 11:08:28
Boost.Regexとか鬼車とか使っていいのん?
773デフォルトの名無しさん:2006/09/12(火) 13:05:28
こんなことすら投げ出すような連中が、何もできないくせに
プログラマ面して自分の部下として配属されるかと思うと寒気がする。
774デフォルトの名無しさん:2006/09/12(火) 13:16:05
>>773
お前のような上司に当たるほうが不幸せだろうがな。
775デフォルトの名無しさん:2006/09/12(火) 13:18:35
                |
                |
                |
               Σ°|||||Ε >>773
                  J
   .∩____∩: :.+
ワク. | ノ      ヽ+.:
:.ワク/  ●   ● | 食べたいクマー
  ミ  '' ( _●_)' 'ミ  
. /  ._  |_/__ノヽ
 -(___.)─(__)─
776デフォルトの名無しさん:2006/09/12(火) 13:37:48
>>773
あるいはお前の上司になるかもなwwwwwwwww
777デフォルトの名無しさん:2006/09/12(火) 13:50:56
学習能力もないゴミが学生面してんなよ。
脳みそ使うのが嫌ならさっさと退学しろ。
778777:2006/09/12(火) 13:54:35
[1] 授業単元: 実験1
[2] 問題文(含コード&リンク): ナインメンズモリスいう最古のパズルゲームの必勝手順(先手勝ちor後手勝ちor引き分け)を解くプログラムの作成。
  ナインメンズモリスの紹介:http://www.bu.st8.arena.ne.jp/game.hp/morris/1.html
[3] 環境
 [3.1] OS: Windows/Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C言語
[4] 期限: 2006年10月まで
[5] その他の制限: 特になしです。


ちょっと無理なお願いで難しいかもしれませんが、
どうかお助けください〜。
頼みます。
779デフォルトの名無しさん:2006/09/12(火) 14:05:25 BE:52408139-2BP(200)
あと3週間もあるのに丸投げとは、ハナから自分でやる気がないんだな。
後期が始まる前に退学したら?
780デフォルトの名無しさん:2006/09/12(火) 14:09:21
まぁまぁ
顔真っ赤にして怒るなよw
781デフォルトの名無しさん:2006/09/12(火) 14:16:50
性帝トーマス(w
782デフォルトの名無しさん:2006/09/12(火) 14:30:28 BE:67935757-2BP(200)
どこをどう読んだら怒ってるように見えるんだろう。
783デフォルトの名無しさん:2006/09/12(火) 14:32:08
>>777に対してだろ
784デフォルトの名無しさん:2006/09/12(火) 16:35:06
期限が迫ってからだと何故もっと早く言わなかったかと怒られるし、
質問のタイミングが難しいな。
785デフォルトの名無しさん:2006/09/12(火) 16:39:29
>>784
だから丸投げするくらいなら早く質問しろと。
切羽詰ってからじゃ本当の意味での丸投げになるだけだがw
786デフォルトの名無しさん:2006/09/12(火) 16:40:32
期限の長い課題を3日後までの期限だと偽ってここに投げればよい。
787デフォルトの名無しさん:2006/09/12(火) 17:10:31
わからんからと泣きついてきたくせに自分はさっさと帰宅する
そんな使えん後輩を思い出させるからやめれ。
788デフォルトの名無しさん:2006/09/12(火) 17:34:08
>>786
そうそう。そうすれば誰もやらないからw
789デフォルトの名無しさん:2006/09/12(火) 17:38:08
期限短いからどうせタイムアウトで無駄になるから
やらねーってやつが増えるだけかもなw
790デフォルトの名無しさん:2006/09/12(火) 17:39:26
だいたい1週間前くらいがオススメかな
791デフォルトの名無しさん:2006/09/12(火) 17:47:12 BE:139752689-2BP(200)
課題の規模にもよるな。
792デフォルトの名無しさん:2006/09/12(火) 21:56:51
この論文がナインメンズモリスの解法みたい。面倒臭そうなんでやらないけど。
ちなみに、総当りだと10^30通りぐらいらしい。

http://www.msri.org/publications/books/Book29/files/gasser.pdf
793デフォルトの名無しさん:2006/09/12(火) 22:16:12
>>792
千日手になる場合全部計算して検出か・・・まんどいな('A`)
794デフォルトの名無しさん:2006/09/12(火) 22:33:33
これって自分で解法見つけて解くんじゃないの?
795766:2006/09/12(火) 23:16:25
>>770 様はじめご意見を頂けた皆様、大変感謝いたします。
これから770をじっくり読んで勉強したいと思います。

ありがとうございました、また次も助けてください^^
796デフォルトの名無しさん:2006/09/13(水) 00:30:58
>>794
96年にやっと解法が見つかったのを、一学生が別の解き方を発見できるとは思わないが。
総当りだと膨大な時間が掛かるのは目に見えてるし。
797デフォルトの名無しさん:2006/09/13(水) 02:32:02
解法を見つけて、それをプログラム化しろって事なんだな
798デフォルトの名無しさん:2006/09/13(水) 02:54:16
[1] 授業単元: C言語研究1
[2] 問題文(含コード&リンク):
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2652.txt
[3] 環境
 [3.1] OS:Windows XP Pro SP2
 [3.2] コンパイラ名とバージョン: Visual Studio .NET 2003
 [3.3] 言語: C++
[4] 期限: 2006/9/13 23時59分
[5] その他の制限:
上記のソースを元に、コピーコンストラクタを利用してエラーを解消させる
malloc,flee関数をやめる

よろしくおねがいします
799デフォルトの名無しさん:2006/09/13(水) 02:54:54
Sage忘れ失礼しました
800デフォルトの名無しさん:2006/09/13(水) 03:10:17
>>798
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2654.txt

コピーコンストラクタだけでは、オブジェクト定義時にsamp ob(input())
みたいにしなければならないので、勝手にoperator=も定義しといた。
不要なら削っといて。
801デフォルトの名無しさん:2006/09/13(水) 03:39:04
>>800
ありがとうございました
802デフォルトの名無しさん:2006/09/13(水) 06:46:44
こういうメモリリークもりもりなソースを見ると寒気がする。
803デフォルトの名無しさん:2006/09/13(水) 08:17:53
漏れ方がハンパ無いなwww

開放くらい自分でやってくれって事なんだろうけど、
804デフォルトの名無しさん:2006/09/13(水) 10:00:52
[1] 授業単元: C言語基礎問題集
[2] 問題 コマンドプロンプトで動作する、COPYコマンドと同様な動作をするプログラム
、My_COPY.exeを作成しなさい。ただし、エクセルやワードファイルもコピーできるようにすること。
※一応自分なりにやってみたのですが、どうしてもエクセル、ワード複製できませんでした。
よろしくお願いします。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2655.txt
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] VC 6.0
 [3.3] 言語: C
 [4] 期限: 9/15日
 [5] その他の制限:

バイナリで出入力しただけではダメなのでしょうか。
入門書で乗っている範囲+ネットで調べてがんばってみたのですが。
よろしくお願いいたします。
805デフォルトの名無しさん:2006/09/13(水) 10:13:23
>>804
バイナリ転送で何故fscanfとfprintfなのか、
そこを訊ねたい。w
806デフォルトの名無しさん:2006/09/13(水) 10:13:46
>>724です。
>>728さんのを参考にして、提出したんですが、quit関数に引数を渡す必要がないと、言われてしまいました。
自分の考えではbuf内の文字列を変更するため先頭アドレスの引渡しは必要だと思うのですが、なにか別に方法があるのでしょうか?
戻り値は真偽の数値を渡すので使用できませんし。
よろしくお願いいたします。
807デフォルトの名無しさん:2006/09/13(水) 10:15:15
>>805さん
そうですか、出力関数に問題があるのでしょうか。
何分持っている入門書レベルでは、ファイル出力をそこまで扱っていないため、
参考サイトなどがあればお願いしたいのですが。
808805:2006/09/13(水) 10:20:26
809デフォルトの名無しさん:2006/09/13(水) 10:41:37
>>807さん
ありがとうございます。
さっそく、fread,fwriteを使って書き換えてみたのですが、エクセルをコピーさせてみると
いつまでたっても終了しない+複製先のエクセルデータが容量が増大していくといった事態になりました
終了条件やなにか、バイナリモードだと違うのでしょうか。
よろしくお願いいたします。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2656.txt
810デフォルトの名無しさん:2006/09/13(水) 10:44:25
ごめんなさい>>807は自分ですねw
>>808さんです
811805:2006/09/13(水) 11:00:57
812デフォルトの名無しさん:2006/09/13(水) 11:20:23
copyコマンドって結構大変じゃない?ワイルドカード対応とかも必要だし。

C:\>copy /?
1 つまたは複数のファイルを別の場所にコピーします。

COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/A | /B]送り側 [/A | /B]
[+ 送り側 [/A | /B] [+ ...]] [受け側 [/A | /B]]

送り側 コピーするファイル (複数可) を指定します。
/A ASCII テキスト ファイルとして扱います。
/B バイナリ ファイルとして扱います。
/D 受け側のファイルが暗号化が解除されて作成されるようにします。
受け側 新しいファイルのディレクトリまたはファイル名 (複数可) を指定し
ます。
/V 新しいファイルが正しく書き込まれたか検査します。
/N MS-DOS 形式以外の名前のファイルをコピーするときに、利用可能な
らば、短いファイル名を使用します。
/Y 受け側の既存のファイルを上書きする前に確認のメッセージを表示し
ません。
/-Y 受け側の既存のファイルを上書きする前に確認のメッセージを表示し
ます。
/Z ネットワーク ファイルを再起動可能モードでコピーします。

環境変数 COPYCMD でスイッチ /Y が設定されている場合があります。
このスイッチは、コマンド ラインから /-Y が指定されると無効になります。既定
では、COPY コマンドがバッチ スクリプトから実行されていない場合、上書き確認
メッセージが表示されます。

複数のファイルを付加するときは、受け側に 1 個のファイルを指定し、送り側に
複数のファイルを指定します (ワイルドカードを使うか、ファイル1+ファイル2+
813804:2006/09/13(水) 11:28:08
>>811
コピペしてみたらちゃんと動作しました。
これかれ、流れを一度見直して解読してから、自分で1から書いてみようと思います。
ありがとうございました

>>812
そうなんですか、一応実行例みると、ファイルを複製してる機能としか見えないので>>811さんの答えで問題ないかと
思われます。 ご指摘ありがとうございます。
814デフォルトの名無しさん:2006/09/13(水) 12:57:10
NTFSの副ストリームは対応しなくていいの?
とか混乱させてみる(w
815798:2006/09/13(水) 13:13:24
問題間違えというバカなことをやってしまいました、すいません

[1] 授業単元: C言語研究1
[2] 問題文(含コード&リンク):
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2658.txt
[3] 環境
 [3.1] OS:Windows XP Pro SP2
 [3.2] コンパイラ名とバージョン: Visual Studio .NET 2003
 [3.3] 言語: C++
[4] 期限: 2006/9/13 23時59分
[5] その他の制限:
上記のソースに含まれるエラーを修正せよ。
ただし、malloc,free関数の使用をやめ、演算子を用いて同様の処理を行う。
「参照」を利用してエラーを会費する。

neg()関数を呼び出すときに使用したoオブジェクトのpがさす整数を格納するメモリが
main関数で使用する前に解放されてしまっていることまではわかっています

どうぞよろしくお願いしますm( . . )m
816724:2006/09/13(水) 14:29:56
>>724です。
結局quit関数はメイン関数に記述したのですが、どうやら、エラーがでてた理由は
pinrt_data関数 sort_data関数に引数として入力処理のループ回数を引き渡せない(条件として関数に引き渡す引数の数が決まっている)
せいのようです。 この場合、関数内でどのようにして、n回の入力回数をメイン関数からそれぞれの関数に伝えたらいいでしょうか。
よろしくお願いいたします。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2659.txt
817デフォルトの名無しさん:2006/09/13(水) 14:39:04
>>815
free(p); -> delete p;
p = (int *)malloc(... -> p = new int;
int neg(dyna ob) -> int neg(dyna& ob)
818777:2006/09/13(水) 19:04:02
>>792様を始め様々な意見をありがとうございます。

ただ決して丸投げしてるわけではなく、自分では精一杯頑張っているつもりです。

解法は論文通りでいいので、それをプログラム化してほしいということです。
819デフォルトの名無しさん:2006/09/13(水) 19:29:30
自分でやれ
820デフォルトの名無しさん:2006/09/13(水) 22:03:03
やだよ、一人でやるオナ○ーなんて
821デフォルトの名無しさん:2006/09/13(水) 22:22:12
それ普通は一人でやるだろ
822デフォルトの名無しさん:2006/09/13(水) 23:55:42
何なら男2人でやるか(藁)
823デフォルトの名無しさん:2006/09/13(水) 23:57:53
男女あわせて複数人でやる、耐久レースもあります。
824デフォルトの名無しさん:2006/09/14(木) 00:00:18
解法があるのにコード書けないって
お前本当にC言語勉強してるのか?
というか、やる気ないだろ。
825デフォルトの名無しさん:2006/09/14(木) 00:03:09
>>824
お前が書けよ
826デフォルトの名無しさん:2006/09/14(木) 00:03:13
>>824
じゃあお前がやってやれよ。それとも口だけか?カス。
827デフォルトの名無しさん:2006/09/14(木) 02:05:10
>724
ぐろーばる変数を導入しり
828デフォルトの名無しさん:2006/09/14(木) 02:20:04
たらい回しにした挙句、結局誰も書かない予感。
829デフォルトの名無しさん:2006/09/14(木) 07:41:56
プログラマが面倒な事を自ら進んでやるケースは
唯一自分が得をする場合だけだ。w
830デフォルトの名無しさん:2006/09/14(木) 07:45:10
解法があったらつまらんし。
それに元々大して面白いモノでもないんだから、論文通り実装なんてやってられるか。
831デフォルトの名無しさん:2006/09/14(木) 16:34:23
[1] 授業単元:文字列
[2] 問題文:
関数int GetFreq(char c, char *s)を用いて、文字列の中から
実行時に与えた1文字の出現率を調べるプログラムを作成する

関数の定義
int GetFreq(char c, char *s)
第2引数(上記定義の変数s)に与えらた文字列の中に,
第1引数(定義の変数c)で与えた文字が何個あるか数え上げる
そして,数え上げた結果を戻り値として渡す。
第1引数(変数c)には,探す文字を渡す。
第2引数(変数s)には,検索対象となる文字列を渡す。
戻り値は,見つかった文字の個数を返す。

実行結果の例
(入力)This is a pen.
(入力)i
(結果)0.142857 (2/14)
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ:GCC
 [3.3] 言語:C
[4] 期限:

よろしくお願いします
832デフォルトの名無しさん:2006/09/14(木) 16:40:27
int GetFreq(char c, char *s) {
  int count = 0;
  for(; *s; s++)
    if (c == *s)
      count++;
  return count;
}
833デフォルトの名無しさん:2006/09/14(木) 19:02:13
>>831
ありがとうございます
834デフォルトの名無しさん:2006/09/14(木) 19:49:00
>>831ってなにかしたっけ?
835デフォルトの名無しさん:2006/09/14(木) 20:28:30
ぷよぷよのカセット貸しただろ。早く返せよ。
836A:2006/09/14(木) 22:06:07
課題でナンバープレートの検出・マーキングをするプログラムを
作るのですが、さっぱり分かりません。
2値化して、フィルタリングしてみたのですが
ナンバーをどのように検出したらいいのか思いつきません
教えてください。

[1] 授業単元: C言語画像処理
[2] 問題文(含コード&リンク):
http://mixi.jp/view_diary.pl?id=219949883&owner_id=4340300
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C++
[4] 期限: 2006年9月14日まで
837デフォルトの名無しさん:2006/09/14(木) 22:25:31
おねがいします。

自分のファイル名(x.exe)を読み込んで
xの部分がAすなわちA.exeだったらaを実行して
xの部分がBすなわちB.exeだったらbを実行する
っていうようなCのプログラムを教えてください。
838デフォルトの名無しさん:2006/09/14(木) 22:27:07
>>836
pgrしとくべきなのかのう・・・
画像から文字検出とかは、それこそ色々やり方あるから講義で説明されたなりしたのを
使ったほうがいいと思うんだぜ
839デフォルトの名無しさん:2006/09/14(木) 22:29:03
>>838
>pgr
プギャー?
840A:2006/09/14(木) 22:33:37
>>838
文字までは検出しないんです・・・
ナンバーの枠を検出できたらいいんですが
841デフォルトの名無しさん:2006/09/14(木) 22:37:54
エッジ抽出で、四隅と四辺を持つ構造を把握したら、
それがナンバーだ。

とか適当書いてみる。


>>837
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdllpro/html/_win32_getmodulefilename.asp

GetModuleFileName(NULL,buf,sizeof(buf))
で、ファイル名取って、あとは好きにするべし。
842デフォルトの名無しさん:2006/09/14(木) 22:45:07
>>841
そんな環境依存に手をださんでもargv[0]で十分じゃね。
843デフォルトの名無しさん:2006/09/14(木) 22:47:33
>>842
すいませんまったくの初心者なんでサンプルコードみたいなの
いただけるとうれしいです
844A:2006/09/14(木) 23:10:06
>>841
僕もまったくの初心者で
GetModuleFileName(NULL,buf,sizeof(buf))
をどぉしたらいいとかわからないのですが・・・
845デフォルトの名無しさん:2006/09/14(木) 23:45:41
>>844
実行ファイル名取って、ナンバーが識別できるのか?w
846デフォルトの名無しさん:2006/09/14(木) 23:57:10
いいカオス。
そろそろ次の課題が出ると、なお良し。
847デフォルトの名無しさん:2006/09/15(金) 00:07:14
.net2003vcでGDライブラリを使ってグラフを作成したいのですが、
環境構築ができません。
どなたか、経験ある方いませんか?
848デフォルトの名無しさん:2006/09/15(金) 00:15:32
>>836
宿題解いてやるからMixiに招待汁。
849デフォルトの名無しさん:2006/09/15(金) 01:02:42
850デフォルトの名無しさん:2006/09/15(金) 03:24:09
いいかげん、講義さぼった上で友達に聞いた課題をここに丸投げするのは止めろよ。
無駄なんだから。
851デフォルトの名無しさん:2006/09/15(金) 03:26:12
mixiなんて糞益体も無いものに招待なんかされたくねえ
mixi株を100万株俺に無償譲渡で宿題解いてやる
852デフォルトの名無しさん:2006/09/15(金) 03:47:28
>>844
#include <stdio.h>
#include <libgen.h>
#include <string.h>

void methodA() {
  printf("method A\n");
}

void methodB() {
  printf("method B\n");
}

int main(int argc, char **argv) {
  char *program_name;
  program_name = basename(argv[0]);
  if (!strcmp(program_name, "a.exe"))
    methodA();
  else if (!strcmp(program_name, "b.exe"))
    methodB();
  return 0;
}
853デフォルトの名無しさん:2006/09/15(金) 04:09:30
[1] 授業単元:C言語
[2] 問題文(含コード&リンク): http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2663.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン: Borland C++ 5.6
 [3.3] 言語: C
[4] 期限: 平成18年9月15日17時まで
[5] その他の制限:外部変数は使用禁止

私、さっぱりのド素人で何がなんだかわかりません。
できればソースUPしていただきたいのですが、お願いできないでしょうか?
854デフォルトの名無しさん:2006/09/15(金) 06:28:04
>>836
mixi見れないよヽ(`Д´)ノ ウワァァァン
855デフォルトの名無しさん:2006/09/15(金) 08:06:46
mixiなど俺の見れない所にソースをうpするなんて、喧嘩売ってんの?
856デフォルトの名無しさん:2006/09/15(金) 09:02:20
外部関数って何を指して言ってるんだろうlibc使っちゃダメってこと?!
857デフォルトの名無しさん:2006/09/15(金) 09:14:47
>>853
問題文のテキストには
>外部関数は使用禁止とする

>853には
>外部変数は使用禁止

外部変数と外部関数じゃかなり意味が違うんだがw
しかも範囲もよく分からんw

普通にstdio.hは使っていいんだよな?
OSが限定されてるからWin32APIつかえとかか?
あとbcc5.6って?
858デフォルトの名無しさん:2006/09/15(金) 14:15:01
>>853
授業やってんのにさっぱりのド素人って言ってる意味がわからん。
課題が出るたび、誰かに解いてもらってるのか?いみねーだろ
859デフォルトの名無しさん:2006/09/15(金) 16:04:19
>>858
クズは消えてね。
860デフォルトの名無しさん:2006/09/15(金) 17:16:53 BE:29115353-2BP(200)
このスレは丸投げするクズの隔離病棟です。
861デフォルトの名無しさん:2006/09/15(金) 17:40:21
おちこぼれ捨て場
862デフォルトの名無しさん:2006/09/15(金) 18:51:33
>>860
>>861
それならよし!
863デフォルトの名無しさん:2006/09/15(金) 18:54:26
このおち○こぼれどもめ。
864デフォルトの名無しさん:2006/09/15(金) 18:56:01
このスレは宿題と称して無駄な作業をさせて同業者の足を引っ張るスレです
学生のためになりませんからいくら現実逃避したくても誘いにのってはいけません
私が言うのですから間違いありません
865デフォルトの名無しさん:2006/09/15(金) 18:59:53
俺が思うに、プログラミングのこと教えてあげるのっていうことは、
なによりも自分のためになると思うんだけど
866デフォルトの名無しさん:2006/09/15(金) 19:14:54
ある程度の課題ならそうかもな
ここに投下される大半は基本中の基本すぎてためになることないけどな
867デフォルトの名無しさん:2006/09/15(金) 19:25:49
2006年 1月号 (第廿玖景)
できる奴は実行し、できない奴ほど教えたがる。
868デフォルトの名無しさん:2006/09/15(金) 19:44:30
プログラミングっていう観点からすれば、「実行する=ちゃんと動くプログラムを書くこと」だろうから、
このスレではそれが成り立たない気がするぜ。

その言葉の真意を察すると、
「教えるだけの人」っていうのは、口先だけで何だか正しいかどうかも分からない理屈を並べているだけで、
何もしないor出来ない人の事を指しているんだと思うよ。
本質的な意味は「机上の空論」に近いんじゃないかな?
869デフォルトの名無しさん:2006/09/15(金) 20:08:05
自分の言葉の真意を察するなんて多重人格なのか?
870デフォルトの名無しさん:2006/09/15(金) 20:27:25
その
って自分が直前に言ったことしか示せないんだっけ?
文脈により相手の言ったことも示せたと思うんだけど。
871デフォルトの名無しさん:2006/09/15(金) 21:05:49
日本語に不自由なやつが涌いてますねw
872デフォルトの名無しさん:2006/09/15(金) 21:25:39
どうしてわざわざ人を傷つけること言うんだろう(´・ω・`)
おかしいと思ったら指摘してくれよ。
873デフォルトの名無しさん:2006/09/15(金) 21:58:00
>>871
っというお前が日本語が理解できない在日朝鮮人なんだろ?
日本語は日本人のための言語、頼むから朝鮮民族が
他国にずけずけと入り込んで生活保護を受けているくせに
日本語で「日本嫌いだ」とか言わないでくれよ?な?
頼むから祖国に帰って税金を納めて徴兵もされてこいや、な?
874デフォルトの名無しさん:2006/09/15(金) 22:02:42
[1] 授業単元:ファイル、構造体
[2] 問題文:
一行に名前と身長[cm]、体重[kg]がそれぞれスペースで区切られて左詰めにされ、
且つ複数名のデータが、それぞれ改行で区切られて記述されているテキストファイルが
ある.その末尾に新たに入力された1名分のデータを追加してファイルを上書きする
プログラムを書きなさい.
入力される名前はスペースのない20文字以内の英文字
身長,体重は整数で記述をする
プログラムの実行後,入力すべきファイル名を受け付ける
構造体の名前をdataで、構造体のメンバは
名前はchar型とし,nameとする
身長はint型とし,heightとする
体重はint型とし,weightとする
[3] 環境
[3.1] OS:winXP
[3.2] コンパイラ:gcc
[3.3] 言語:C

長くなりそうですがおねがいします。



875デフォルトの名無しさん:2006/09/15(金) 23:00:05
>>874
struct data{
    char name[21];
    int  weight,height;
};
main(_,filename){
    struct data dat;
    void*fp;
    printf("filename? ");scanf("%d",filename);
    printf("name    ? ");gets(dat.name);
    printf("height  ? ");scanf("%d",&dat.weight);
    printf("weight  ? ");scanf("%d",&dat.height);
    fprintf(fp=fopen(filename,"a"),"%s %d %d\n",dat.name,dat.weight,dat.height);
    fclose(fp);
}
876875:2006/09/15(金) 23:03:27
あ、bugってた
×    printf("filename? ");scanf("%d",filename);
○    printf("filename? ");gets(filename);
877デフォルトの名無しさん:2006/09/15(金) 23:27:38
878デフォルトの名無しさん:2006/09/16(土) 00:25:32
いまだに scanf を使う香具師があとを絶たない件
879デフォルトの名無しさん:2006/09/16(土) 00:31:44
別にscanf使ってもいいんじゃね?宿題くらい。
880デフォルトの名無しさん:2006/09/16(土) 00:49:22
人の宿題やるときくらいにしか使わないもんな
881デフォルトの名無しさん:2006/09/16(土) 04:02:39
>>878
未だにscanfも使えない初心者m9(^д^)プギャー
882デフォルトの名無しさん:2006/09/16(土) 04:19:31
普通、scanfみたいな問題ある関数は初心者以外は使わない。
まともな入力処理にしたければfgetsとsscanfを組み合わせて使え。
正しく入力される場合しか想定されてないプログラムなど糞だ。

まあ、ここに丸投げするようなレベルのアホにはscanfで十分だろうけど。
883デフォルトの名無しさん:2006/09/16(土) 04:27:21
>>882
書き込み疾きこと風の如し、
リアルの前では徐かなること林の如し、
2ちゃんで怒り狂うこと火の如し
PCの前を動かざること山の如し
884デフォルトの名無しさん:2006/09/16(土) 06:47:34
>>878
scanfを使って、初心者らしさを演出してるんですよ。
885デフォルトの名無しさん:2006/09/16(土) 07:28:14
>>875
遅くなりましたが、ありがとうございます
886デフォルトの名無しさん:2006/09/16(土) 07:32:41
データファイルがいくつもあるフォルダで
プログラムを実行し、ファイルを読みとるため、
データファイル名を入力するとき、入力補完機能をつけるにはどうすればよいのでようか?
長いファイル名をイチイチうつのが面倒なのですが
UNIX環境みたいにscanfで文字を入力する際に補完とかできないかと思いまして
887デフォルトの名無しさん:2006/09/16(土) 07:59:10
>>886
Windowsの話?
だったらこれ試してみて。良ければ結果も教えてくれ。
ttp://gnuwin32.sourceforge.net/packages/readline.htm
888デフォルトの名無しさん:2006/09/16(土) 10:17:45
マルチ
889デフォルトの名無しさん:2006/09/16(土) 12:10:29
>>887
readlineはGPLだから安易に使うわけにはいくまい。
890デフォルトの名無しさん:2006/09/16(土) 12:14:35
[1] 授業単元:プログラミング言語
[2] 問題文:数値をキー入力し、偶数、奇数を判定し、表示せよ。
[3] 環境
[3.1] OS:winXP
[3.2] コンパイラ:gcc
[3.3] 言語:C
[4] 期限: 平成18年9月17日24時まで
よろしくお願いします。


891886:2006/09/16(土) 13:04:36
>>887
Linux環境です

scanfで入力画面にうつってもtabで補完されないです
892デフォルトの名無しさん:2006/09/16(土) 13:09:23
>>890
#include <stdio.h>
int main() {
    int num;
    if (scanf("%d", &num))
        printf("%s\n", num % 2 ? "odd" : "even");
    return 0;
}
893デフォルトの名無しさん:2006/09/16(土) 14:25:37
>>891
だったら、なおさらreadlineを使え。
894デフォルトの名無しさん:2006/09/16(土) 16:38:29
>>892
実数の時はどうするの?
895デフォルトの名無しさん:2006/09/16(土) 17:03:41
 整数でないときは偶数・奇数の概念ないのでは?
896デフォルトの名無しさん:2006/09/16(土) 17:09:57
そうじゃなくて、実数値が入力されてきたらどうするよ?
ってことだと思うぞ。
897デフォルトの名無しさん:2006/09/16(土) 17:13:19
それは仕様が決まってないから未実装 (=どうなるかわかりません)
でいいんじゃない。

どうなるか知りたかったら、ちゃんとそこまで書いた問題をよこせ。
898デフォルトの名無しさん:2006/09/16(土) 19:41:30
不定になるのは未定義と言うな。
未実装だと仕様は決まってるけど、まだ作って無いだけを指すことも多い。
899デフォルトの名無しさん:2006/09/16(土) 20:42:08
puts(num % 2 ? "odd" : "even");
putsとかputcharの事も忘れないであげてください……
900デフォルトの名無しさん:2006/09/16(土) 21:41:24
正しいソースコードを入力できないプログラマがダメな奴だというのと同じくらい、
プログラムが求めている正しい入力ができないユーザはダメな奴だ。
そういう奴らは両手の指を使え。
901デフォルトの名無しさん:2006/09/16(土) 22:40:25
[1] 卒業研究:
[2] 質問です。

条件
AさんとBさんがいます。AさんとBさんは通信ができます。
AさんとBさんが通信を開始し、終了すると、その間の記録がログファイルとして
記録されます。
通信の開始は、キーボードからスタートと入力することにより開始されます。
終了は、キーボードからエンドと入力することにより、終了されます。



要求
通信を自動的に1時間ごと切り、1時間ごとのログファイルを作成したい。

アルゴリズムだけでもいいので
よろしくお願いいたします。
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] Visual C++6.0
 [3.3] 言語: C++
[4] 9月21日

よろしくおねがいします。
902デフォルトの名無しさん:2006/09/16(土) 22:43:55
>>901
何層からのログを取りたいのか
チャットのログを保存したいとかだったらぶちころすぞ(´・ω・`)
903デフォルトの名無しさん:2006/09/16(土) 23:37:55
>>901
誘導されてきたんなら、そう書いた方がいい。
マルチにも見えるぞ。

全体的に意味がよくわからんが、
一時ファイルにログを追加していき、切断のタイミングでファイルごと、
移動・リネームして一時間ごとのファイル名に変更、
一時ファイルは中身を削除して、さいしょからログを取るって流れじゃダメなのか?
不明点大杉。

・1時間ごとに切断するというのは、一時間毎にエンドとスタートを手動入力するのか?
・AさんとBさんというのは、システムではなく、生身のユーザなのか?
・つーか、卒研なら死ぬ気で手前でなんとかしやがれボケ
904デフォルトの名無しさん:2006/09/16(土) 23:40:09
>>901
こんなんが卒業研究としてまかり通るのか?
恐ろしい大学もあるもんだ。
905デフォルトの名無しさん:2006/09/17(日) 00:53:12
だよな。。流石に卒研は…
906デフォルトの名無しさん:2006/09/17(日) 01:56:20
ソケットプログラミングの演習にしか思えないな
907デフォルトの名無しさん:2006/09/17(日) 03:30:48
BSDソケットじゃつまらないから、受け狙いでDirectPlayを使え。
908デフォルトの名無しさん:2006/09/17(日) 03:51:42
単に「通信」としか書かれてないんだから
RS232Cを使った通信でやってみなよ。
909デフォルトの名無しさん:2006/09/17(日) 05:11:27
910デフォルトの名無しさん:2006/09/17(日) 05:46:17
>>905
卒研本番になって初めて基礎的な勉強を始める馬鹿というのもたまにはいる。
911デフォルトの名無しさん:2006/09/17(日) 05:47:50
大学名ぷりーず
912デフォルトの名無しさん:2006/09/17(日) 08:22:56
みなさん辛い意見でw
通信というのは気にしないでください。
そこのプログラムはできています。
AさんとBさんが通信をするとログファイルが生成される。
これもプログラム済みです。

ただ、その通信をキーボードからスタートさせ、キーボードからエンドと入力するまで
、その通信を自動的に1時間ごとに切り、1時間ごとのログファイルを生成したいのです。

よろしくお願いします。
913デフォルトの名無しさん:2006/09/17(日) 08:26:46
補足

流れとしては

キーボードからスタート入力→通信開始→1時間経過→通信終了→
ログファイル生成→通信開始→1時間経過→通信終了→ログファイル生成
→キーボードからエンド入力→終了。

みたいな感じです。

あとこの質問はほかのスレから誘導されてきました。
よろしくお願いします。
914デフォルトの名無しさん:2006/09/17(日) 08:33:46
>>912
画面に表示されるタイミングなり、通信のタイミングなり、自分のログを取りたいタイミングの
関数をwrapする関数を作り、それで元の関数を置き換える。
そのwrapする関数内でログに出力する。
ログの出力は、毎回ファイルオープン、書き込み、クローズを行う。
また、最後に出力された日時をstatic変数などで覚えておき、時刻の変わり目でログファイルの
切り替え(ログファイル名の変更)を行う。
915デフォルトの名無しさん:2006/09/17(日) 08:34:53
む、書き込んでいる間に変な補足が。
>>914は忘れてくれ。
916デフォルトの名無しさん:2006/09/17(日) 08:41:27
>>913 をそのままコードに起こすだけのようにしか見えない。
何を悩んでいるのかサッパリ解らん。
917デフォルトの名無しさん:2006/09/17(日) 08:51:25
>916
コードに起こしてみていただけますか?
悩んでいる点としては、キーボードから入力をすると開始されるまでは、
わかるのですが、その後その通信を1時間ごとに切らなくてはいけない。
それをキーボードからエンドと入力されるまで、ずっと繰り返す。
この点がどうプログラムしていいかわかりません。


918デフォルトの名無しさん:2006/09/17(日) 09:27:32
エンドの指示があるまでループすりゃいいじゃない
919デフォルトの名無しさん:2006/09/17(日) 10:47:11
入力を標準入力から読むようにしてて、その入力待ちでタイムアウトをコントロール出来ないとかそういう話じゃない?
よく知らないけどpselectとかでIOの状態を見てから読みに行けばいいのかな?
コンソールアプリに拘らなくていいなら、MFCとか.NETとか使ってGUIアプリのフレームワークの中でやればそういうことと無縁で済むかも知れない。
920デフォルトの名無しさん:2006/09/17(日) 10:53:55
単にタイマーの使い方がわかりませんってだけな気もする
誘導元ってどこなんだぜ?
921デフォルトの名無しさん:2006/09/17(日) 10:55:10
環境がWindows限定なんだから、
別にtimer用スレッド立てて、そっちでログ制御もやればよくね?
922デフォルトの名無しさん:2006/09/17(日) 14:00:48
// メインスレッド
while ( gets() ) {
if ( 通信中&サブスレッド死亡 ) 通信停止
if ( "start" ) 通信開始&サブスレッド開始
else if ( "end" ) サブスレッド停止&通信停止
else 通信開始してるなら送信
}

// サブスレッド
do { // 一時間で自動切断ならこのループはいらない
while ( 一時間経つまで ) {
if ( メインスレッドから停止指示 ) break;
select(); // 250ms位?
if ( IS_SET(受信) ) 受信文字列出力
}
ログ書き出し
} while ( !メインスレッドから停止指示 );

かなり適当だけど、こんな感じ?
923デフォルトの名無しさん:2006/09/17(日) 17:37:03
卒業研究なんだ・・・('Д`;)
924デフォルトの名無しさん:2006/09/17(日) 18:18:19
なんか絶望的なまでに日本語がダメっぽいんだが、これって本当に卒業目前の大学生なのか?
925デフォルトの名無しさん:2006/09/17(日) 18:22:45
高専 or 専門とか?
そこに卒研があるのかどうかは知らないが。
926デフォルトの名無しさん:2006/09/17(日) 18:26:40
専門でもあるとこはあるみたいだね
927デフォルトの名無しさん:2006/09/17(日) 19:52:58
大学名ぷりーず
928デフォルトの名無しさん:2006/09/17(日) 20:53:34
もっと学ぶべき言語があるはずだ!
929デフォルトの名無しさん:2006/09/17(日) 21:07:03
>>927「大学どこよ?おいらっち早稲田なんやけど〜wwwwww」
>>901「東大です」
927「・・・え・・・!?」
901「東京帝国大学です。」
927「・・・う、うわあ・・・ああ・・・ああああああああああ(イスから転げ落ちる)」
901「どうかしましたか?」
927「ああ、あふゥッ・・・ひいいい・・ガクガク(足が震える)」
901「やだなあ、そんなにびびらないで下さいよ。ちょっと頭がいいだけです
  から^^」
927「ああ・・あ・うんっ・ああ・・・ビクンビクン(小水を漏らす)」
901「ちなみに理3です。」
927「あんっ!ああん・・らめ・・・もうらめえ!ビクンビクン(射精する)」
930927:2006/09/17(日) 21:37:17
まぁ、私は高卒なわけですがw
931デフォルトの名無しさん:2006/09/17(日) 21:39:06
>>922
ありがとうございます。参考にしてみます!
あと卒業研究というのは、これじゃあありません。
もちろん。少し使うだけです。こんなんで卒業できたら、苦労しませんし。
みなさん親切にありがとうございました!

932デフォルトの名無しさん:2006/09/17(日) 21:50:55
少し使うだけのとこがわからないならメインの部分も相当わかってないんだろうな・・・
933デフォルトの名無しさん:2006/09/17(日) 21:51:32
いや、さすがに誰もこれで卒業するとは思ってないだろ・・・
こんなのを聞いてるようで卒業できるのかって思ってるだけで・・・
934デフォルトの名無しさん:2006/09/17(日) 21:56:31
院生にちょっとプログラムの手直しするよう頼まれたってとこじゃね?
935デフォルトの名無しさん:2006/09/17(日) 22:01:21
>>932
正解!そうなんです。ぜんぜん分かってません!
本当に卒業できるかな?
就職決まってるし、ヤバス!
936デフォルトの名無しさん:2006/09/17(日) 22:04:02
>>934
頼むより自分でやったほうが楽じゃね?
937デフォルトの名無しさん:2006/09/17(日) 22:10:04
>少し使うだけです。こんなんで卒業できたら、苦労しませんし。
なら聞くなや…
938デフォルトの名無しさん:2006/09/18(月) 21:25:03
>>935
できないと思う
939デフォルトの名無しさん:2006/09/18(月) 21:31:18
3月末までに3回くらい再発表のチャンスがある。
割と何とかなるもんだ。
940デフォルトの名無しさん:2006/09/18(月) 21:34:17
大学によっては何回も発表のチャンスがあるんだ・・・
941デフォルトの名無しさん:2006/09/20(水) 21:37:52
恋のチャンスをください
942デフォルトの名無しさん:2006/09/20(水) 21:44:45
>>941
総当りでその辺歩いている子に声掛ければ?
20人くらいに声掛けて一人も釣れなかったら恋は諦めろ
943デフォルトの名無しさん:2006/09/20(水) 21:45:32
あきらめます
944デフォルトの名無しさん:2006/09/20(水) 22:35:26
「Javaによるアルゴリズム事典」(技術評論社)に載ってる
安定な結婚のトピックはちょっとだけ面白かった
945デフォルトの名無しさん:2006/09/20(水) 22:52:28
>>944
kwsk
946デフォルトの名無しさん:2006/09/21(木) 00:24:07
>>944
「C言語によるアルゴリズム事典」じゃだめなん?内容同じでそ?
947デフォルトの名無しさん:2006/09/21(木) 12:31:30
【質問テンプレ】 
[1] 授業単元: 
[2] 問題文(含コード&リンク): 


@次の代入を実行したあとの変数aと変数bの値を予測せよ
例題 a=50; ++a;  答えa=51
問題1 a=50; b=++a;  答え a=?   b=?
問題2 a=66;  b=a++;  答え a=?   b=?
問題3 a=30; b=-a;  答え a=?  b=?
問題4 a=31;  b=a--;  答え a=?  b=?

A下記を参考に 「入力される実数が負の数の場合」に四捨五入するプログラムを完成させよ
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2652.txt

[3] 環境 
 [3.1] OS: (Windows/Linux/等々) WindowsXP
 [3.2] ボーランドC++コンパイラ
 [3.3] 言語: Cのみ
[4] 期限: 明日まで・・お願いしいます;;
[5] その他の制限: 
948デフォルトの名無しさん:2006/09/21(木) 12:35:53
問題文が間違ってましたごめんなさい

正しくは 問題3 a=30; b=--a;  答え a=?  b=?

素人で全くCプログラムが分かりません。助けて下さい。お願いします。 
949デフォルトの名無しさん:2006/09/21(木) 12:48:16
負の数の四捨五入の定義を示してくれ。あと、サンプルが違うぞ。
950デフォルトの名無しさん:2006/09/21(木) 13:20:08
元金100万円を年利率0.1%で預けた場合、
福利計算の元利合計WOが元金a円の50%を超えるには何年かかるか計算しなさい。
なお、複利計算で生じる1円未満は切り捨てのこと。

お願いします。
951デフォルトの名無しさん:2006/09/21(木) 13:24:39
>>950
それC/C++の問題じゃねーだろww
952デフォルトの名無しさん:2006/09/21(木) 13:47:58
>>950
>>1読んで書き直せ
953デフォルトの名無しさん:2006/09/21(木) 14:09:52
>>949
ごめんなさい間違えました
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2673.txt

私にも定義がわかりません。
大変申し訳ないのですがサンプルから
読み取ることは不可能でしょうか。
本当にお手数掛けますがよろしくお願いします。
954デフォルトの名無しさん:2006/09/21(木) 14:27:35
>>953
それすごくmixiでも見た記憶があるんだけど
955デフォルトの名無しさん:2006/09/21(木) 14:29:16
すごく初歩的なことですみません。
2次元配列とfor文を使って
1 2 3
4 5 6
7 8 9
と表示させるにはどうすれば出来ますか?
956955:2006/09/21(木) 14:41:57
3次元みたいです
957デフォルトの名無しさん:2006/09/21(木) 14:54:16
>>953
#include<stdio.h>

int main(void)
{
int seisu;
double jissu;

printf("実数=");
scanf("%lf", &jissu);

seisu = jissu - 0.5;

printf("%lf の四捨五入は%d です。\n", jissu, seisu);
}
958デフォルトの名無しさん:2006/09/21(木) 15:07:28
>>947
ちゃんと講義に出席して、一番前の席に座って話を聞け。
それだけでわかるだろ。
959デフォルトの名無しさん:2006/09/21(木) 15:12:33
>>955
配列をどこに使うんだ?

#include <stdio.h>

void main(){
    puts("1 2 3\n4 5 6\n7 8 9\n");
}
960デフォルトの名無しさん:2006/09/21(木) 15:14:49
>>958
ここは落ちこぼれの集まるとこだから、そいつらのためにならないように、俺たちが解いて
落ちるとこまで落とせばいいんだぜ?
961957:2006/09/21(木) 15:20:56
ごめん、>>957ちょっと訂正。
main 関数の戻り値に int を宣言しときながら、最後 return 0 するの忘れてた。
減点対象になるかも知れんので訂正。

#include<stdio.h>

int main(void)
{
int seisu;
double jissu;

printf("実数=");
scanf("%lf", &jissu);

seisu = jissu - 0.5;

printf("%lf の四捨五入は%d です。\n", jissu, seisu);

return 0;
}
962デフォルトの名無しさん:2006/09/21(木) 15:25:14
>>955
#include<stdio.h>

int main(void)
{
int i,j;
int hairetsu[3][3] = {{1,2,3},{4,5,6},{7,8,9}};

for(i = 0; i < 3; i++)
{
for(j = 0; j < 3; j++)
{
printf("%d ",hairetsu[i][j]);
}
printf("\n");
}
return 0;
}
963デフォルトの名無しさん:2006/09/21(木) 15:43:19
>>957>>960
ありがとうございます!何度も丁寧にすみません。無事にコンパイルできました。重ね重ねお礼申し上げます。明日に間に合いそうです。
>>958>>960
毎回欠かさずに授業に出ているのですが、さっぱりです。
>>954
mixiはやってないので分かりませんが、mixiに同じような問題があるのでしょうか?mixiやってみます!

厚かましいのですが、@の問題も分かる方がいらっしゃいいましたらよろしくお願いいたします。
964955:2006/09/21(木) 15:44:21
>>959
膨大な数値を表示する場合のときforなどを使わないと面倒なので学んで置きたかったんです。
>>962
ありがとうございます!
965デフォルトの名無しさん:2006/09/21(木) 15:50:34
>>961
それだと、-0.5を四捨五入すると-1になるけど、0.5の
四捨五入は1なので、四捨五入すると0になる範囲が
ほんのちょっと他の整数より狭いんだけど。
966デフォルトの名無しさん:2006/09/21(木) 16:56:01
問題1 a=50; b=++a; 答え a=51 b=51
問題2 a=66; b=a++; 答え a=66 b=67
問題3 a=30; b=--a; 答え a=29 b=29
問題4 a=31; b=a--; 答え a=31 b=30
だっけ。。
(a=a+1;って書くから 苦手なんだなw)
967デフォルトの名無しさん:2006/09/21(木) 17:11:00
>>965
0を中心に正負が繋がった数列上で考えた場合、0.5以上 が 1 になり、
0.5 未満が丸めて 0 になる範囲なら -0.5 以上は 0 になるべきという意味?
そこまで、数学的厳密さは要求されてない問題だと思う。それに負数の
四捨五入自体の数学的定義にそもそも曖昧さがあるものだし。
もし、正負の一貫性を要求するとしたら、基本的に負の場合も 0.5 を足すべき、
という事になるだろうけど、そもそも“四捨五入”という行為には数学的な正負の
一貫性とかは問われてないと思う。
設問からして正の四捨五入とは別個に負の四捨五入を作らせてるわけだし。
個人的には、表計算ソフトの ROUND 関数に負数を放り込んだときに返ってくる
答えと同じ思考の四捨五入で答えればよい問題だと思う。
968927:2006/09/21(木) 17:14:15
>>966
というか、前置インクリメントか、後置インクリメントかで意味が変わってしまうようなコードの書き方自体がC言語の瑣末な言語仕様に依存したものであり、可読性も低く推奨できない。
当然意味を知っていて読めないといけないものだけど、宿題としては適切でないね。
悪いコード例を読み解きましょうなんて課題は、出題者の自己満足でしかない。
もっと重要なことをやるべきだろうに。
969デフォルトの名無しさん:2006/09/21(木) 17:58:56
>>968
>というか、前置インクリメントか、後置インクリメントかで意味が変わってしまうようなコードの書き方自体がC言語の瑣末な言語仕様に依存したものであり、可読性も低く推奨できない。
使い分けるためにわざわざ二種類の構文が用意されているわけだし、
何より意味は明確に定義されているんだから躊躇せずに使うべきだ。
この構文を避けるというスタイル/ポリシーはあり得るが、これ自体が悪いコードでは決してない。
お前の主観的な可読性を押しつけられてはたまらん。
970デフォルトの名無しさん:2006/09/21(木) 18:12:19
やれやれ、インクレメント/デクレメントの前置・後置問題ってのはC言語では
演算子の評価結果と副作用の説明に一番いいというのに。

結局、評価と副作用すら理解しとらんド素人がなんか言っとるだけか。
971デフォルトの名無しさん:2006/09/21(木) 18:21:18 BE:46585038-2BP(200)
>>968
>前置インクリメントか、後置インクリメントかで意味が変わってしまうような

前置か後置かで意味を使い分けるために2種類のインクリメントがあるんだが。
972デフォルトの名無しさん:2006/09/21(木) 18:34:48
<<966
結局これでいいんかな・・

(俺が)あまり使わないから、自信無いんよ。。
973デフォルトの名無しさん:2006/09/21(木) 18:36:58
>>972
よくない。
1. 51,51
2. 67,66
3. 29,29
4. 30,31
974デフォルトの名無しさん:2006/09/21(木) 18:39:45
なんと。。
975デフォルトの名無しさん:2006/09/21(木) 19:45:56
>>966>>973
ありがとうございました;;感謝しています!本当にお手数掛けました。
これで提出できます。恩に着ます!

976デフォルトの名無しさん:2006/09/21(木) 20:41:51
if(!((menu == 1 || menu == 2) && data2 == 0))
/* menuの値が1またはmenuの値が2かつdata2が0これらが偽の場合 */

これを実行するとmenuに1と2以外のときdata2に0が入るとエラー文がでてしまいます。
教えてください><
977お願いします:2006/09/21(木) 20:44:40
C言語
途中に空白のない半角英数字からなる任意の40文字以内の文字列を
文字型配列に入力する。それが英小文字のa〜zならばaをb,bをc,cをd,・・・
zをaというように1つずつずらして置き換え,別の文字型配列に格納する。
a〜z以外の文字はそのまま別の配列に移す。文字列すべての検索と置き換え・
移し変えが終わったら,元の文字列と変換後の文字列を出力するプログラム。
お願いします〜
978デフォルトの名無しさん:2006/09/21(木) 20:48:46
>1嫁
979デフォルトの名無しさん:2006/09/21(木) 21:09:50
[1] 授業単元:情報
[2] 問題文(含コード&リンク):入力された数の半径の円の面積を求める
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C
[4] 期限: 数日中
[5] その他の制限: 特になし
980デフォルトの名無しさん:2006/09/21(木) 21:10:16
>>976
#include<stdio.h>
int main(void)
{
int menu = 3, data2 = 0;

if(!((menu == 1 || menu == 2) && data2 == 0))
{
printf("hoge\n");
}
return 0;
}

という、形で実行してみて何もエラーなんか出なかったけど。
てか、せめて環境とエラーメッセージの内容くらい最低限書いてくれ。
981(^-^) ◆MONSOON/qo :2006/09/21(木) 21:13:34
977
コンパイルしてないけど

char str1[40]="bAnVBFD8imMHG1lDNFGdMGHbMGH54kHJm8UKF6Sa", str2[40];

int i,m='a',n='z';

for(i=0;i<40;i++)
if( m<=str1[i] && str1[i]<n )str2[i]=str1[i]+1;
else if( str1[i]==n )str2[i]=m; else str2[i]=str1[i];
982(^-^) ◆MONSOON/qo :2006/09/21(木) 21:20:51
修正しマスタ

#include <stdio.h>

main(){
char str1[41]="bAnVBFz8imMHG1lDNFGdMGHbMGH54kHJm8UKF6Sa",
str2[41];str2[40]='\0';
int i,m='a',n='z';

for(i=0;i<40;i++)
if( m<=str1[i] && str1[i]<n )str2[i]=str1[i]+1;
else if( str1[i]==n )str2[i]=m; else str2[i]=str1[i];

printf("元の文字列=%s\n",str1);
printf("後の文字列=%s\n",str2);
}
983デフォルトの名無しさん:2006/09/21(木) 21:20:53
>>979

#include <math.h>
#include <stdio.h>

int main(){
  float r;

  printf("Please Input Radius>");
  scanf("%f",&r);

  printf("\n%f",r*r*M_PI);
}
984お願いします:2006/09/21(木) 21:33:53
すいません自分初心者でコンパイラ名とか良くわからないんですけど
freecommandlinetools_updateこんな名前です。
OSはXPです。
985デフォルトの名無しさん:2006/09/21(木) 21:35:42
C++関係の本が山の中から出てきた。来週はこれを捨てよう。
C++を勉強している若い人は人生を無駄しないように別の言語も考えたほうが良い。perlとか。
Javaも同じ。
986デフォルトの名無しさん:2006/09/21(木) 21:39:22
C++もPerlもJavaもやればおk
987デフォルトの名無しさん:2006/09/21(木) 21:44:20
勉強目的ならC#とかオススメだな
GUIでも簡単だから学習意欲も沸くだろうし
988デフォルトの名無しさん:2006/09/21(木) 21:54:48
>>984
たぶんbcc
が、おまいは誰だ
989お願いします:2006/09/21(木) 22:01:05
すいません977です。
990デフォルトの名無しさん:2006/09/21(木) 22:22:22
C/C++の宿題を片付けます 74代目
http://pc8.2ch.net/test/read.cgi/tech/1158844912/
991 ◆jG/Re6aTC. :2006/09/22(金) 08:12:43
[1] 授業単元:ネットワーク
[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2679.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: Visual Studio 2005
 [3.3] 言語: ベターCとしてC++
[4] 期限: 2006年09月25日12:00まで
[5] その他の制限: Winsock2を使用します。
ライブラリは、Cの標準ライブラリとSTLは使って大丈夫です。
基本的にコンソールアプリになります。

コーディングに関してはほとんど教えられておらず、Winsock FAQやMSDNを参考にして組め、と言われています。
言語はC++ですが、別にstdio.hを使っても大丈夫です。cstdioでもいいです。
あと、Winsock2ってことですが、無理にWinsock2の新機能を使わなくても、Winsock1の機能の方が使いやすければそれでも大丈夫です。
どうか、よろしくお願いいたします!
992991 ◆jG/Re6aTC. :2006/09/22(金) 08:15:44
あ、すみません。
次スレ立っていましたね。
移動しますので、よろしくお願いします。
993デフォルトの名無しさん:2006/09/22(金) 09:50:09
(凄い●投げですorz)
994デフォルトの名無しさん:2006/09/22(金) 12:10:13
>>979
main()
{
int r;
scanf("%d", &r);
printf("半径%dの円の面積は、およそ%d\n", r, r*r*3);
}
995デフォルトの名無しさん:2006/09/22(金) 13:30:27
3かよw
996デフォルトの名無しさん:2006/09/22(金) 13:54:49
3はちょっとなぁ・・・
997927:2006/09/22(金) 14:04:46
本物のゆとり教育世代!
998デフォルトの名無しさん:2006/09/22(金) 14:13:18
3も3.1415もどうせ近似値に過ぎないから大差ない。
出てくる答えはどちらも「およそ」の面積でしかないし。
999デフォルトの名無しさん:2006/09/22(金) 15:20:35
999GET
1000デフォルトの名無しさん:2006/09/22(金) 15:23:23
痔スレマダー?オチンチン
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。