トップページ⇒tech
1001コメント402KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG?2BP(12)
あなたが解けない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++の宿題を片付けます 76代目
http://pc8.2ch.net/test/read.cgi/tech/1162771475/
【過去スレ一覧】
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
0102デフォルトの名無しさん2006/11/23(木) 02:15:03
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):ファイルを読み込み、各行が逆順に出るようなプログラムを作る。
条件・一行の文字数や、行数の制限を行わない事。
   ・同じファイルを二回以上オープンしない事。
   ・メモリに異常が発生した場合は、検知し、確実に異常終了させる事。
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:mingw-jp
 [3.3] 言語:C++
[4] 期限:2006年11月24日
[5] その他の制限:
0103デフォルトの名無しさん2006/11/23(木) 02:33:25
>>102
#include <iostream>
#include <fstream>
#include <string>
#include <vector>

int main()
{
std::ifstream ifs("ファイル名");
std::string str;
std::vector<std::ios::pos_type> vpos;
std::ios::pos_type tmp;

while (tmp = ifs.tellg(), std::getline(ifs, str))
vpos.push_back(tmp);

ifs.clear();
std::vector<std::ios::pos_type>::reverse_iterator ipos = vpos.rbegin();

while (ipos != vpos.rend()) {
ifs.seekg(*ipos);
std::getline(ifs, str);
std::cout << str << std::endl;
++ipos;
}
}
0104デフォルトの名無しさん2006/11/23(木) 02:47:39
メモリの異常を検知って、何気に無茶なことを書いてるな。
0105デフォルトの名無しさん2006/11/23(木) 02:52:35
メモリが足りなくなったら、程度に読み替えておけばいいんじゃね?
vectorやstringは勝手に例外投げるし、敢えてtryブロックにする
必要もないかと。
0106デフォルトの名無しさん2006/11/23(木) 03:06:55
:-)
0107デフォルトの名無しさん2006/11/23(木) 03:24:20
>・メモリに異常が発生した場合は、検知し、確実に異常終了させる事。

確実に『異常終了』かよwwwww
0108デフォルトの名無しさん2006/11/23(木) 03:28:22
確実にOSでもクラッシュさせるかw
0109デフォルトの名無しさん2006/11/23(木) 03:35:59
abort()使えって意味だろ?
0110デフォルトの名無しさん2006/11/23(木) 03:38:43
マンドクサ('A`)誰かやってくれ
0111デフォルトの名無しさん2006/11/23(木) 03:45:31
SIGなんちゃら受け取って死なせりゃええやん
0112デフォルトの名無しさん2006/11/23(木) 04:02:52
つ 電源ボタン
0113デフォルトの名無しさん2006/11/23(木) 04:08:13
HDDのパーティションでも破壊する?
0114デフォルトの名無しさんNGNG?2BP(200)
>一行の文字数や、行数の制限を行わない事。

何気にマンドクサイな。
つか1行が2GB以上あったらむりぽ。
0115デフォルトの名無しさん2006/11/23(木) 08:22:01
>>105
メモリが足りなくなることはメモリに異常が発生したとは言わない。
メモリセルが突然死したりすることをメモリに異常が発生したと言うのだ。
011678 ◆h340fzU7jQ 2006/11/23(木) 12:17:04
>>101
お前、ホント迷惑。
質問がスルーされるからやめてくんない??
まぁ、それが目当てなんだろうけどさ。
011778 ◆xx0MKhQsgU 2006/11/23(木) 12:28:00
>>116
鳥付ければいいってものじゃないです><
0118デフォルトの名無しさん2006/11/23(木) 12:32:23
>>116
100 も 116 も本当の 78 であるかは甚だ疑問だが、101 は、

リンク自体は自由に属し制限することができないのにそれを制限しようとしたり、
問題文のコピーは著作権法で制限されているのにそれを無視するといった、
自分に都合の良いダブルスタンダードをからかっているのでは。
0119デフォルトの名無しさん2006/11/23(木) 12:34:14
>>78
rar が解凍できね。
圧縮形式を zip か lzh にしてくれないかな?
もしくは rar を解凍するコードを貼ってくれてもおkだけどな。
012078 ◆h340fzU7jQ 2006/11/23(木) 12:54:09
>>119
ttp://strawberry.web-sv.com:900/Sn/5/vdf/bh5175.zip.html
どーぞ。
0121デフォルトの名無しさん2006/11/23(木) 12:58:21
>>118
それがゆとり教育世代

なのかも。
0122デフォルトの名無しさん2006/11/23(木) 13:02:14
肖像権とかは問題ないのか?あれ
0123デフォルトの名無しさん2006/11/23(木) 13:24:19
>>122
ひょっとして、肖像権に問題ありそうなのか
同じような課題2つに、更に78トリ付二人もいるしね

やっぱり、>>78世代は>>118の "自分に都合の良いダブルスタンダード"を持つ世代
なのかも
0124デフォルトの名無しさん2006/11/23(木) 13:51:45
>>78
ができない、俺が言うことではないと思うが、
自由に発言することは結構だが、他人に迷惑かけんのはやめなよ。
0125デフォルトの名無しさん2006/11/23(木) 13:57:53
>>123
んな事言ったら、ココに質問に来るやつら、
全員、都合の良いやつらだぉ(^ω^)
0126デフォルトの名無しさん2006/11/23(木) 14:22:37
>>125
言葉遣いがどうあろうと、人の善意をタダで利用するという意味で募金詐欺と大差ない。
ただ、善意を利用するということが暗黙の了解であるだけマシというだけ。
質問者を貶しても心を痛める必要は全くない。
0127デフォルトの名無しさん2006/11/23(木) 14:26:15
>>125
でも丸投げするだけならダブルスタンダードではない。
社会で通用する考え方かどうかはともかく、自己矛盾はしてない。
0128デフォルトの名無しさん2006/11/23(木) 14:45:42
>>78が自分の写真を使ってるなら問題にならないけど、
そうじゃないなら勝手にアップロードしてバラまくのは問題じゃないかな?
それともフリーな写真素材かなんかを使ってるんだろうか
0129デフォルトの名無しさん2006/11/23(木) 14:47:18
>>126
不正は質問者と回答者の間で起きてるんじゃない、出題者と質問者の間で起きてるんだ!
0130デフォルトの名無しさん2006/11/23(木) 14:48:16
ぉぃおぃ、ダブルスタンダードとか、
他で、やってんくんない??君ら。
0131デフォルトの名無しさん2006/11/23(木) 14:50:12
ダブルスタンダードってこういうこと?
#include<stdio.h>
#include<stdlib.h>
0132デフォルトの名無しさん2006/11/23(木) 14:56:05
むしろこんな感じ?
#include <sys/socket.h>
#include <winsock2.h>
0133デフォルトの名無しさん2006/11/23(木) 15:06:59
>>78
bmpの若い娘はだれ? 78自身?
0134デフォルトの名無しさん2006/11/23(木) 15:17:23
>>130
78自演乙
0135デフォルトの名無しさん2006/11/23(木) 16:25:08
>>102
#include <algorithm>
#include <fstream>
#include <iostream>
#include <iterator>
#include <string>
int main(int argc, char* argv[])
{
    if (argc != 2) return 1;
    std::ifstream ifs(argv[1]);
    std::string line;
    while (std::getline(ifs, line)) {
        std::copy(line.rbegin(), line.rend(), std::ostream_iterator<char>(std::cout));
        std::cout << std::endl;
    }
    return 0;
}
0136デフォルトの名無しさん2006/11/23(木) 18:07:53
>>135
それじゃ文字単位で逆になるだけだろ。
各行を逆に表示しなきゃならない。今の所まともに動くのは>>103だけ
0137デフォルトの名無しさん2006/11/23(木) 18:40:13
> 各行を逆に表示
これが曖昧

俺は>>103じゃなく>>135の意味だと思った
0138デフォルトの名無しさん2006/11/23(木) 18:43:19
漢字はどうすんの?
0139デフォルトの名無しさん2006/11/23(木) 18:46:34
漢字は逆の意味にすればいいんじゃね?
0140デフォルトの名無しさん2006/11/23(木) 18:47:18
かなり大変そうだな
0141デフォルトの名無しさん2006/11/23(木) 18:49:17
wifstreamを使えば十分だろ。
0142デフォルトの名無しさん2006/11/23(木) 18:50:08
行の入れ替えなら漢字は問題にならない。
0143デフォルトの名無しさん2006/11/23(木) 19:00:44
>>142
行の入れ替えはいいが、今行毎に文字を逆にするんではないかという
話になっている
0144デフォルトの名無しさん2006/11/23(木) 19:37:20
>>102の "各行が逆順に出る"をどのように解釈するか

A. ファイルの行を後ろから表示(ファイルの最初の行を最後に表示、そして、最後の行を最初に表示、stack)
B.1行の文字列を逆順に表示 (12345 -> 54321) 

漏れは、Bと解釈したが、喪前らどうよ
0145デフォルトの名無しさん2006/11/23(木) 19:53:19
>>144
AともBとも解釈できるがBなら他に適切な表現があると思う
だからA派
0146デフォルトの名無しさん2006/11/23(木) 20:09:08
おれもA派、文字を逆にじゃなくて行を逆になんで
0147デフォルトの名無しさん2006/11/23(木) 20:12:49
B
0148デフォルトの名無しさん2006/11/23(木) 20:27:28
Aっぽいな
行数の制限を行わないとか書いてあるし
0149デフォルトの名無しさん2006/11/23(木) 21:22:56
各行(それぞれひとつずつ)を逆にすると俺は解釈したからB派
というかAでもBでも課題としてはありそうだから解釈に困るなw
0150デフォルトの名無しさん2006/11/23(木) 21:45:52
>> クロマキー系

とりあえず、先頭の54バイトをコピーした後、
(1)3バイトごとに処理。
(2)YUV変換をかます。
0151デフォルトの名無しさん2006/11/23(木) 21:59:15
[1] 授業単元:データ構造
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3019.txt
このプログラムは有向グラフの閉オイラーパス(一筆書き)を求めるものであるが、無向グラフにも対応させよ。
ヒント
if(current[v]!=0){
push(current[v]);
while(top!=0){
while(current[v]!=0 && searched[(current[v]+1/2]!=0)
current[v]=adjlist[current[v]];
if(current[v]!=0){
a=current[v];
current[v]=adlist[a];
push(a);
}
else a=pop;
}

[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: borland
 [3.3] 言語: C
[4] 期限: 土曜
[5] その他の制限:
ヒントみても全然わからないです。よろしくお願いします!
0152デフォルトの名無しさん2006/11/23(木) 22:55:14
>>151
てめー期限が土曜なんてありえねー課題出してんじゃねー
ぶっ殺すぞ
絶対解いてやんねー
0153デフォルトの名無しさん2006/11/23(木) 23:13:23
>>78
クロマキーピクセルの(r,g,b)分布が(64,64,128)より青側にあるから
if ( R < 64 && G < 64 && B >= 128 ) {
で背景と人物のピクセルを切り替えればよい。
01541512006/11/23(木) 23:16:24
>>152
本当に土曜なんだよ。
お前みたいな異端児には頼まないから他の方よろしくお願いします。
0155デフォルトの名無しさん2006/11/23(木) 23:27:55
2006年はいらないとしても11月25日って書けばいいだろうに・・・
出来れば時間も書いて欲しい。00:00でもいいけど。
01561512006/11/23(木) 23:33:00
出来れば時間に余裕を持っておきたいので、なるべく今夜中に
お願いします。さっさとやらんかいボケどもめ
0157デフォルトの名無しさん2006/11/23(木) 23:35:27
>>154
ピーーーッ
>・・なんだよ とか お前みたいな異端児には頼まないから
他人の善意に期待してるんだから、こんなこと書くよる回答する気なくなるよ
 本当に土曜なんです、よろしくお願いします と書く!
世渡りうまくなれよ
01581572006/11/23(木) 23:38:26
他人の善意に期待してるんだから、こんなこと書くよる回答する気なくなるよ
**訂正**
他人の善意に期待してるんだから、こんなこと書くと回答する気なくなるよ
01591512006/11/23(木) 23:49:08
>>158
しがない俺にアドバイスをありがとうございます。
ねくらでひねくれてて友達もいなくて課題を誰にも相談することができなくて困ってるんです。
0160デフォルトの名無しさん2006/11/23(木) 23:49:15
ageで依頼する奴が、人を煽る際にsageで書くなんて現実性がない。
たぶん、質問者成りすまし。
まぁ俺は答える気が最初からないからどうでもいいけど
0161デフォルトの名無しさん2006/11/23(木) 23:50:18
だよな。俺が151って名前にすりゃ、それでわかんなくなっちゃうんだから大抵の暴言等は成りすまし。
0162デフォルトの名無しさん2006/11/23(木) 23:53:33
全部自演にしか見えないよ
0163デフォルトの名無しさん2006/11/23(木) 23:55:08
>>162は俺の自演ッス
すいませんッス
0164デフォルトの名無しさん2006/11/23(木) 23:57:32
まぁトリップをつけてない質問者が悪いんだけどな
0165デフォルトの名無しさん2006/11/24(金) 00:04:09
77代目スレは荒れてるな
0166デフォルトの名無しさん2006/11/24(金) 00:06:16
まさに荒らしの思う壺って所か
0167デフォルトの名無しさん 2006/11/24(金) 00:12:16
荒れてるね
お願いしますの言葉より、解答ソースを書き込んだ後の
ありがとうございましたって言葉の方が俺は欲しいな。
0168デフォルトの名無しさん2006/11/24(金) 00:20:57
いい加減ループはやめようか
0169デフォルトの名無しさん2006/11/24(金) 00:22:16
ループなしで課題をやれとな!?
0170デフォルトの名無しさん2006/11/24(金) 00:23:05
全部アンロールとかそれはそれで地獄
0171デフォルトの名無しさん2006/11/24(金) 00:29:15
ループがなければ再帰をつかえばいいじゃない。
                                    マリーアントワネット
0172デフォルトの名無しさん2006/11/24(金) 00:31:49
何でそんなややこしいことせなあかんのや!
おんどりゃぶっとばすぞ!
0173 ◆D2Ir/QRV8E 2006/11/24(金) 00:42:55
[1] 授業単元: C言語 
[2] 問題文(含コード&リンク):標準入力で入力された20個の数字をバブルソート
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC 6.0 
[3.3] 言語: C
[4] 期限: 日曜くらいまでにはお願いします。。。
[5] ちょっと端折りますが・・・ 

お願いします。
256桁までという仕様なんですがとりあえずint型の範囲で作ってます。
main、input、bubblesortの3つの関数を作ってます。
void bubbleSort(int **sortNumber, int length); char *input(void); int main()てな感じです。
マイナスの値のソートと文字列の判定が上手くいきません。
input関数でcharポインタを返して、バブルソート関数でmainでatoiでint型にしたポインタ配列を渡すのは途中経過を見せた時に変えちゃダメと言われたのでその辺を考慮してお願いします。。。
ソースを見せたいのですが>>1が死んでて、直で載せると改行が多すぎになるので困ってます。。。
0174デフォルトの名無しさん2006/11/24(金) 00:49:26
>>173
>>1は死んでねえよバカ
0175デフォルトの名無しさん2006/11/24(金) 01:05:56
>>174
荒し君、頑張ってるね、乙!
0176デフォルトの名無しさん 2006/11/24(金) 01:15:21
>>173
アップローダを使え
なにをどうゆう風にしたいのかいまいちわかんね
0177デフォルトの名無しさん2006/11/24(金) 01:18:35
>>171 ここの解答者はマリーアントワネットか。

釣り師の人に注文。面白そうな問題にしてね。
あ、出来上がってるところまでのソースもつけてくれると嬉しいな。
0178 ◆D2Ir/QRV8E 2006/11/24(金) 01:30:17
>>174

今出来ました!!ありがとうございます!!
エラーページになったので死んでるのかと思いました、

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.cgi?mode=thr&no=3020
0179デフォルトの名無しさん2006/11/24(金) 01:40:22
>>173
20個の数字(つまり0〜9)?
256桁(つまり10の256乗)まで?

まあエスパーにとっては序の口なんだろうが…
0180デフォルトの名無しさん 2006/11/24(金) 02:07:31
>>718
問題がないので省略って部分もちゃんと書いて
こっちでコンパイルしようと思ってもできないからね
0181デフォルトの名無しさん2006/11/24(金) 02:08:37
>>178
添付ファイルにして欲しいな
0182デフォルトの名無しさん2006/11/24(金) 02:14:22
荒れてるなあ
0183デフォルトの名無しさん2006/11/24(金) 02:20:54
if (*(sortNumber + nSortCnt) < *(sortNumber + nSortCnt -1)) {
intのポインタの大小比較したってしかたあるめい。


void bubbleSort(int *sortNumber, int length);

void bubbleSort(int *sortNumber, int length)
{

char *input(void)
{
return pNum; →?int *
}

/* 文字列の1文字目が\0の場合はループから抜ける */→?
0184デフォルトの名無しさん2006/11/24(金) 02:26:14
>>179
最大桁数256桁の数値20個ど思ふ
256桁には漏れも驚いたよ、long long intでも遠く及ばないし
尋常じゃない桁数なので、入力された文字列を数値変換しないで
文字列比較でソートしたほうが良いような気がするが

数値変換しなければならなそうなんで、頭の良い香具師に期待上げだな
0185デフォルトの名無しさん2006/11/24(金) 03:02:31
>>178
/* ここは問題無いようなので省略 */
こういうときは↑の部分に問題あることが多いからなあ

nNum の型と対応が取れているかどうかも確認したいので、全部晒せとしかいえない
0186デフォルトの名無しさん2006/11/24(金) 03:14:39
>>180
256桁なんかはよくある
例えばRSAなんか1024ビットだから10進数で300桁超だからな
0187 ◆/FsopyQZxE 2006/11/24(金) 03:27:11
[1] 授業単元: プログラミング�T
[2] 問題文(含コード&リンク): http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3022.txt
[3] 環境
 [3.1] OS: WindowsXP SP2
 [3.2] コンパイラ名とバージョン: VC++ 2005
 [3.3] 言語: C
[4] 期限: 今週中
取りあえず作ってみたのですが、どうしても上手くいきません。
よろしくお願いします。
0188デフォルトの名無しさん2006/11/24(金) 04:20:32
stdafx.hって言われてもよう
0189デフォルトの名無しさん2006/11/24(金) 04:23:48
血液型がRHだと珍しい人扱いってのも分からん話だな
教官はアホなのだろうか
0190デフォルトの名無しさん2006/11/24(金) 04:26:49
そもそも血液型で括るのがおかしい
0191デフォルトの名無しさん2006/11/24(金) 04:35:29
>if(a||A)

( ゚Д゚ )
0192デフォルトの名無しさん2006/11/24(金) 04:48:54
>>187
何とコメントしていいものやら・・・・・・
0193 ◆/FsopyQZxE 2006/11/24(金) 04:54:26
>>192
つまりダメダメってことですか・・・orz

>>188
#include<stdio.h>から上はVC++2005が勝手に付けたんで
そのままupしちゃいました、無視して下さい。

>>191
小文字と大文字のどちらでも動くようにって言われたもんですから・・・
取りあえず良くわかりません
0194デフォルトの名無しさん2006/11/24(金) 04:55:51
enumをcharにしてみよう
0195 ◆/FsopyQZxE 2006/11/24(金) 05:01:44
>>194
charにしました。何を入力して「貴重面な〜」が出ます・・・
あと、人数nに関しては、値を指定してないので変な数字が出るんですが、
そのやり方が分かりません。(a++とかを一体どこに・・・?)
0196デフォルトの名無しさん2006/11/24(金) 05:06:38
printf("几帳面な人。%d人目。\n",++anum);

とかでええんちゃうーん
0197デフォルトの名無しさん2006/11/24(金) 05:09:06
カウンタ初期化するのを忘れずに
0198 ◆/FsopyQZxE 2006/11/24(金) 05:17:31
>>196
なるほど、分かりました。
ただやっぱり何を入力しもて「几帳面〜」が出て、数字も変な
ままです・・・
すいませんが宜しくお願いします。

>>197
return 0;でいいんですよね・・・?
0199デフォルトの名無しさん2006/11/24(金) 05:21:27
>>198
>>191
0200デフォルトの名無しさん2006/11/24(金) 05:26:14
基礎からやりなおせ。
0201 ◆/FsopyQZxE 2006/11/24(金) 05:31:08
>>199
すいません、サッパリです・・・
■ このスレッドは過去ログ倉庫に格納されています