C/C++の宿題を片付けます 77代目
■ このスレッドは過去ログ倉庫に格納されています
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して
投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[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
0482デフォルトの名無しさん
2006/11/27(月) 23:54:24問題が何なのかさっぱり分かりません
まったくわからないのでお願いします
0483478
2006/11/27(月) 23:54:490484デフォルトの名無しさん
2006/11/28(火) 00:11:32この問題はBCB専用じゃないかね?
0485デフォルトの名無しさん
2006/11/28(火) 00:30:180486デフォルトの名無しさん
2006/11/28(火) 00:32:180487デフォルトの名無しさん
2006/11/28(火) 00:40:48リアルで人にやってもらっても同じなんだし
建前はここも匿名板なんだから殺人とかじゃないとチャラ
0488デフォルトの名無しさん
2006/11/28(火) 00:44:24何を勘違いしているんだ?
ここは教えるところなんかじゃないぜ
0489デフォルトの名無しさん
2006/11/28(火) 00:46:47一応ヒント
アドレス士官
0490デフォルトの名無しさん
2006/11/28(火) 00:46:58宿題を持ってきたやつがどうなろうと知ったこっちゃない
0492デフォルトの名無しさん
2006/11/28(火) 00:49:560493デフォルトの名無しさん
2006/11/28(火) 00:52:110494デフォルトの名無しさん
2006/11/28(火) 00:52:12痛くも痒くもないですよw
0495デフォルトの名無しさん
2006/11/28(火) 01:08:202]gcc Cのみ
3]2006'11'30
映像を取り込み、
その映像を基にして
長さを調べて表示する
プログラムを作成しろ
よれしくおねがいします
0496473〜475
2006/11/28(火) 01:10:27もし問題に不手際があったらそれだけでも教えてもらえるととても助かります
0497デフォルトの名無しさん
2006/11/28(火) 01:10:55一応出来たけど答はいくらになればいいの?
0498デフォルトの名無しさん
2006/11/28(火) 01:14:47映像って具体的になんだ?
0499デフォルトの名無しさん
2006/11/28(火) 01:14:50写真に載っている物質の長さを求めるらしいです。
対象物とレンズの距離が毎度違うと思うので
分かりません
どうやってはかるの?
0500デフォルトの名無しさん
2006/11/28(火) 01:16:240501デフォルトの名無しさん
2006/11/28(火) 01:19:09ヒシャタイ
の実寸らしい
0502デフォルトの名無しさん
2006/11/28(火) 01:22:38意味がサッパリなので悩んでます
0503デフォルトの名無しさん
2006/11/28(火) 01:26:37はっきり言う
それは億単位の案件になるので
たった2日では無理です。
申し訳無い
0504デフォルトの名無しさん
2006/11/28(火) 01:31:09学校の宿題ですよw
大学内のみの流通のみで
物理学部に提供するらしい。
0505デフォルトの名無しさん
2006/11/28(火) 01:32:13あの条件から見積もりだすお前がすごい
0506デフォルトの名無しさん
2006/11/28(火) 01:33:44>>503
0507デフォルトの名無しさん
2006/11/28(火) 01:40:33>>1を声に出してよく読んで、テンプレを元にして書き直し
0508デフォルトの名無しさん
2006/11/28(火) 01:52:52それは既に宿題ではないんではないだろうか
0509デフォルトの名無しさん
2006/11/28(火) 01:53:420510デフォルトの名無しさん
2006/11/28(火) 01:57:47小さい方から足してるだろうな?積み残しが出るぞ。
0511デフォルトの名無しさん
2006/11/28(火) 01:59:27e^1は1/0!+1/1!+1/2!+1/3!・・・だろ?
478の課題は
1/0!-1/1!+1/2!-1/3!・・・の逆数を求めろって言ってるぜ
0512デフォルトの名無しさん
2006/11/28(火) 02:02:17ちゃんと100000から計算していってるよ
0513デフォルトの名無しさん
2006/11/28(火) 02:03:55ハヤクシロや
0514デフォルトの名無しさん
2006/11/28(火) 02:08:44おいおい。寝ぼけてるのか?
exp(x) = 1 + x + x^2/2 + x^3/3 + ...
exp(-1) = 1 - 1 + 1/2! - 1/3! + ...
1/exp(-1) = exp(1)
0515デフォルトの名無しさん
2006/11/28(火) 02:10:52あ、なるほどな
ののしるがいいさ さげすむがいいさ
0516デフォルトの名無しさん
2006/11/28(火) 02:24:33>>478
#include <stdio.h>
#define N 100000
main(){
double i=N,y=1;
while(i>=1) y=1-y/i--;
printf("%f\n",1/y);
}
0517デフォルトの名無しさん
2006/11/28(火) 02:31:520518デフォルトの名無しさん
2006/11/28(火) 02:42:10レベルの低い素人は口を挟むな
0519デフォルトの名無しさん
2006/11/28(火) 02:45:48[2] 問題文(含コード&リンク):正整数nと実数xを入力して、多項式
1+x+xの二乗+xの三乗+…+xのn乗
を計算するプログラムつくりなさい。
[3] 環境
[3.1] OS:Windows XP
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C言語
[4] 期限:2006年11月29日
[5] その他の制限:関数定義使う
0520デフォルトの名無しさん
2006/11/28(火) 03:00:300521デフォルトの名無しさん
2006/11/28(火) 03:29:18#include <stdio.h>
double keisan(double x,int n);
main(){
double x;
int n;
printf("xを入力してください\n");
scanf("%lf",&x);
printf("nを入力してください\n");
scanf("%d",&n);
printf("f(%f,%d)の答えは%fです。",x,n,keisan(x,n));
}
double keisan(double x,int n){
double y=1;
for(int i=0;i<n;i++) y=1+x*y;
return y;
}
0522デフォルトの名無しさん
2006/11/28(火) 03:46:250523デフォルトの名無しさん
2006/11/28(火) 03:48:25ループかけるまえに
1を宣言して
ループしたのを足していけばいいんだお
0524デフォルトの名無しさん
2006/11/28(火) 03:50:170525デフォルトの名無しさん
2006/11/28(火) 04:00:31n=1の時
y=1+x
n=2の時
y=1+x*(1+x)
n=3の時
y=1+x*(1+x*(1+x))
・
・
・
0526516
2006/11/28(火) 04:31:48>>478
#include <stdio.h>
#define N 100000
main(){
double i=N+1,y=1;
while(--i) y=1-y/i;
printf("%f\n",1/y);
}
0527516
2006/11/28(火) 05:28:09>>478に俺に感謝する心が1バイトでもあるなら是非これを提出して欲しい
#include <stdio.h>
#include <float.h>
#define Nmax 100000
double tenkai(double n){
double i=n+1,y=1;
while(--i) y=1-y/i;
return y;
}
double kousuu(void){
double y=1;
int i=1;
while(i<N&&y>DBL_EPSILON) y/=++i;
return i;
}
void main(){
double n=Nmax;
double n2=kousuu();
if (n2<N) printf("n=%.0fまで計算した結果%.16f\n愚かにも",n2,1/tenkai(n2));
printf("n=%.0fまで計算した結果%.16f\n",n,1/tenkai(n));
}
0528516
2006/11/28(火) 05:48:15while(i<N&&y>DBL_EPSILON) y/=++i;
↓
while(i<NMAX&&y>DBL_EPSILON) y/=++i;
0529473〜475
2006/11/28(火) 08:05:16どなたか解いてもらえないでしょうか。
0530デフォルトの名無しさん
2006/11/28(火) 08:50:15前の日の晩に質問するなんて無謀な
今から知り合い増やそう
0531デフォルトの名無しさん
2006/11/28(火) 08:57:52node root;
// idx番目の要素を操作対象に設定
node *target = &root;
for(i=0;i<idx;i++)
target = target->next;
// 追加
InsertMigi(target, n);
// 削除
Remove(target);
printfやscanfくらい自分で書け
0532478
2006/11/28(火) 09:13:53ですが…わからないものばかりで…
defineやらreturnやらvoidというのは習ってないんです。
すみません。
100000はscanfから読み込んでやるはずだったんですが、
説明不足ですみません。
答えは 2.71828に近づきます。
もしよろしければ、もう一度おねがいしたいのですが…
0533デフォルトの名無しさん
2006/11/28(火) 09:17:540534デフォルトの名無しさん
2006/11/28(火) 09:25:25習ってないからといって使っていけないというわけでもないし、ぐぐれば理解できるだろ
scanfで読み込むように書き直すくらい自分でできるだろうし
0537デフォルトの名無しさん
2006/11/28(火) 11:29:56// idx番目の要素を操作対象に設定をどこにいれていいのかわからないです
何度もすみません
0538デフォルトの名無しさん
2006/11/28(火) 12:47:36[2] 問題文(含コード&リンク):4個の1桁の数字からなる順列を乱数で生成
キーボードから4個の数字の順列を入力
生成した順列と入力の順列を比較
位置が合っている場合はhit,位置が間違っている場合はblowとし、
ヒット数とブロー数を表示させる
順列があたるまで入力を繰り返すプログラムを作りなさい
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 12月5日 12時まで
[5] その他の制限: long random(void)まではヒントが与えられています。
宜しくお願いします。
0539デフォルトの名無しさん
2006/11/28(火) 13:24:400540デフォルトの名無しさん
2006/11/28(火) 13:32:030541デフォルトの名無しさん
2006/11/28(火) 13:41:15http://www.linux.or.jp/JM/html/LDP_man-pages/man3/random.3.html
M系乱数のはず。
0542デフォルトの名無しさん
2006/11/28(火) 14:09:12[2] 問題文(含コード&リンク):
キーボードから入力された文章を単語単位で切り出し
総単語数と各単語の文字数を表示する
Cプログラムを書きなさい。単語の区切りは半角スペースのみとする。
但し、単語数の上限は30、1単語数の最大の文字数は20と仮定する。
【実行例】
文を入力してください: This is an apple
合計4単語です。 各文字数は
This:4文字
is:2文字
an:2文字
apple:5文字
[3] 環境
[3.1] OS:Windows XP SP2 Pro
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限:2006年12月01日19:00
[5] その他の制限:
文字の入力には gets 関数を使うこと
関数の中身はブラケット演算子なしでポインターだけで書く
よろしくお願いいたします。
0543a
2006/11/28(火) 14:23:34ドから入力させ,C = A×B を計算して画面表示するプログラムを作成しなさい.ただし,k,m,
n については,k≠m,m≠n,k≠n,k≧2,m≧2,n≧2 を満たす任意の値を設定してよい
0544デフォルトの名無しさん
2006/11/28(火) 15:25:10[2] 問題文:疑点法を用いてf(x)=x-cosx=0の近似解を小数点以下15桁まで求めるCプログラム
擬点法とは f(a1)f(b1)<0 となるような近似解の組
x=a1 x=b1 から出発して、漸化式
bk*f(ak)− ak*f(bk)
xk=―――――――――― (k=1,2,3,・・・)
f(ak) − f(bk)
(ak,xk) if f(ak)*f(xk)<0
(ak+1,bk+1)=
(xk,bk) otherwise
により、次々とより良い近似解x=xk(k=1,2,3・・)
をもとめていこうとするものです。このプログラムは
f(xk)=0 or x1,x2,x3・・が十分に収束したと判断できる
時点で終了する今回の出発点は
a1=0,b1=1とします
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: Cのみ
[4] 期限: 2006年12月08日12:00まで
[5] その他の制限:
int型、double型、数学的関数を使う。constは使わない。
for,do-while構文習得。増分・減分演算子習得。
最初に#define f(x) ((x)-cos(x))
#define EPSILON (1e-15) を使う
Simpsonの公式は習った。
0545544
2006/11/28(火) 15:27:460546デフォルトの名無しさん
2006/11/28(火) 16:39:32VCC++だと#define EPSILON (1e-15)が解決できなかったので
代わりにfloat.hのDBL_EPSILON使ってある
気に入らなかったら自分で直して
#include <stdio.h>
#include <math.h>
#include <float.h>
#define f(x) ((x)-cos(x))
void main(){
double x=1,xBefore=0,a=0,b=1,fa=f(a),fb=f(b);
while(f(x)!=0&&fabs(x-xBefore)>DBL_EPSILON){
xBefore=x;
x=(b*fa-a*fb)/(fa-fb);
if(fa*f(x)<0) {
b=x;
fb=f(b);
}
else {
a=x;
fa=f(a);
}
}
printf("x=%.15fの時f(x)=%.15f\n",x,f(x));
}
0547546
2006/11/28(火) 16:50:06#include <stdio.h>
#include <math.h>
#include <float.h>
#define f(x) ((x)-cos(x))
void main(){
double x=1,xBefore=0,a=0,b=1,fa=f(a),fb=f(b),fx=f(x);
while(fx!=0&&fabs(x-xBefore)>DBL_EPSILON){
xBefore=x;
x=(b*fa-a*fb)/(fa-fb);
fx=f(x);
if(fa*fx<0) {
b=x;
fb=fx;
}
else {
a=x;
fa=fx;
}
}
printf("x=%.15fの時f(x)=%.15f\n",x,f(x));
}
0548デフォルトの名無しさん
2006/11/28(火) 19:20:49[2] 問題文(含コード&リンク): ファイルを読み込み、各行が逆順に出るようなプログラムを書きなさい。作成したプログラムに対して、空の入力と、作成したプログラム本体のソースコードを入力し、出力結果を報告しなさい。
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: mingw-jp
[3.3] 言語: C++
[4] 期限: 明日の午後8時(2006年11月29日(水))
[5] その他の制限: 一行の文字数や、行数の制限を行わない。
同じファイルを二回以上オープンしない。但し、メモリに異常が発生した場合は、検知し、確実に異常終了させる。
分かる方、いたらお願いします!!
0549デフォルトの名無しさん
2006/11/28(火) 19:43:41このスレを検索
0550デフォルトの名無しさん
2006/11/28(火) 19:45:55そりゃ不可能だ。
仮にメモリ異常が単にmalloc()/new失敗と言う意味に解釈したとしても、
その状況で確実に異常終了できるかどうかは実はOS次第だからな。
0551デフォルトの名無しさん
2006/11/28(火) 19:49:29[2] 問題文:
点数をいれるとSABCDを出力するプログラムを作りなさい。ただし
100〜90点 S
89〜80 A
79〜70 B
69〜60 C
59点以下 D
とする。以下の実行結果を参考にして考えよ。
./kadai 70 80 85
1教科目はBです。
2教科目はAです。
3教科目はAです。
[3] 環境
[3.1] OS:Windows XP
[3.2] コンパイラとバージョン: gcc
[3.3] 言語:C言語
[4] 期限:11月29日20時まで
当方プログラミング歴2ヶ月で今回の課題がさっぱりわからないので
誰か分かる方がいらっしゃいましたら助力お願いします。
0552デフォルトの名無しさん
2006/11/28(火) 20:12:53http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3048.c
0553537
2006/11/28(火) 20:17:27ありがとうございました
0554デフォルトの名無しさん
2006/11/28(火) 20:19:53#include<stdio.h>
const char *hyouka(int value){
if(value>100) return "unknown";
if(value>=90) return "S";
if(value>=80) return "A";
if(value>=70) return "B";
if(value>=60) return "C";
return "D";
}
int main(int argc, char *argv[]){
int i, value;
for(i=1;i<argc;i++){
sscanf(argv[i], "%d", &value);
printf("%d教科目は%sです。\n", i, hyouka(value));
}
return 0;
}
0555デフォルトの名無しさん
2006/11/28(火) 20:42:180556デフォルトの名無しさん
2006/11/28(火) 21:11:11期限には間に合いませんがよろしくお願いします。
0557デフォルトの名無しさん
2006/11/28(火) 21:50:49http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3049.txt
0558デフォルトの名無しさん
2006/11/28(火) 22:10:280559デフォルトの名無しさん
2006/11/28(火) 22:11:46new()が使われてない場合はこれじゃだめかも。
#include <string>
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
void putReverse(ifstream& infile)
{
string s;
try{
while(!infile.eof()){ getline(infile, s); cout << string(s.rbegin(), s.rend()) << endl;}
}
catch(bad_alloc){
cerr << "メモリ確保失敗";
infile.close();
abort(); //エラーコード返すとかじゃなく、お望み通り異常終了。
}
}
int main(int argc, char* argv[])
{
if(argc != 2){ cerr << "読み込むファイルを一つ指定してください"; return -1;}
ifstream inFile(argv[1]);
if(inFile.fail()){ cerr << "ファイルを開けません"; return -2;}
putReverse(inFile);
return 0;
}
0560デフォルトの名無しさん
2006/11/28(火) 22:14:002.模範解答をTAに作るように命令。
3.TAがここで問題を丸投げ。
4.生徒が問題を受け取る。
5.生徒がここで問題を丸投げ。 ← いまここ
0561デフォルトの名無しさん
2006/11/28(火) 22:18:47全米が震撼した
0562デフォルトの名無しさん
2006/11/28(火) 22:26:020563デフォルトの名無しさん
2006/11/28(火) 22:29:41[2] 問題文(含コード&リンク):∫ e^x/x dx(x:1→3)の値を台形およびシンプソンの公式により求めよ
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 11/30
[5] その他の制限: 等分数は2から倍々と増やしていき、積分値が変化しなくなるまで行うこと。
等分数を最初に設定して計算することは出来たのですが、
制限の>>等分数は2から倍々と増やしていき、積分値が変化しなくなるまで行うこと。
これのやり方が分かりません。
誰か分かる方がいらっしゃいましたらよろしくお願いします。
0564デフォルトの名無しさん
2006/11/28(火) 22:33:59なんでだよwww
>等分数を最初に設定して計算することは出来た
ここが一番の山じゃねーか
もう終わったようなもんだろwwwwwwwww
あとはforループで、2^iで分割して、
今の値-前の値の絶対値が十分小さかったら終了でいいじゃん
0565デフォルトの名無しさん
2006/11/28(火) 22:34:38そのふたつだけじゃなくて
>>42
も同じ課題だと思う
0566デフォルトの名無しさん
2006/11/28(火) 22:53:25質問者じゃないけど、こういうのもアリですかね?
const char* hyouka(int value)
{
switch (value / 10) {
case 10:
case 9:return "S";
case 8:return "A";
case 7:return "B";
case 6:return "C";
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:return "D";
default:return "unknown";
}
}
0567デフォルトの名無しさん
2006/11/28(火) 22:59:02>>42じゃなくて>>40じゃね?
0568デフォルトの名無しさん
2006/11/28(火) 23:01:09あ、
>>40だった。スマソ
0569デフォルトの名無しさん
2006/11/28(火) 23:12:07[2] 問題文(含コード&リンク):
出版社M社で自社のライトノベル・DVD購入者に対し懸賞を行うことになった。
応募券を切り取り、ハガキに貼ってを送ってきた人に対し
10人にオリジナル図書カードを
50人にオリジナルストラップを
100人にオリジナルステッカーをプレゼントすることになった。
公平を期すためにC言語で乱数を用い当選者を決定させたい。
ここで応募してくる人は過去の傾向からみて1000人以下であると考えられる。
※なおライトノベル、DVD両方の応募券がついている客は
DVDのみの応募券、ライトノベルのみの応募券がついているユーザーの2倍の当選確率である。
※なお、同一人物(同じ名前)での2重当選はありえない。(当選は1人1回である)
※またA君、B君、C君は前回の懸賞で特賞が当たっているため、今回応募があっても当選しない。
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: Boland
[3.3] 言語: C
[4] 期限: 2006.12.01
[5] その他の制限: なし
よろしくお願いいたします。
0570デフォルトの名無しさん
2006/11/28(火) 23:14:05問題文それだけ?
0571デフォルトの名無しさん
2006/11/28(火) 23:15:17提示された物は全てです
0572デフォルトの名無しさん
2006/11/28(火) 23:15:52入力するデータが欲しい
0573デフォルトの名無しさん
2006/11/28(火) 23:15:59[2] 問題文(含コード&リンク):
y=sin(2x)×cos(x)について区間0≦x≦π/4での積分値を計算するプログラム
を作成せよ。
計算結果として、積分範囲・刻み数・積分結果を出力させること。
刻み数は
#define n 20
とする。
πはM_PIとする。
[3] 環境
[3.1] OS: Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 明日の朝10時00分までです。
[5] その他の制限: 特にないです。
よろしくお願い致します。
0574デフォルトの名無しさん
2006/11/28(火) 23:16:32問題文そのまま?
なんか色々省略してない?
0575デフォルトの名無しさん
2006/11/28(火) 23:23:35A君B君C君をはじけばいいらしいです。
D君以降は適当にDVDのみ、ノベルのみ、両方適当でいいっていってました
>>574
とくに省略はしていません
0576デフォルトの名無しさん
2006/11/28(火) 23:24:02じゃぁ先生にこんな問題文じゃ解けないって突き返せ
0577デフォルトの名無しさん
2006/11/28(火) 23:24:43[2] 問題文(含コード&リンク):
以下は入力された整数値の大小に基づいて2分木を生成するものである。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/3050.txt
すべてのノードの左の子と右の子を交換する関数void ReverseTree(struct BTREE *ptr)
を再帰呼び出しによって実現せよ。この手続き後にTraverseTreeを実行すると数値は降順に表示されるはずである。
また、指定データと同じ値のデータを持つノードの個数を出力するint CountData(struct BTREE *ptr,int searchdata)を
再帰呼び出しによって完成させよ。
Reverse Tree
[3] 環境
[3.1] OS: Windows Xp
[3.2] コンパイラ名とバージョン: gcc 3.4
[3.3] 言語: C
[4] 期限: 明日夜
[5] その他の制限:
お願いします!
0578デフォルトの名無しさん
2006/11/28(火) 23:29:32台形公式でよければ >>212 を少し変更すればおk
return 4/(1+x*x);
↓
return sin(2*x)*cos(x);
printf("%f\n", f_integral(0, 1, 1000));
↓
printf("%f<x<%f %d %f\n", 0., M_PI/4, n, f_integral(0., M_PI/4, n));
0579デフォルトの名無しさん
2006/11/28(火) 23:48:39void ReverseTree(struct BTREE *ptr) {
struct BTREE *temp;
if (ptr == NULL) return;
ReverseTree(ptr->left);
ReverseTree(ptr->right);
temp = ptr->left;
ptr->left = ptr->right;
ptr->right = temp;
return;
}
int CountData(struct BTREE *ptr, int searchdata) {
if (ptr == NULL) return 0;
return CountData(ptr->left, searchdata) + CountData(ptr->right, searchdata) + (ptr->data == searchdata);
}
0580デフォルトの名無しさん
2006/11/28(火) 23:51:31ありがとうございます。
for文の中を前の値==今の値とかやって悩んでましたw
0581デフォルトの名無しさん
2006/11/29(水) 00:00:30#include <math.h>
#include <stdio.h>
#define n 20
double f(double x) {
return sin(2 * x) * cos(x);
}
int main(void) {
int i;
double a = 0., b = M_PI / 4, h = (b - a) / n, s = 0.;
for (i = 1; i < n; ++i) s += f(a + i * h);
s *= 2;
s += f(0) + f(n);
s *= h / 2;
printf("%f", s);
return 0;
}
0582デフォルトの名無しさん
2006/11/29(水) 00:05:04応募者が賞品の数より少ない場合、
1.A君、B君、C君でも当選する?
2.賞品の当選の優先順位は決まってる?
ちなみに全員ハズレにするのもアリ?
■ このスレッドは過去ログ倉庫に格納されています