C/C++の宿題やらせてください。おながいします

このエントリーをはてなブックマークに追加
952950:03/05/15 01:21
(。>0<。) びええん
次スレを立てるプログラムはどう書きますか?
Thread2ch thread("http://pc2.2ch.net/test/read.cgi/tech/1051594046/");
Board2ch board("http://pc2.2ch.net/tech/")
if(thread.GetResCount > 950)
{
 board.CreateNewThread(thread.GetTitle() + " Part2", thread.GetRes(1).GetBody());
}
955デフォルトの名無しさん:03/05/15 16:23
>>954
山崎渉
Thread2ch thread("http://pc2.2ch.net/test/read.cgi/tech/1051594046/");
Board2ch board("http://pc2.2ch.net/tech/")

for(;;)
{
 thread.Update();
 if(thread.GetResCount() > 950)
 {
  board.CreateNewThread(thread.GetTitle() + " Part2", thread.GetRes(1).GetBody());
  break;
 }
 Sleep(300 * 1000);
}
for(;;)
{

Board2ch board("http://pc2.2ch.net/tech/")
board.Update();
Thread2ch &thread = board.FindThread("C/C++の宿題", Thread2ch::latest);

for(;;)
{
 thread.Update();
 if(thread.GetResCount() > 950)
 {
  board.CreateNewThread(thread.GetNextPartTitle(), thread.GetRes(1).GetBody() +
   "前スレ:" + thread.GetURL);
  break;
 }
 Sleep(300 * 1000);
}

}
958958:03/05/15 20:18
1から5の総和を求めるプログラムを作成したが、下記のプログラムではうまく動かない場合が生じる。誤りを指摘し1行だけ直して正しいプログラムにしなさい。

int add(int);

int main(void)
{
add(1);
add(2);
add(3);
add(4);
printf(“%d\n”,add(5));
return 0;
}
int add(int n)
{
int sum;
sum += n;
return (sum);
}

お願いします。
int sum; -> static int sum = 0;

こんな糞コード仕事で書くなよな。
int add(int);

int main(void)
{
add(1);
add(2);
add(3);
add(4);
printf("18\n");
return 0;
}
int add(int n)
{
int sum;
sum += n;
return (sum);
}
961958:03/05/15 21:04
>>959>>960
ありがとうございました
文字列sを逆順にして出力する関数void reverse(char s[])を作成しなさい。
関数strlenを用いてあらかじめ文字列sの長さを求めると容易。
お願いします。
>>958
>>959のが普通だと思うけど、””が間違いだし、戻り値が役に立っていない。
笑ってしまう>>960のが正解っぽい。意地悪問題か?ただ、総和は15だと思う。
ごめん。もうだめ。丸投げ。
for文かwhile文による繰り返しの問題です。

ボールを水平面に落とすと、元の高さの0.75倍の高さまで跳ね返る。
10回水平面にバウンドした後、最高地点に到達した瞬間までのボールの動いた
総距離を計算せよ。
初期高さは80mで、各回の高さも出力表示せよ

多分基本問題なんだろうけど、おながいします。
965964:03/05/15 21:16
あ、↑ふつうのCです。よろしくお願いします。
ただの等比数列じゃねーか
int x,y,t;
for(x=1; x<=10; x++)
{
   t = 80*0.75;
   printf("%d回目のバウンド時のボールの高さは%dです。\r\t",x,t);
}

コンパイルしてないし、漏れも初心者なのであってるかワカラン。
誰か上級者教えてくたされ
#include <iostream>

main()
{
 double total = 0;
 double height = 80;
 for(int i=0; i<10; i++)
 {
  total += height;
  height *= 0.75;
  std::cout << i+1 << "回目" << height << "m" << std::endl;
  total += height;
 }
 std::cout << "合計" << total << "m" << std::endl;

}
逆順が今の流行なのか?
>>967-968
はやっ!ありがとうございます。たすかりました。

>>969
同一学校と思われ
普通のC

#include <stdio.h>

float bound( float height )
{
return height * 0.75;
}

int main( void )
{
float height = 80;
float total = 0;
int counter;

for( counter=0; counter<=10; counter++ ) {
if( 0 != counter ){
height = bound( height );
total += height;
}
total += height;

printf( "%2d回目 %f m\n", counter, height );
}

printf( "ボールの動いた総距離: %fm\n", total );

return 0;
}
なぜdoubleではなくfloat?
なぜ片道しか加算しない?
doubleはfloatよりメモリ消費が烈しいからだろ。
>>972
出来ないならそんな無理しないで素直に>>968のcoutだけprintfに書換えとけよ。
976デフォルトの名無しさん:03/05/15 22:56
関数電卓のソースがあるところ知りませんか?
#include<stdio.h>
#include<math.h>
int func(double param1,double param2,double *souka,double *soujou)
{
*souka = (param1+param2)/2;
*soujou = sqrt(param1*param2);
return 0;
}
int main(void)
{
double a,b,c,d;
scanf("%f %f",&a,&b);
func(a,b,&c,&d);
printf("相加平均%f 相乗平均%f",c,d);
return 0;
}

どこが間違っているのかが分からないんです!教えてください!
978デフォルトの名無しさん:03/05/15 23:46
>>977
doubleなら
%f→%lf
C FAQを読みましょう。
scanfはdoubleに対しては%lfを使います。
980977:03/05/15 23:50
>>978>>979
助かりました!ありがとうございます!
思い込みによるバグ注入だな。
電脳土方にはよくある事
>>974
馬鹿?
たったの4バイトで「烈しい」と言うのか?
あぁ、変数が2つあるから8バイトか。
しかも、スタックは節約できても実コードは却って増える罠。
普通のC
#include <stdio.h>
#include <math.h>
#define START 80
#define RATE 0.75
#define TIMES 10

double gettotalmove(double start,double brate,int ntimes)
{
double d = pow(brate,(double)ntimes);
return start * (1 + brate) * (1 - d) / (1 - brate);
}

int main(void)
{
int i;
for (i = 1;i <= TIMES;i++){
printf("%d times, bound = %f,total = %f\n",
i,START * pow(RATE,i),gettotalmove(START,RATE,i));
}
return 0;
}
せめて
get_total_move
にしてホシイ
985デフォルトの名無しさん:03/05/16 00:39
>>984
漏れは字数が伸びてアンダースコア嫌い
GetTotalMoveにしてホシイ
>>984
javaっ娘なのでgetTotalMoveにしてホシイ
川合堂ライセンス(´_ゝ`)
>>985
字数を気にしてる時点でまだまだだな
俺もjava風味でgetTotalMoveとかがいいかな?
getが修飾してるってわかりやすいし
>>988
大文字小文字を混ぜるとき、先頭だけ小文字ではじめるのって、なんか利点があるんですか?
>>989
文字の量をそのままに単語の区切りを指定できる。
>>990
先頭だったら大文字小文字関係ないじゃん。
992デフォルトの名無しさん:03/05/16 07:29
カットオフを組み込んだクイックソートをプログラムとして実現せよ。ここで、要素数がM以下の部分ファイルに挿入整列法を使うものとする。そして、1000の要素のランダムなファイルに対して、最も速く走るようにMの値を定めよ。

問題の意味から教えて下さい。
>>992
quicksort cutoff >google
先頭小文字にするヤシは
JAVA厨ということでよろしいか?
995デフォルトの名無しさん:03/05/16 08:04
元に戻すちゃんねる
1000
997990:03/05/16 08:29
>>991
ごめんなさい。読み間違えてました。
>>989
先頭を小文字にするのは僕の場合、ローカル変数とグローバル変数を分ける
ため。特に仮引数に小文字ロングネーム変数を使う。僕が使っているVC6は、
関数を呼び出した時その名前が出るのでと言うのもある。グローバル変数を
使ってはいけないと言う説もありますが。
ローカル:yCountNum グローバル:YCountNum 関数:YCountNum() マクロ:Y_COUNT_NUM
        まもなくここは 乂1000取り合戦場乂 となります。

      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \オーーーーーーーッ!!/
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )
(´∀`)ノ ハロハロ〜!
:::::::::::::::::::::::::::::::::::::/       \::::::::::::::::::::::::::::
:::::::::::::::::::::::::::::::::::/         :::::::::::::::::::::::::::::::::
:::::::::::::::::...... ....::::::|            |::::::::::::.. ...: ::::::::
:. .::::::::........ . .:::::::::::::::::::         | ........... ..:::::
:::: :::::::::... . .... .. . ヽ          / . . . ... ..::::: . .. .
            \      /
               −ー
       ∧_∧                    ./^^^^\
      ( ´∀`)               .   /      ;、 \
      (つ日 )              ⌒⌒/', ' ',;'', ;'',; '',;' ',' \
      | | |           ⌒⌒⌒/ ,          、  \⌒⌒
 TTTTTTTTTTTTTT.            /          、     \
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|      ⌒⌒⌒⌒⌒⌒⌒⌒⌒ヽ
              .|               '⌒⌒⌒⌒⌒⌒⌒⌒⌒⌒⌒
              .|                _      _
              .|    ',',',',', _  ,',',',',',' l^lニl ,',',',', l^lニl ',',',',',',',',',',',',',',',','
              .|     ',',' l^lニl ,',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',',','
1000ゲットは気持ち(・∀・)イイ!!
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。