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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 06:27:59 ]
あなたが解けない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++の宿題片付けます 136代目
pc12.2ch.net/test/read.cgi/tech/1274827528/

75 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 23:12:30 ]
>>65
#include<stdio.h>
int main(void){
int i;
double a[4];
double *p;
p = a;

for(i = 0; i < 4; i++){
a[i] = i;
}

for(i = 0; i < 4; i++, p++){
printf("a[%d]=%f\n", i, a[i]);
printf("p = %p\n", p);
printf("*p = %f\n\n", *p);
}
return 0;
}


76 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 01:10:03 ]
>>73
なるほど。
オーソドックスな解法は、>>17のようなDPだろうけど、>>67でも出来る、
という事は、条件付きで数学的に等価なのかもな。

77 名前:デフォルトの名無しさん [2010/06/20(日) 02:55:07 ]
>>75
ありがとうございました

78 名前:デフォルトの名無しさん [2010/06/20(日) 02:57:10 ]
[1] 授業単元:オブジェクトプログラミング
[2] 問題文(含コード&リンク):以下のプログラムをdouble型について調べるプログラムを作成せよ。
尚、単純ポインタが指す値をprintf(“%p) =0x%x\n”, ptr_d, *ptr_d);
を用いて表示すると図1のような実行結果を得るが、図2のように表示をするようにしなさい。
[3] 環境
 [3.1] OS:Windows XP
[3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年6月20日[5] その他の制限:int main(void){から始まる


79 名前:デフォルトの名無しさん [2010/06/20(日) 02:58:58 ]
#include <stdio.h>
int main(void){
char src[32], dst[32];
char *ptr_c;
int *ptr_i, *ptr;
double *ptr_d;
int i;
// src[i]配列にデータを格納
for(i=0; i<32; i++){
src[i] = i;
}
// dst[i]配列へのコピー
for(i=0; i<32; i++){
dst[i] = src[i];
}
//配列の出力
for(i=0; i<32; i++){
printf("dst[%d]=0x%x\n", i, dst[i]);
}
// ptr_cにsrcの先頭アドレスをコピー
ptr_c = src;
// ptrを使用してsrc[i]のデータを内容を出力する。
for(i=0; i<32; i++){
printf("%p) = 0x%x\n", ptr_c, *ptr_c);
ptr_c++;
  }
}


80 名前:デフォルトの名無しさん [2010/06/20(日) 03:00:45 ]
図1
0x22ccc0) = 0.3020100
0x22ccc8) = 0.b0a0306
0x22ccd0) = 0.13121110
0x22ccd8) = 0.1b1a1918

図2
ptc_d:0x22ccc0) = 0.3020100
   0x22ccc4) = 0.7060504
ptr_d:0x22ccc8) = 0.b0a0306
 0x22cccc) = 0.f0e0d0e
ptr_d:0x22ccd0) = 0.13121110
0x22ccd4) = 0.17161514
ptr_d:0x22ccd8) = 0.1b1a1918
0x22ccdc) = 0.1f1e1d1c


81 名前:023 mailto:sage [2010/06/20(日) 13:34:27 ]
>>069
VS2005で動かしてみました。
ゲームとしては7行くらいでゲームオーバーでもかまいません。
ただ、/を入れた後の文字選択が2回必要なのはなぜでしょうか。

82 名前:デフォルトの名無しさん [2010/06/20(日) 14:57:39 ]
>>78です
どなたか、よろしくお願いします。


83 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 15:06:53 ]
以前のヤツからそうなんだけど、書いてあるコード実行しても図の例と同じにはならないんだよな



84 名前:デフォルトの名無しさん [2010/06/20(日) 15:49:25 ]
すみません。説明不足でした。
ソースコードは、int型で書かれています。これを、double型に書き換えていただきたいんです。
そして、double型に書き換えたものを実行すると、図2のように表示せよという問題です。
よろしくお願いします。


85 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 16:16:30 ]
>>78
#include<stdio.h>
#define SIZE 4
int main(void){
int i;
double src[SIZE], dst[SIZE];
double *ptr_d;
// データ格納?
for (i = 0; i < SIZE; i++) {
src[i] = i;
dst[i] = src[i];
}
// 配列の内容を出力
for (i = 0; i < SIZE; i++) {
printf("%p) = %f\n", &dst[i], dst[i]);
}
// ポインタと配列を使って内容を出力
for (ptr_d = src, i = 0; i < SIZE; ptr_d++, i++) {
printf("ptr_d :%p) = %f\n", ptr_d, *ptr_d);
printf("src[%d]:%p) = %f\n", i, &src[i], src[i]);
}
return 0;
}

すいません。
問題のゴールが明確には分からなかったので適当に書いてます。
大枠はこれでいいと思うので書き換えて使ってください。

86 名前:62 mailto:sage [2010/06/20(日) 16:49:11 ]
>>81
入力しても時々無視されちゃってます。
バグですが、もう一度入れれば入るみたいなんで、無視しちゃってください。
(直して^^;)

87 名前:023 mailto:sage [2010/06/20(日) 17:16:35 ]
int ch, ch2, ch3;
bool slash = false;
/****/
try{
/****/
while(1){
  ch = skip();
  if(ch == EOF) break;
  plane_put(ch);
  kouhosu = 0;
  bslash = 0;
  ch2 = fgetc(fp1);
  if(!kigou(ch2) && (ch2 == ch + 1)){
    bslash=1;}
  ungetc(ch2, fp1);
  if(slash) { // add 2010.6.20
    ch = ch3;
    slash = false;
  }else{
    ch = fukugou(ch);}
  dec_put(ch);
  fputc(ch, fp3);
  if(ch=='/'){
    ch3 = fukugou(ch2 - 1);
    angou(ch3);
    slash = true; // add 2010.6.20
  }else{
    deb("angou=%c\n",ch);
    angou(ch);
  }
}}

88 名前:62 mailto:sage [2010/06/20(日) 18:08:56 ]
>>87
ありがとうございます!!

kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10722.zip
に更新しました。
スクロール出来なくて今何をデコードしてるのか分からなくなってた問題は
別スレッドのポップアップウインドにしたので解消しました。


なんか'/'の扱いが難しいすね。よく考えると、'/'と見なしたら、その次の文字を-1して復号化するんだけど、
その復号化において、さらに、'/'と見なすべき場合は再帰でやらないと出来ないんじゃないだろうか。。という気がしてきた。

89 名前:62 mailto:sage [2010/06/20(日) 18:31:48 ]
っていうか、ほぼ毎回、候補が複数出てくる。
これほとんど無理だよねw

90 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:24:13 ]
?1から10までの積を計算するプログラムを書け。このとき,whileループを用いて、
画面に 1*2*3*・・・・*10 = という風に表示されるようにすること。

期限は6/22までです。お願いします。

91 名前:デフォルトの名無しさん [2010/06/20(日) 20:24:33 ]
与えられた零以上の実数(a,b,c,d)と正の実数(e,f)に対して
つぎのロンバーグ表と積分値を求めるプログラムを作成せよ
(分割数:n=2^k≧16,推定回数:m≧3)

I=∫ 1/(a*x^3+b*x^2+c*x+d)dx (e≦x≦f)

ただし、キーボードから(a,b,c,d,e,f)を入力すれば
上記の定積分のロンバーグ表の値と積分値が画面表示
されるようなプログラムを作ること。

この問題を解ける方教えていただけませんか?

92 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:35:12 ]
>>90
#include <stdio.h>
int main(void)
{
int i=10,sum=1;
while(i--)printf(i?"%d*":"%d=%d\n",i+1,sum*=(i+1));
return 0;
}

93 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:41:29 ]
>>1
>>1
大事なことなので2回言いました。最近守らないやつが多すぎる。



94 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 20:44:42 ]
>>78
char src[32], dst[32];
int *ptr_i,*ptr;
double *ptr_d;
int i;
// src[i]配列にデータを格納
for(i=0; i<32; i++){
src[i] = i;
}
// dst[i]配列へのコピー
for(i=0; i<32; i++){
dst[i] = src[i];
}
// ptr_cにsrcの先頭アドレスをコピー
ptr_d = (double *)src;
// ptrを使用してsrc[i]のデータを内容を出力する。
for(i=0; i<4; i++){
printf("ptc_d:%#6x) = 0.%x\n", ptr_d, *ptr_d);
ptr_i = (int *)ptr_d;
printf(" :%#6x) = 0.%x\n", (ptr_i+1), *(ptr_i+1));
ptr_d++;
}
図2 ptr_d:0x22ccc8) = 0.b0a0306 は>>79のソース内容から外れるので考慮していない

95 名前:91 [2010/06/20(日) 20:58:11 ]
[1] 授業単元:数値計算法
[2] 問題文(含コード&リンク):
与えられた零以上の実数(a,b,c,d)と正の実数(e,f)に対して
つぎのロンバーグ表と積分値を求めるプログラムを作成せよ
(分割数:n=2^k≧16,推定回数:m≧3)

I=∫ 1/(a*x^3+b*x^2+c*x+d)dx (e≦x≦f)

ただし、キーボードから(a,b,c,d,e,f)を入力すれば
上記の定積分のロンバーグ表の値と積分値が画面表示
されるようなプログラムを作ること。
[3] 環境
 [3.1] OS:vista
[4] 期限: 無期限


96 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 05:37:05 ]
>>89
適当に選ぶと正解じゃない場合は常に行き詰まる模様

97 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 07:33:49 ]
エロゲの選択肢よりシビアだな

98 名前:023 mailto:sage [2010/06/21(月) 09:02:14 ]
decrypt 窓が、文字の無いところを表示するから、常に横スクロールが必要。

99 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 13:31:35 ]
>>95
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10726.txt

100 名前:87 の修正を修正 mailto:sage [2010/06/21(月) 16:05:27 ]
int ch, ch2, ch3;
bool slash = false;
/****/
try{
while(1){
  ch = skip();
  if(ch == EOF) break;
  plane_put(ch);
  scroll(IDC_EDIT3); // add 2010.6.21 他のscroll()呼び出しは削除
  kouhosu = 0;
  bslash = 0;
  ch2 = fgetc(fp1);
  if(!kigou(ch2) && (ch2 == ch + 1)){
    bslash=1;}
  ungetc(ch2, fp1);
  if(slash) { // add 2010.6.20
    ch = ch3;
    slash = false;
  }else{
    ch = fukugou(ch);}
  dec_put(ch);
  fputc(ch, fp3);
  if(ch=='/'){
    kouhosu = 0; // add 2010.6.10 候補を消す
    ch3 = fukugou(ch2 - 1);
    angou(ch3);
    slash = true; // add 2010.6.20
  }else{
    deb("angou=%c\n",ch);
    angou(ch);
  }
}}

101 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:08:25 ]
そろそろ別にスレでも作ってそっち行ってくんないかな

102 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:17:56 ]
>>99
間違ってるぞw

103 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:33:42 ]
>>102
本からの丸写しなんだが。間違ってる点があるなら指摘よろしく



104 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:37:28 ]
本当に丸写しなら、出版社に言って謝礼をもらうべきw
どうせ問題にあわせていじったところでミスってるだけだろうけど。

105 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:38:51 ]
>>104
嫌味なら誰にでも言える
どこがどう間違っているのか具体的に指摘よろしく
それかお前が正しいプログラムを書いて示せ

106 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:40:47 ]
間違いの存在教えてもらっただけでも感謝して、自分で探せよw

107 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:41:28 ]
まあどこが間違っているか示せないだろうけどな

>>99は何度も検証したし結果も合ってる

ただケチを付けてみたいだけだろう>>102

108 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:45:23 ]
そんな検証の仕方じゃ話になんないなw

109 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:45:57 ]
以降放置勝手に言ってろ

110 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:46:36 ]
>h = b - a;
これはなんですか?w

111 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:49:57 ]
>>110
それで合ってんだよ

112 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:52:32 ]
え?w

113 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:53:29 ]
>>20 の問題だけでスレ立てるのもアレなのでこちらでどうぞ

スレ立てるまでもない質問はここで 106匹目
pc12.2ch.net/test/read.cgi/tech/1276215571/



114 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:53:29 ]
wてなに


115 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:53:30 ]
どうせ台形公式とかルンゲ・クッタ法のhと混同してるんだろうこの馬鹿は
ロンバーグ積分も知らない馬鹿は口出しすんな

116 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 16:58:01 ]
ロンバーグ積分は台形公式利用するものだし、hの意味は同じなんだがw

aとbは係数として関数に渡すもので、始点・終点じゃない
h = f - e;
が正しい。


117 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:05:21 ]
>>99のやり方はミス抜かしてもロンバーグ積分としては微妙だけどな。
毎回台形公式で求めなおしてるから計算回数無駄に多いし。

118 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:06:54 ]
>>116
確かにその通りだスマン

>>117
だから文句タラタラ言うなら自分でプログラムを書いて示せっつーの

119 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:09:36 ]
スマンですますなよ、この低脳がw
教えてくださいって土下座しろよこのマヌケ

120 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:11:47 ]
>>110で指摘されてもなお>>111と言える心の強さは素晴らしい

121 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:14:36 ]
>>113
まともに機能してるスレに関係ないもの誘導すんなよ。
過疎ってるスレがいくらでもあまってるんだから、そっちにしようぜ。

例えば
C言語を勉強しあおう
pc12.2ch.net/test/read.cgi/tech/1190599975/
とかさ

122 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:15:12 ]
そこまで言わなくてもいいと思うが、丸写しした本を教えてほしい。
それから、
> 何度も検証したし結果も合ってる
というところも詳しく。

123 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 17:30:15 ]
台形公式で刻み数を倍にするときは前回の計算結果を利用して、
関数の計算回数を減らすのが普通。
減らすって言っても、前回の計算がなかったとして直接計算したときと同じなんだけど。
少なくとも、前回の計算分丸々計算しなおすよりはマシになる。



124 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:01:03 ]
>>123
だから言葉で言わずにプログラムで書けっつーの
ここはプログラム板だ

125 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:03:59 ]
ググれカス

126 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:05:22 ]
>>124
先に>>122の質問に答えたら?

127 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 18:25:50 ]
>>90
#include <stdio.h>
int main(void)
{
    int i = 1, sum = 1;
    while (i < 10) {
sum *= i;
printf("%d*", i);
i++;
    }
    printf("%d = %d\n", i, sum *= i);

    return 0;
}

128 名前:113 mailto:sage [2010/06/21(月) 20:05:45 ]
>>121
了解した

>>20 の問題に関しては是非こちらへ

C言語を勉強しあおう
pc12.2ch.net/test/read.cgi/tech/1190599975/168-

129 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 00:46:57 ]
wってなに?

130 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 01:03:40 ]
waraiのw

131 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 04:04:39 ]
sumって変数名に乗算の結果を入れるのは気持ち悪い

132 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 10:09:40 ]
product

133 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:05:37 ]
[1] 授業単元:C言語プログラミング
[2] 問題文(含コード&リンク):
[1] 授業単元:
char buf[80];
int main(int ac, char ** av)
{
int i;
buf[0] = '\0';
for(i = 1; i < ac; i++){
printf("%3d \"%s\"\n", strlen(av[i]), av[i]);
strcat(buf, av[i]);
}
printf("%3d \"%s\"\n", strlen(buf), buf);

これを入力した文字列を逆順に表示できるように書き換えよ
[3] 環境
 [3.1] Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 本日三時
[5] その他の制限:なし

おねがいします





134 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:39:40 ]
for(i = strlen(buf) - 1; i >= 0; i--) printf("%c", buf[i]);

135 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:49:15 ]
配列a[n],配列b[n] と配列の大きさn を渡すと配列の
要素を入れ換えるプログラムをポインタを用いて作成せよ.
例えば,a[3]={1,2,3},b[3]={101,102,103}とすると
き,結果として,a[3]={101,102,103},b[3]={1,2,3}と
なるようにせよ.

よろしくお願いします!

136 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 11:50:29 ]
void f(int *a, int *b, int size)
{
while(size--) {
int temp = *a;
*a++ = *b;
*b ++ = temp;
}
}

137 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 12:06:39 ]
>>136
早速の回答感謝します
ありがとうございました!

138 名前:デフォルトの名無しさん [2010/06/22(火) 14:55:24 ]
1] 授業単元:システムコール
[2] 問題文(含コード&リンク):
コマンドライン引数で指定された文字列のいずれかと一致する名前の環境変数についてのみ、
#include <stdio.h>
#include <stdlib.h>
extern char **environ;
main()
{
char **p;
for (p = environ; *p != NULL; p ++) {
printf("%s\n", *p);}
return 0;}

#include <stdio.h>
#include <stdlib.h>
main(int argc, char *argv[], char *envp[])
{
char **p;
for (p = envp; *p != NULL; p ++) {
printf("%s\n", *p);}
return 0;}
のように変数名と値を表示するプログラムを書け。
ただし、コマンドライン引数に重複があっても、対応する環境変数について複数回表示してはならない
 [3.2] コンパイラ名とバージョン:gcc 3.4
 [3.3] 言語:C
[4] 期限:2010年5月24日12:59まで
[5] その他の制限:特になし
よろしくお願いします


139 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 15:05:45 ]
期限が過ぎているのでスキップされました

140 名前:デフォルトの名無しさん [2010/06/22(火) 15:17:58 ]
>>138
すいません!期限6/24です

141 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 17:56:42 ]
ワイルドカードのマッチを、正規表現使って行うにはどう変換すればいいですか。
. や * や ? で機能が違うのですが。



142 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 18:01:55 ]
ワイルドカード → 正規表現
? → .
* → .*

143 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 18:05:12 ]
サンクス。あと正規表現の特殊文字に\つけとけばいいですかね。



144 名前:デフォルトの名無しさん [2010/06/22(火) 18:47:03 ]
[1] 授業単元:C・プログラミング
[2] 問題文(含コード&リンク):
深さ優先探索をリスト表現で表すプログラムを作成せよ。
制限は特にないです。
[3] 環境
 [3.1] Windows 7
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:2010年6月25日迄
よろしくお願いします。

145 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 19:41:07 ]
>.144
めっちゃ抽象的だな…

146 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 19:44:08 ]
まずは要件定義から始めること。



という実践的な問題なんだろ。

147 名前:デフォルトの名無しさん [2010/06/22(火) 20:09:28 ]
>>138
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int
main(int argc, char *argv[], char *envp[])
{
char **p, **v;
int lth;
for (p = envp; *p != NULL; p++) {
lth = strchr(*p, '=') - *p;
for (v = argv; *v != NULL; v++) {
if (!strncmp(*p, *v, lth)) {
printf("%s\n", *p);
*p = '\0';
break;
}
}
}

return 0;
}

148 名前:デフォルトの名無しさん [2010/06/22(火) 20:30:24 ]
[1] 応用プログラミング
[2] 問題文(含コード&リンク):構造体の基礎
  kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10733.txt
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:Microsoft Visualstadio 2008
 [3.3] 言語:C
[4] 期限:24日まで
[5] その他の制限:プログラミングやってまだ半年しか経ってません。
         構造体の授業の宿題です。
         どうか宜しくお願いします。


149 名前: ◆QZaw55cn4c mailto:sage [2010/06/22(火) 20:43:07 ]
>>148
codepad.org/nXIJMHE8

150 名前:デフォルトの名無しさん [2010/06/22(火) 22:25:31 ]
[1] 授業単元:C++プログラミング
[2] 問題文(含コード&リンク):三目並べを作成せよ。ポインタとクラスを使用。
[3] 環境
 [3.1] OS:WinodwsVista
 [3.2] コンパイラ名とバージョン:Visual C++ 2008 Express Edition
 [3.3] 言語:C++
[4] 期限:6/23(水)8時半まで
[5] その他の制限:C++触り始めた所です。どうかお願いします。

151 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:27:42 ]
>>150
GUIでいいのか

152 名前:デフォルトの名無しさん [2010/06/22(火) 22:30:13 ]
>>151
言い忘れてた。CUIでお願いします。

こんな感じにしてほしいです。
  1 2 3






○の横座標を入力してください:
○の縦座標を入力してください:

153 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:04:32 ]
>>152
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10734.txt



154 名前:デフォルトの名無しさん [2010/06/22(火) 23:16:46 ]
>>153
出来ればクラスとメソッドをしっかりと分けてほしいです。

クラスの中にメソッドが入ってる感じなのでこう分けてくれると助かります。

class game{
public:
void init();
bool Player(int x, int y);
};

void Game::init()
{
・・・
}

他のメソッドもこんな感じに処理毎に分けてくれると助かります。あと○に座標だけでなく
×の座標も入力できるようにしてほしいです。

155 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:18:02 ]
www

156 名前:デフォルトの名無しさん [2010/06/22(火) 23:18:30 ]
>>154
ミス。「○に座標」じゃなくて「○の座標」でした。

入力した座標をポインタで受け取る感じにしてほしいです。

申し訳ありません。

157 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:31:38 ]
座標をポインタで受け取りたいってのがよくわからんが。。

ってかドローゲーム忘れてたw

158 名前:デフォルトの名無しさん [2010/06/22(火) 23:39:19 ]
>>157
自分の中のイメージとしてg.player(&width, &height)って感じでメソッド呼び出して
座標データを取得したいのですが。。。。。

すいません。なかなか上手く説明できないです。初心者なので。。。。。。



159 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:42:24 ]
クラスとメソッドを分けてほしいって表現がすごいけど、その例を書けるんならそんぐらい直せw

160 名前:デフォルトの名無しさん [2010/06/22(火) 23:45:28 ]
>>159
クラスとメソッド分けるのちょっとやってみます。

挫折したらすみません。あと途中で解説欲しくなるかもしれないです。

161 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:48:40 ]
>>158
こんなんでどう?
get_posってヤツで座標を取るんで、これなら意味分かるわ。

kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10735.txt

162 名前:デフォルトの名無しさん [2010/06/22(火) 23:52:37 ]
>>161
おおおおおおおおおおお。けっこうスマートになってるwwww

助かります。ちょっとソースコード読んでみます。解説欲しくなったら言うので。

163 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:54:19 ]
どんだけ上から言ってんだよw

ってかもうねる。



164 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 00:01:03 ]
>>163
乙。

釣りなのかと思っちゃうよね。

165 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 00:15:45 ]
インライン関数は使わない流儀

166 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 03:27:12 ]
[1] 授業単元:プログラミング応用  ;構造体
[2] 問題文(含コード&リンク):
以下コピペ
表示例のように,名前,性別,身長,体重,腹囲(ウエスト)を3人分入力した後, 3名全員について入力データに加えてBMI値とメタボリック症候群の疑いの判定を 表示するプログラムを作成しなさい.
プログラムでは,名前,性別,身長,体重,腹囲をまとめて 個人データとして表すための構造体を定義して利用すること.
注意
" 体重はkg, 身長,腹囲はcmで入力する.
" 性別は 1 で男性,2で女性を表す.
" BMI値 = 体重(kg) / 身長(m)2
" 男性は腹囲85cm以上,女性は腹囲90cm以上でメタボリック症候群の疑い がある

表示例
データ1を入力してください
名前: Hanako
性別: 2
身長: 156.4
体重: 65.3
腹囲: 93.4
名前: Hanako, 性別: 女, 身長: 156.4, 体重: 65.3, 腹囲: 93.4, BMI: 26.7, メタボリック症候群の疑いがあります
コピペ終わり
本当はデータ3つです。改行制限で割愛
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: (cc 3.4)
 [3.3] 言語: (どちらでも可)
[4] 期限: (6月23日15時まで)
[5] その他の制限: (構造体でデータを個々で格納してお願いします。)

よろしくお願いします。

167 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 10:51:24 ]
>>>166
codepad.org/z3vbEcex

168 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 11:20:14 ]
>>166
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10736.c

169 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 12:33:36 ]
>>167
>>168
ありがとうございました。参考にさせていただきます。

170 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 15:18:36 ]
【質問テンプレ】
[1] 授業単元: C言語プログラミング
[2] 問題文(含コード&リンク):
1.関数sqrtを使って1〜10までの二乗根の和を求めなさい。
2.16進数ABC.DEを10進数にしなさい。
[3] 環境
 [3.1] OS: Windows XP
 [ [3.3] 言語: C言語
[4] 期限: 6月24日15時まで
よろしくお願いします。

171 名前:デフォルトの名無しさん [2010/06/23(水) 15:33:07 ]
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10737.txt
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:6月28日まで
[5] その他の制限:なし
よろしくお願いします

172 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 15:55:30 ]
【質問テンプレ】
[1] 授業単元: プログラミングB
[2] 問題文(含コード&リンク):実行したい処理を選ぶことが可能なプログラムを作りなさい。このとき、実
行できる処理は以下の三つとする。

処理1:複数の2択問題への回答に応じた結果を表示する。(例:職種選択、旅行先選び

処理2:文字コード一覧表を出力する。(文字コード32~126を一行に8文字ずつ)

処理3:本のページ数を入力し、その本を読み切るために必要な日数を表示
    する。このとき、初日は10ページ、2日目は20ページ,,,と読むページ
    数は増加するものとする。

以下の仕様で作成すること

キーボードから入力された数に応じて、switch文で各処理に移動する。
処理1:if文を使って
処理2:for文を使って
処理3:while文またはdo・while文を使って。

[3] 環境
 [3.1] OS: WindowsXP
 [3.3] 言語: C言語
[4] 期限: 6月25日まで
よろしくお願いします。

173 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 16:03:04 ]
>>171
(1)j-1
(2)printf("   ");



174 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 16:07:11 ]
>>170
1.
#include <stdio.h>
#include <math.h>

int main(void)
{
int i;
double sum = 0;

for(i = 1; i <= 10; i++) sum += sqrt(i);

printf("%f\n", sum);

return 0;
}

175 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 16:45:32 ]
>>170
2.
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10738.c






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

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

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