[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 08/07 07:52 / Filesize : 230 KB / Number-of Response : 708
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん [2007/09/21(金) 08:46:37 BE:340816166-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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

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

【前スレ】
C/C++の宿題を片付けます 95代目
pc11.2ch.net/test/read.cgi/tech/1187944110/

82 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 18:29:41 ]
どういう表示をさせたいの?

83 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 18:29:46 ]
>>80
int Factorial(int n)
{
int ret;
printf("関数Factorial(%d)にはいりました。\n",n);
ret = n > 0 ? Factorial(n-1) * n : 1;
printf("関数Factorial(%d)は%dを返して終了します\n",n, ret);
return ret;
}
こんな感じでどうよ?

84 名前:29 mailto:sage [2007/09/22(土) 18:50:30 ]
>>83
ありがとうございます。
おかげさまで分かりました。
ホントにありがとうございました。

>>82
>>83さんのおかげで分かりました。

>>81
しつこくてすみませんでした。

何度もしつこく聞いてしまったのに親切に返信してくれた
方々ありがとうございました。

85 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 19:19:42 ]
>>77
どういうこと?

86 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 19:31:10 ]
>>85
sa=-11 のとき
「それらの差は-11で11以上です。」
というおかしな表示になるよ。

87 名前:>>16 mailto:sage [2007/09/22(土) 20:10:26 ]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
int main(void){
    double reg = 0, mem = 0;
    char buf[128] = {0}, *p;
    while(1){
        scanf("%127s", buf);
        if(!strcmp(buf, "end:")) break;
        else if(!strcmp(buf, "M+")) mem += reg;
        else if(!strcmp(buf, "M-")) mem -= reg;
        else if(!strcmp(buf, "MR")) reg = mem;
        else if(!strcmp(buf, "RC")) reg = 0;
        else if(!strcmp(buf, "MC")) mem = 0;
        else if(isalpha(*buf)) fprintf(stderr, "error\n");
        else{
            p = buf;
            reg += strtod(p, &p);
            while(*p != '=' && *p != '\0')
                switch(*p++){
                case '+' : reg += strtod(p, &p); break;
                case '-' : reg -= strtod(p, &p); break;
                case '*' : reg *= strtod(p, &p); break;
                case '/' : reg /= strtod(p, &p); break;
                default : reg = strtod(p, &p); break;
                }
        }
        printf("reg = %g \t mem = %g\n", reg, mem);
    }
    return 0;
}

88 名前:87 mailto:sage [2007/09/22(土) 20:24:14 ]
>>87は無しで……

89 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 20:34:32 ]
残念ながら無しにはできない。このスレにはずっと残るし
ログを残している人はいつでもそのレスを見ることが出来る。
つまり、有るってことで。

90 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 20:50:33 ]
>>16 他の人に期待
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4950.txt



91 名前:16 [2007/09/23(日) 12:44:46 ]
>>90
リンク先を利用させてもらったのですが、どうも計算が上手くいきません。
たとえば「5+5=」と打ち込んで、「end:」で終了させても答えは出ず、
「reg=-1 mem=0」といった感じにしか表示されません。
おそらくレジスタが−1でメモリが0であることを表していると思うのですが、
肝心の計算結果がわかりません。
このプログラムをどのように修正すればよいのでしょうか?
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4950.txt

92 名前:デフォルトの名無しさん [2007/09/23(日) 13:21:49 ]
[1] 授業単元:C
[2] 問題文(含コード&リンク):
読み込んだ非負の整数血を逆順に表示。
[3] 環境
 [3.1] OS: Win Bcc32 C
[4] 期限:[無期限]
[5] その他の制限: ないです。

93 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 13:36:41 ]
血...

94 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 14:26:07 ]
>>91
>90のソースをコンパイルしたら一箇所だけエラーが出たので、それを修正してコンパイルしてみた。
--
$ ./a.out
5+5=
reg = 10 mem = 0
end:

$
--
普通に動いているようだが。

95 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 14:28:16 ]
>>91
なんかわかんなくなってきたから、実行例をいくつかください

96 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:03:31 ]
>>92
#include <stdio.h>
#define n 10
int main(int c,char**v){
int i,a[n];
if(c==1)for(i=0;i<n;i++)scanf("%d",&a[i]);
c!=n+1?printf("%d ",main(c+1,c==1?(char**)a:v)):0;
return c==1?0:*((int*)v+c-2);
}

97 名前:デフォルトの名無しさん [2007/09/23(日) 15:06:32 ]
>>92
スタックの勉強でもしてるのかな?

#include <stdio.h>
#define S_MAX 500

int stack[S_MAX];
int top=-1;

void push(int x){
stack[++top] = x;
}
int pop(){
return stack[top--];
}
int main(){
int i=1;
while(i!=0){
printf("非負値の入力(0で終了):");
scanf("%d", &i);
if(i<0){
printf("非負値じゃないとダメです\n");
}else if(i!=0){
push(i);
}
}
printf("--- 結果 ---\n");
while(top!=-1){
printf("%d\n", pop());
}
return 0;
}

98 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:07:52 ]
かぶった・・・orz

99 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:09:26 ]
>>97
do whileを勉強しています。

100 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:11:59 ]
#include <stdio.h>
int main(void)
{
int num;

do {
printf("非負の整数:");
scanf("%d",&num);

if (num<0)
puts("その数は負の数です。");
} while (num<0);

printf("その数を逆から読むと、");

do {
printf("%d",num%10);
num=num/10;
} while (num>0);
puts("です。");
return (0);
}




101 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:12:12 ]
do while か。そのくらいだったら、逆にスタック使うと不自然だなw
>>96のforをdowhileに直した方がいいね

102 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:14:21 ]
>>100
ちょwwwそういう意味の問題だったのかwww

103 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:16:52 ]
ちょwwwちょwww

104 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:17:00 ]
ちょwwwだったのかwww

105 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:18:30 ]
ちょwwwが多すぎワロタwww

106 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 15:20:04 ]
>>16
電卓っぽく。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4952.txt

実行例書いてくれれば、あとで直す。

107 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 16:22:05 ]
>>106
1+1=
と打っても真っ暗だよ。

108 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 16:31:21 ]
>と打っても真っ暗だよ。
そりゃあんたの「お先」だろ。

109 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:00:54 ]
[1] 授業単元:GUIプログラミング
[2] 問題文(含コード&リンク):
エディットコントロールにアドレスを入れてボタンを押すと、
そのページを表示するプログラムを作れ。
[3] 環境
 [3.1] OS: WinXP
 [3.2] Borland C++ 5.5
 [3.3] C言語
[4] 期限:9月25日まで
[5] その他の制限: 要は超簡易ブラウザです。
オリジナリティをつけろとの事なので、表示しているページに何か変化があった場合、
(例えばリンクの移動だとか、ボタンクリックだとか、フォームに入力だとか)、
エディットコントロールに変化がありましたって表示するような感じの機能をつけてもらえると幸いです。

110 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:03:15 ]
>>109
どこの大学?



111 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:05:45 ]
大学というか専門学校。特定されるとあれなので・・・。

112 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:12:25 ]
>>109
GUI とネットワーク接続に関するライブラリは何を使ってよいの?

113 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:17:21 ]
>>112
特に指定はないです。むしろ大事なのはUIなんです。
使用者に使いやすい設計を心がける事って言われたんですが・・・。
それにしても1から作れって鬼杉。ある程度の機能もったブラウザをいじれって言うならまだしも。
で、あたふたしてると期限が近づいてきて俺涙目みたいな・・・

114 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:21:24 ]
俺涙目みたいな・・・

115 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:22:01 ]
>>113
有料のライブラリとか使ったらあんたが困るでしょ?

講義で過去に作ったプログラムなどがあったらそれを
アップしてもらうのが話が早くて楽なんだけどな。

116 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:22:44 ]
そんなこと言ったって、俺涙目みたいな・・・

117 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:23:31 ]
やっぱり俺涙目みたいな・・・

118 名前:デフォルトの名無しさん [2007/09/23(日) 18:26:37 ]
どうしても俺涙目みたいな・・・

119 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:27:47 ]
お前ら、俺涙目なのに、いじんな!

120 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:27:55 ]
っていうか、涙目みたいな



121 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:30:06 ]
>>115
なるほど、有料は確かに困ります。
講義で用意されたものは何もないのですが・・・。

一応自分でも色々と調べてみたのですが、IEコンポーネントを使うのが楽そうな感じでしたね。
ただ、VC++とかばかりでなかなか。Borlandじゃコンパイル出来なかったりしてもうワケワカラン状態です。
コンパイラはBorlandと書きましたが、実はこれは指定されてるわけではないです。学校のパソコンにはVisual Studio .netが
入ってますが、家にはBorlandを入れてます。さすがに有料はキツイって事で・・・。でも家でコーディングできないと不便なのでBorland。

122 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:32:01 ]
涙目みたいな・・・ってこんなにレスがつくとは思わなかった・・・
精神的な話だから、実際には泣いてないんだぜ。

123 名前:デフォルトの名無しさん [2007/09/23(日) 18:32:04 ]
もうワケワカラン状態で、さすがに有料はキツイって事で・・・俺涙目みたいな・・・

124 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:32:18 ]
VC++EEでも入れればいいじゃん

125 名前:109 mailto:sage [2007/09/23(日) 18:34:54 ]
>>124
一つのコンパイラで全部やろうって考え自体おかしいんですかね?
ノートなのであまり重たいのは入れたくないなと思ってBorlandにしてみました。
その後Turbo C++入れて、一気に重くなってげんなりしてます。

というか、コンパイラの違いってなんなんですか・・・どれがいいとかあるんですか?って質問はスレ違いですね

126 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:35:26 ]
ぐだぐだ質問してんじゃねえよ。

127 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:35:57 ]
>>125
スレ違いって分かってるんだったら、書き込むなよ。

128 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:36:06 ]
っていうか、俺涙目みたいな・・・

129 名前:109 mailto:sage [2007/09/23(日) 18:36:51 ]
では黙って片付くのを待ちます。。。
涙目です。

130 名前:デフォルトの名無しさん [2007/09/23(日) 18:36:55 ]
>>122
こいつアホだ。実際に泣いてるかどうかではなく、
そんなことを書き込むことを皆、からかってるのに。




131 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:48:08 ]
>>129
> そのページを表示する
って、一般的なサイト全て?
単純なボタンやフォーム程度なら自分でHTML解析してできるだろうけど、
そうじゃないならIEコンポやGecko使うしかないと思うよ

132 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:49:39 ]
せめて環境を固定してくれないと着手すらできんな。

133 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:02:33 ]
VCEEでいいじゃん
MFC使えないのかな

134 名前:109 mailto:sage [2007/09/23(日) 19:27:49 ]
すみません、飯を食べてました。

>>131-133
オリジナリティはもう少し練りたいと思います。ので、最低限の機能を持ったブラウザの実装をお願いします。
その後のUIやオリジナル機能は自分で頑張ってみます。とはいえ、時間はあまり残ってないのですが・・・。
IEコンポーネント使用で、コンパイラはBorlandC++5.5で出来る範囲でお願いします。
有料なものを使わなければ特に制限はないです。やりやすい形でお願いします。

もしBorlandじゃどうしてもダメというなら、私がVCを入れます。

135 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:29:00 ]
ちまちま、後だしするなよ。
最初にまとめて書け。

136 名前:109 mailto:sage [2007/09/23(日) 19:32:48 ]
申し訳ないです。
>>134でお願いします。

137 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:35:02 ]
最初から、依頼しなおしたほうがいいんじゃないか?

138 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:38:13 ]
>>109
最初からやり直せ。

139 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:38:24 ]
っていうか俺涙目・・・

140 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:38:45 ]
>>134
VC入れて、IEコンポでぐぐってサンプル拾ってコンパイル。

ここまではできるだろう。



141 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:40:07 ]
とりあえず依頼しなおします。

[1] 授業単元:GUIプログラミング
[2] 問題文(含コード&リンク):
エディットコントロールにアドレスを入れてボタンを押すと、
そのページを表示するプログラムを作れ。
[3] 環境
 [3.1] OS: WinXP
 [3.2] Borland C++ 5.5
 [3.3] C言語
[4] 期限:9月25日まで
[5] その他の制限: IEコンポーネントを使用。有料のものは使用しない事。

142 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:44:00 ]
>>140
VC++でIEコンポーネントのサンプルを置いてる良さそうなサイトはGoogleのトップに出てきたのですが、
Borlandだとインクルードファイルがなくて、コンパイル通らないですね。VC入れろと言われたら終わりですけど。
むしろそっちの方が幸せになれるのかな・・・

143 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:47:09 ]
>>142
依頼しなおしたのなら、黙ってろ。

144 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:50:25 ]
もうワケワカラン状態で、さすがに有料はキツイって事で・・・俺涙目みたいな・・・むしろそっちの方が幸せになれるのかな・・・

145 名前:16 [2007/09/23(日) 19:58:52 ]
>>106
1+1=
2 ←(計算毎に答えは出る)
3+3=
6
M+ ←(直前の計算結果がメモリに。この場合6)
MR+1=
7
end:(計算終了)
といった具合がベストだと思うのですが。
(問題には書いていなかったので、質問発言時に書けませんでした。
これも先生が望んでいる解答結果とはわかりませんが…)
度々申し訳ないのですが、よろしくお願いします。

146 名前:デフォルトの名無しさん [2007/09/23(日) 20:16:02 ]
[1] 授業単元: C言語基礎
[2] 問題文(含コード&リンク):
キーボードからn+m,n-m,n*m,n/mを入力し、演算結果を出力せよ。
結果出力後は「再入力:」と出力し、再度計算できるように
ループさせる。
「off:」と入力することで計算を終了させる。

演算結果例:
 5+6
 11
 再入力:
 6*7
 42
 再入力:
 off:
 (計算終了)
[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン: (gcc)
 [3.3] 言語: (C言語)
[4] 期限: [2007年9月23日まで]
[5] その他の制限:特になし


147 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 20:19:36 ]
>>146
その形式以外の入力はないと仮定していいのか?

148 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 21:04:40 ]
>>146
>>16と共同で頑張れ

149 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 21:18:50 ]
みたところ、一桁の演算だけど、それだけいいのか?

150 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 22:02:41 ]
>>145
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4954.txt



151 名前:150 mailto:sage [2007/09/23(日) 22:06:13 ]
多分、先生が求めるのは>>106だけどな

152 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 22:11:32 ]
>>130
みんなかどうかは怪しいけどなw

153 名前:146 [2007/09/23(日) 23:19:02 ]
>>147
そうです。命令はn+m,n-m,n*m,n/m4つのみです。
>>149
桁数は指定はありませんでした。
先ほど書き忘れてしまったのですが、「n,mは実数」
という条件がありました。

154 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 23:25:01 ]
strtod使えば大した問題じゃない

155 名前: ◆hwUQ/UOPMQ mailto:sage [2007/09/23(日) 23:58:37 ]
[1] 授業単元: C
[2] 問題文(含コード&リンク): クイックソートのプログラムを作成しなさい
・ソート対象は文字列配列
・引数でソート対象、ソート後の配列をしていする
[3] 環境
 [3.1] OS: XP
 [3.2] VC++ 2008
 [3.3] 言語: C
[4] 期限: なるべく早めに
[5] その他の制限: ソート以外の標準関数は使ってもよい

もう大方は作ってみたんですが、途中でエラーで終了してしまいます
協力お願いします
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm?
↑にうpしました。クイックソートと書いてるやつです

156 名前:16 [2007/09/24(月) 02:50:08 ]
>>106
>>150

ありがとうございます。助かりました。

157 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 06:32:53 ]
>>155
それなりに努力の跡は見えるんだが、なんとも……。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4956.txt

それにしてもVC2008か…ちょっと欲しい。orcasはいつ出るのかなぁ。


158 名前: ◆hwUQ/UOPMQ mailto:sage [2007/09/24(月) 08:17:35 ]
>>157
ありがとうございます!
できたら悪い点が沢山あったと思うので教えて欲しいです

あと、VC++2008はベータ版ならダウンロードできますよ

159 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:02:55 ]
>>157
比較関数が間違ってる。文字列の第一文字目だけで比較するそうな。

>>158
157じゃないけど

1. sort_array[0] が NULL かどうかを見てるのは再帰の一発目だけを
区別する目的だろうけれど、そんなのは再帰中にやらず、157 のように
別の関数に分けるべき。これが落ちる原因になっている。

2. それを直しても正しく動作しない。last の前後に分けるところがダメ。
pivot を特別扱いしたいのだろうけど、並べ替え中に pivot も動いてしまう。
ここは 157 のように、両側から同時にやるのが常套テクニック。
今の方法でも、pivot を必ず最後に選ぶようにすると、一応できる。

1 を小細工で対応し、2 を適当に修正したものを以下に示す。
実際の修正量は数行程度のはずだけれど、相当不自然なコードなので
もう一度自分で考えて書いたほうが勉強になると思う。

160 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:09:03 ]
>>158
続き。関係ないところは行をつめている。
!! つきのコメントのあるところが主な修正箇所。

int quick_sort(const char *array[], int left ,int right,char *sort_array[]) {
  int last = 0; int cnt = 0; int pivot = 0;
  if(array == NULL || left < 0 || right < 0 || sort_array == NULL) return 0; //引数チェック
  if(left >= right) return 1; //配列の要素が一つの場合

  if(sort_array[0] == NULL){ //sort_array[0]がNULLならarrayをコピー
    for(cnt = 0;cnt <= right;cnt++){
      sort_array[cnt] = (char *)malloc(256); // !!malloc で適当に確保してからコピーする
      strcpy(sort_array[cnt],array[cnt]);
    }
  }
  pivot = (right+left)/2; //基準値を決める
  change(sort_array, pivot, right); // !!pivot を最後に送りつける
  pivot = right;
  last = left;
  for(cnt = left; cnt <= right;cnt++){ // !![left,last) は pivot 以下
    if(sort_array[cnt][0] <= sort_array[pivot][0]){ // !!pivotが左側に入るために等号付き
      change(sort_array,cnt,last++); !! last++ と後置インクリメント
    }
  }
  quick_sort(array,left,last-2,sort_array); // !!array[last-1] が pivot なので抜く
  quick_sort(array,last,right,sort_array);
  return 1;
}



161 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:15:23 ]
大してレス読んでないけど文字列比較ならstrcmp使えばいいじゃん。

162 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:21:15 ]
>>161 的外れだよ ちゃんと読もうな

163 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:31:52 ]
[1] 授業単元: programming concepts
[2] 問題文(含コード&リンク): -Promt the user for the base value(int date type).
-Read the base value.
-Promt the user for the exponent value(int date type).
-Read the exponent value.
-using a <cmath> function.
-The following output should be displayed:
/* Enter the base: 3
Enter the exponent: 2
3 to the 2 power equals 9.
The square root of 3 equals 1.41
Press any key to continue*/
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: VC++
 [3.3] 言語: C++
[4] 期限: なるべく早くお願いします
[5] 習って4週間目です
めちゃめちゃですが自分のプログラムです
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4957.txt

164 名前: ◆hwUQ/UOPMQ mailto:sage [2007/09/24(月) 10:39:50 ]
>>159
ご指摘ありがとうございます!
クイックソートがまだつかめてない様なのでもう少し考えます

165 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:46:10 ]
>>163
'^' はビットXOR演算子であり、べき乗を処理する演算子はC言語にはない
pow() を使え

sqr() ではなく sqrt()

他にも突っ込み所はあるけどコンパイルすれば気付くと思うので触れない

166 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 11:19:02 ]
>>163
これくらいの英語はできなきゃ恥ずかしいくらいだけど、
日本語訳しておくくらいの心遣いをしなさい

167 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 11:20:07 ]
>>166
アホ? 矛盾してるけど。

168 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 11:22:25 ]
下手な訳で混乱させられるよりは、生の英文の方がマシ

169 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 11:57:43 ]
矛盾はしてないよ
併記しておけば問題ないし
ということで>>163は首を洗って出直してきなさい

170 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 11:59:39 ]
>>169
>>168




171 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:14:29 ]
>>170
自分の言葉でたのむわ

むしろ、依頼者が英語がわかんなくて適当にやって
さりげなく間違い訂正させてるのかもしれんし
油断は禁物だぞ

172 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:15:40 ]
>>171
>>168


173 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:19:38 ]
>>172
答えになってねーよ在日

かくいう俺は在日日本人だが

174 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:20:03 ]
>>163程度の英文が読めない奴は答えなくていいから

175 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:22:32 ]
>>174
英語は分かるがcが分からないんだ…

176 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:22:50 ]
翻訳しました

-ベース値(int日付のタイプ)のためのユーザのPromt。
-ベース値を読んでください。
-解説者値(int日付のタイプ)のためのユーザのPromt。
-解説者値を読んでください。
-<cmath>機能を使用します。
-以下の出力を表示するべきです:
/*はベースに入ります: 3
解説者に入ってください: 2
3 2と、パワーは9と等しいです。
3の平方根はいずれも*/を続けるために合わせる1.41Pressと等しいです。

177 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 12:25:26 ]
そして、cはわからないが√3は1.41ではないことは分かる!

178 名前: [2007/09/24(月) 14:39:17 ]
お助けください。

現在の地域時間から15時間後の日時を表示するプログラムを作成しなさい。
表示形式は日付と時間が表示されれば、自由とします。

179 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 14:41:15 ]
>>178
>>7

180 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 14:41:48 ]
間違えた
>>178
>>1



181 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 14:45:40 ]
#include <stdio.h>
#include <time.h>
int main() {struct tm tm; time_t now = time(NULL); tm = * localtime(& now); tm.tm_hour += 15; mktime(& tm); puts(asctime(& tm)); return 0;}

182 名前:汗2 [2007/09/24(月) 14:55:45 ]
[1] 授業単元: 通信物
[2] 問題文(含コード&リンク):
次のプログラムで本来入れるべき処理は何か。それを指摘しなさい。
 1:char*pstr;
2:
3:pstr=malloc(100)
4:sprintf(pstr,"123")
5:patr=malloc(10)
6:sprintf(pstr,"456")
7:free(pstr);

[3] 環境
 [3.1] OS: (Windows)
 [3.3] 言語: (C)
[4] 期限:早いと助かるス。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<230KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef