C/C++の宿題を片付けます 76代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/11/06(月) 09:04:35【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して
投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[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++の宿題を片付けます 75代目
http://pc8.2ch.net/test/read.cgi/tech/1161257941/
【過去スレ一覧】
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
0653一年生
2006/11/16(木) 14:49:10[2] 問題文:文字配列にアルファベットで適当な文字を10文字入れたとき、
入力順序と逆順で表示する。 なお、配列を用いること。
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:Microsoft Visual C++ 6.0
[3.3] 言語: C++
[4] 期限: 2006年11月17日まで
[5] その他の制限: なし
0654デフォルトの名無しさん
2006/11/16(木) 14:56:38「フレーム間差分」って何?
ファイルフォーマットにしたがって説明してみて
avi ファイルフォーマット:
http://www.usagi-goten.com/jp/AVI_structure.html
0655デフォルトの名無しさん
2006/11/16(木) 14:59:43#include <stdio.h>
#include <string.h>
int main(void){
int i;
char buf[11];
scanf("%s",buf);
for(i=strlen(buf)-1;i>=0;i--){
putchar(buf[i]);
}
}
0656デフォルトの名無しさん
2006/11/16(木) 15:00:39このスレを逆順で検索
int i;
char a[11];
char *p = a;
scanf("%s", p);
for(i=9;i>=0;i--)printf("%c",p[i]);
0657デフォルトの名無しさん
2006/11/16(木) 15:15:20卒研をこのスレに丸投げw
年収200万円コースだな
0658デフォルトの名無しさん
2006/11/16(木) 15:19:440659デフォルトの名無しさん
2006/11/16(木) 15:29:56[2] 問題文・キーボードから n (1 <= n <= 50) 人分の得点(整数)を入力する.
・得点は0点以上100点以下とし,範囲外なら再入力させる.
・全員分入力が完了したら,平均点を求め,小数点以下1桁で表示する.
・各個人について,得点,平均点との差,および判定を表示する.
・判定は,80点以上を優,80点未満70点以上を良,
70点未満60点以上を可,60点未満を不可とする.
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名 gcc
[3.3] 言語: C
[4] 期限: 今週まで
[5] その他の制限: ありません。
0660デフォルトの名無しさん
2006/11/16(木) 15:34:15お前の年収はいずれ100倍にしてやる!
だから、今はガンバレ。
0661デフォルトの名無しさん
2006/11/16(木) 15:43:13問題18
#include <stdio.h>
#include <math.h>
void e(int *data) {
int i, j, *dap;
unsigned k = 1, k2 = 2, s = 0;
long x;
for (dap = data, j = 16; j--; ) *dap++ = 0;
for (i = 1; s <= 201; i++, s += j)
if (i >= k) {
k = k2; k2 <<= 1; j++;
}
*data = 1;
while (--i) {
for (x = 0, j = 16, dap = data; j--; ) {
x = x * 10000 + *dap; *dap++ = x / i; x %= i;
}
(*data)++;
}
}
int main(void) {
int i, data[16];
e(data);
printf("e = %1d.", data[0]);
for (i = 1; i <= 15; i++) printf("%04d", data[i]);
printf("\n");
}
#include <stdio.h>
#include <stdlib.h>
int main(void){int n,sum,i;double avg;int* p;char tmp[10];
do{fgets(tmp,sizeof(tmp),stdin);n=atoi(tmp);}while(n>50||n<1);
p=(int*)malloc(sizeof(int)*n);for(i=0,sum=0;i<n;i++){do{fgets(tmp,sizeof(tmp),stdin);
p[i]=atoi(tmp);}while(p[i]>100||p[i]<0);sum+=p[i];}avg=(double)sum/(double)n;
printf("平均:%.1f\n",avg);for(i=0;i<n;i++){printf("%-2i %-3i %-2.1f %s\n",i+1,p[i],
(double)p[i]-avg,(p[i]>=80)?"優":((p[i]>=70)?"良":((p[i]>=60)?"可":"不可")));}return 0;}
0663デフォルトの名無しさん
2006/11/16(木) 17:15:17単なる研究の手段として、差分画像がほしいだけなら、 avi を連番ビットマップに変換する
フリーのプログラムがあるから、それを持ってきてあとは単純にバイト列を引き算汁。
BMPヘッダを飛ばすくらいはできるだろ。
フレーム間差分を取るプログラムの研究が主目的なら、4月開始の卒研だったら
間に合わない悪寒。さっさと教授に相談に行ったほうがいい。
0664デフォルトの名無しさん
2006/11/16(木) 18:38:33[2] 例えば, "Antonio Rodorigo Nogueira" → "arieugoN ogirodoR oinotnA" のように, 引数として受け取った文字列を
逆順にした文字列に書き換える関数 void str_reverse(char s[]) を作成せよ. この関数を用いて,
キーボードから入力した文字列を逆順に表示するプログラムを作成せよ.
[3]
[3.1] winXP sp2
[3.2] cygwin
[3.3] C
[4] 2006年11月23日
[5] ポインタ無しです。多バイト文字は無視してもらって構いません。
0665デフォルトの名無しさん
2006/11/16(木) 18:43:10もういいかげんにするっすお!(ポッポー
#include <stdio.h>
#include <stdlib.h>
void str_reverse(char s[]){int i,l=strlen(s);char t;for(i=0;i<l/2;i++){t=s[i];s[i]=s[l-i-1];
s[l-i-1]=t;}}int main(void){char s[100];fgets(s,sizeof(s),stdin);s[strlen(s)-1]='\0';
str_reverse(s);puts(s);return 0;}
0667デフォルトの名無しさん
2006/11/16(木) 18:57:22[2] 特にはないが、テンプレートマッチングのプログラムを作ること。
[3] 環境
[3.1] Windows XP
[3.2] cl
[3.3] C言語
[4] 2006年11月18日
[5] 特にありません。
課題をそのまま解釈すると、アルファベット以外は逆順にしないことになる。
0669デフォルトの名無しさん
2006/11/16(木) 19:12:030670デフォルトの名無しさん
2006/11/16(木) 19:12:34こ、、コレ、、、これ戦闘力たけぇな・・・・。
s[l-i-1] こんな数学僕には思いつきません。もうぬるぽ
0671デフォルトの名無しさん
2006/11/16(木) 19:12:36「アルファベットで適当な文字を10文字入れたとき」以外の動作は未規定、と解釈すればよろし
0672デフォルトの名無しさん
2006/11/16(木) 19:13:07if(x>y>z) {max=x}
if(y>x>z){}max=
0673デフォルトの名無しさん
2006/11/16(木) 19:15:33んじゃ、その時はディスクをすっきりフォーマットするってことで
0674デフォルトの名無しさん
2006/11/16(木) 19:16:023つの整数のうち最大のものを選べってプログラムで
if(x>y>z) {max=x}
if(y>x>z){max=y}
・
・
・
って全通り書いたらyが無視されたり、最大がとんでもない数字になったりして困ってます
というわけでアルファベットのみひっくり返す版。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
void str_reverse(char s[],int l){int i;char t;for(i=0;i<l/2;i++){t=s[i];s[i]=s[l-i-1];
s[l-i-1]=t;}}void rev_no_alpha(char s[]){int b,e,f=0,l=strlen(s),i;for(i=0;i<l;i++){if
(!f&&!isalpha(s[i])){f=1;b=i;}if(f&&isalpha(s[i])){f=0;e=i;str_reverse(&s[b],e-b);}}}
int main(void){char s[100];int l;fgets(s,sizeof(s),stdin);l=strlen(s)-1;s[l]='\0';
rev_no_alpha(s);str_reverse(s,l);puts(s);return 0;}
例えばx>y>zだと、zが評価される相手は0か1しかない。
これ以上はスレ違い。
0677デフォルトの名無しさん
2006/11/16(木) 19:29:16[2] 問題文:main関数内でint型配列変数を定義し、適当な値で初期化
そのint型配列変数と要素数を受け取りすべての要素を表示する
ユーザー定義関数を作成する。
[3] 環境
[3.1] OS: linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限: 2006年11月27日まで
[5] その他の制限: なし
#include "stdafx.h"
#include<stdio.h>
void print_array(int a[],size_t len){int i;for(i=0;i<len;i++){printf("%i\n",a[i]);}}
int main(void){int a[]={1,1,2,3,5,8,13,21,34,55,};print_array(a,sizeof(a)/sizeof(int));return 0;}
最初の行は要らない。
0680デフォルトの名無しさん
2006/11/16(木) 19:45:350681デフォルトの名無しさん
2006/11/16(木) 19:51:46>main関数内でint型配列変数を定義し、適当な値で初期化
ってあるからmain関数も必要なんでない?
0682デフォルトの名無しさん
2006/11/16(木) 19:54:09じゃあ3行目だけで。
0684デフォルトの名無しさん
2006/11/16(木) 20:11:040685デフォルトの名無しさん
2006/11/16(木) 20:13:090686デフォルトの名無しさん
2006/11/16(木) 20:18:30なんていえばいいの?
GNU/Linuxシステム?
0687デフォルトの名無しさん
2006/11/16(木) 20:27:000688デフォルトの名無しさん
2006/11/16(木) 20:27:040689デフォルトの名無しさん
2006/11/16(木) 20:32:120690デフォルトの名無しさん
2006/11/16(木) 21:03:470691デフォルトの名無しさん
2006/11/16(木) 21:10:16先生がここ見て宿題考えてたりしてなw
0692デフォルトの名無しさん
2006/11/16(木) 21:34:50を改造し, バブルソートの要素の交換を, 逆順で行うプログラムを作成し, x[ ]={7,1,2,3,4,5,6} という列が一度でソートできるようにしなさい.
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2956.txt
を改造し, 立方根を計算するプログラムを作成しなさい。
この二つの宿題をおながいします。。。
0693デフォルトの名無しさん
2006/11/16(木) 21:50:00立方根を求める
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2957.txt
テンプレに従った方がいいぞ
0694デフォルトの名無しさん
2006/11/16(木) 22:00:07バブルソート逆順
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2958.txt
0695デフォルトの名無しさん
2006/11/16(木) 22:36:45[2] 問題文(含コード&リンク):10個の文字列を左から右へ移動させて、いわゆる50メートル走を作成
順位、タイムも出す
[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: Visual C++2005
[3.3] 言語: C
[4] 期限:2006年11月17日12;00まで
[5] その他の制限:
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2959.txt
私が作ったものではこんな感じで斜めに一直線ですが(これが限界)、
実際はランダムで順位が決まるようにお願いします
0696デフォルトの名無しさん
2006/11/16(木) 22:42:040697デフォルトの名無しさん
2006/11/16(木) 22:48:06えぇ?何かおかしなところありましたか?
0698デフォルトの名無しさん
2006/11/16(木) 22:56:350699デフォルトの名無しさん
2006/11/16(木) 23:03:3150メートルは単なる例えですので
char[10][50]みたいなのでOKです
dpi…解像度、ですが、デバッグの画面で出来れば良いので考えなくて良いです
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2959.txt
取り合えずこれを見て起動させてもらえばどんな感じかわかると思います
甚だ低次元の問題ですみませんがよろしくお願いします。
[1] 授業単元: 条件分岐(if文)
[2] 問題文(含コード&リンク): ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2960.txt
[3] 環境
[3.1] OS:winxp
[3.2] コンパイラ名とバージョン:Borland C++ Compiler 5.5
[3.3] 言語: C
[4] 期限: 日曜日
[5] その他の制限 (どこまで習っているか、標準ライブラリは使ってはいけない等々):
printf文、scanf文、if文をちょっと習いました。標準ライブラリは分かりません。
自分で何もせずにいきなり聞くのは失礼なので、とりあえず少し考えてみました。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2964.txt
なんとかコンパイルはできましたが、実行結果が全然だめです。
どこをどうすれば良いでしょうか…。よろしくお願いしますorz
0701デフォルトの名無しさん
2006/11/16(木) 23:23:45[2] 問題文(含コード&リンク):ソートとサーチのプログラムの計算を比較する
[3] 環境
[3.1] OS:suse Linax
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語:C
[4] 期限:11/20
[5] その他の制限:無し
クイックソートが正しく行われなくて困っています。サブルーチンの再起や値の交換に問題があると思うのですが…
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2965.txt
お願いします。
0702デフォルトの名無しさん
2006/11/16(木) 23:23:45scanf( "%d", &suryo );
とりあえず&をつけ忘れてるぞ
0703デフォルトの名無しさん
2006/11/16(木) 23:27:42>>702 + if を逆順に評価して else をなくせばおk
うひぃありがとうございます。こんなところでミスってたんですね…本当に顔から火が出る思いです。
ちゃんと結果も出ました。駄文を見ていただきありがとうございました!
0705STUDENT
2006/11/16(木) 23:31:16「問題19」πの値を小数点以下60桁まで求めよ。
のCプログラム(C++)を作ってください。
多倍長少数を利用してプログラムを作ってください。
0706デフォルトの名無しさん
2006/11/16(木) 23:35:13>>1読んで書き直し
0707デフォルトの名無しさん
2006/11/16(木) 23:35:30こんなんでいいの?
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2966.c
0708デフォルトの名無しさん
2006/11/16(木) 23:38:32>>1
0709デフォルトの名無しさん
2006/11/16(木) 23:38:42はい、完璧です!ありがとうございました
こんな早く出来るなんて二週間も考えていた私が阿呆のようです
0710デフォルトの名無しさん
2006/11/16(木) 23:43:08[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2967.txt
[3] 環境
[3.1] OS:WindowsXP_SP2
[3.3] 言語:C++
たぶん5-1ぐらいは自分で何とかできると思う・・・
0711デフォルトの名無しさん
2006/11/16(木) 23:46:58π=4arctan1とかマチンの公式とか連分数展開とか方法は色々あるだろ
0712デフォルトの名無しさん
2006/11/16(木) 23:55:56ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2968.txt
せっかくだから貼っておく
0713デフォルトの名無しさん
2006/11/16(木) 23:57:40不等号の向きが逆?
0714デフォルトの名無しさん
2006/11/16(木) 23:58:59左が大きい方が一般的なんだっけ?ごめんそこらへんテキトー
0715デフォルトの名無しさん
2006/11/16(木) 23:59:18> <<本日までの売上>>
> ナシ:800
> 今日の売上を入力してください.
> ナシ:100
> <<本日までの売上>>
> ナシ:1600
このプログラム、漏れには無理だ…。
0716デフォルトの名無しさん
2006/11/17(金) 00:01:280717デフォルトの名無しさん
2006/11/17(金) 00:03:19FunshokuKessan()
0718デフォルトの名無しさん
2006/11/17(金) 00:08:180719デフォルトの名無しさん
2006/11/17(金) 00:35:57http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2969.txt
クイックソートが正しく行われていなかった主な原因は、中央値を
別の変数に保存しておかなかった事。中央値の位置にある変数は
ソート中に変化するので比較には使えない。
0720デフォルトの名無しさん
2006/11/17(金) 00:38:55http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2970.txt
と思ったらごめん。デバッグ中にファイル名を入れるのが面倒なので
改変してた部分を元に戻した。>>719は消去しました。
0721デフォルトの名無しさん
2006/11/17(金) 00:45:23念レス成功? って、俺と同じ大学の人間かよ
明日の昼提出だから俺といっしょで焦ってるなw
つーわけで俺からも頼みます、応用だけでいいのでお願いします(ペコリ
0722デフォルトの名無しさん
2006/11/17(金) 00:49:56[2] 問題文(含コード&リンク): ローマ数字から算用数字への変換をC言語でつくりなさい。
例 1 = I
2 = II
3 = III
4 = IV
5 = V
http://pc8.2ch.net/test/read.cgi/tech/1149349035/361
↑
別のスレで教えていただいたのですが、プログラムを理解できません。
解説をお願いできないでしょうか??
0723デフォルトの名無しさん
2006/11/17(金) 00:49:580724デフォルトの名無しさん
2006/11/17(金) 00:52:07今むこうで解説を書いてるからちょっと待て。
0725デフォルトの名無しさん
2006/11/17(金) 00:53:57分かりました。お願いします。
0726デフォルトの名無しさん
2006/11/17(金) 01:08:350入れるだけかよ
0727デフォルトの名無しさん
2006/11/17(金) 01:11:15ゆとり教育
0728デフォルトの名無しさん
2006/11/17(金) 01:32:56[2] 問題文:
多倍長演算の手法を用いてキーボードから 20 桁までの整数 a, b を入力し、減算(a - b)をするプログラムを作成せよ。答が負の場合は、マイナス記号を表示させること。
[3] 環境
[3.1] OS:UNIX
[3.2] コンパイラ名:gcc
[3.3] 言語:C
[4] 期限:11月17日4時
[5] その他の制限: charで入力後intの配列へ入れ直す。
0729こまったさん ◆LY1hBagPlw
2006/11/17(金) 01:36:28[2]問題文:
コード番号と名前から構成される構造体(name_list)のスタックマシンプログラムを作成せよ。
スタックマシンとは、LIFO (Last in First Out: 後入れ先出し)を実現する機構で、
push操作によりデータが保存され,pop操作により最も最近pushしたデータが取り出される。
ここで,pop,pushの操作を自己参照型の構造体を利用してプログラムしなさい。
簡単にまとめると最初のoperateにpopかpushを入れます。
popなら番号と名前を入れると、新しいデータが保存されます。
pushなら一番最近に入れたデータを自動で出します。
実行画面:例
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2971.txt
[3] 環境
[3.1]WindowsXP
[3.2]gcc 3.4
[3.3]C/C++/どちらでも可
[4] 期限:2006年11月18日 7:00 まで
[5] 関数popとpushを定義するプログラムで無ければならない。
そのファイルだけで実行できるプログラムで無ければならない。
期限が短すぎて僕には無理そうです…
お願いします・・・
0730デフォルトの名無しさん
2006/11/17(金) 01:42:420731デフォルトの名無しさん
2006/11/17(金) 02:06:56問1
void initialize(int account[]){
for(int i=0;i<=4;i++){
account[i]=0;
}
}
void daily_input(int account[]){
char* hinmoku[]={"りんご","みかん","イチゴ","ナシ","イチジク"};
int tmp;
for(int i=0;i<=4;i++){
printf("%s :",hinmoku[i]);
scanf("%d",&tmp);
account[i]+=tmp;
}
}
void daily_output(int account[]){
char* hinmoku[]={"りんご","みかん","イチゴ","ナシ","イチジク"};
for(int i=0;i<=4;i++){
printf("%s :%d\n",hinmoku[i],account[i]);
}
}
0732デフォルトの名無しさん
2006/11/17(金) 02:09:19http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2972.txt
0733デフォルトの名無しさん
2006/11/17(金) 02:10:22int main(void) {
nt i,account[3][5], input;
char* tenmei[]={"星が丘本店","塩釜口支店","上社支店"};
for (i=0;i<=2;i++){initialize(account[i]);}
printf("初期化を完了しました.\n");
while (1) {
printf("売上を入力しますか.プログラムを終了しますか.(入力:1,終了:99):");
scanf("%d", &input);
if (input == 99) {
printf("終了します\n");
break;
}
printf("本日の売上を入力してください.\n");
for (i=0;i<=2;i++){
printf("%s\n",tenmei[i]);
daily_input(account[i]);
}
printf("<<本日までの売上>>\n");
for (i=0;i<=2;i++){
printf("%s\n",tenmei[i]);
daily_output(account[i]);}
}
return 0;
}
0734デフォルトの名無しさん
2006/11/17(金) 02:46:04typedef void (*PFUNC)(int account[]) ;
int main(void) {
PFUNC syori[] = {daily_input, daily_output,initialize} ;
int i,account[3][5], input;
char* tenmei[]={"星が丘本店","塩釜口支店","上社支店"};
for (i=0;i<=2;i++){
initialize(account[i]);
}
printf("初期化を完了しました.\n");
while (1){
printf("処理を選択してください.\n1:売上入力\n2:売上表示\n3:売上初期化\n99:プログラム終了\n番号を入力してください:");
scanf("%d", &input);
if (input == 99){printf("終了します\n");break;}
else if (input>=1 &&input<=3){
for (i=0;i<=2;i++){
printf("%s\n",tenmei[i]);
syori[input-1](account[i]);
}
}
}
return 0;
}
最後だし全角でインデントしてみたお^^
0735デフォルトの名無しさん
2006/11/17(金) 07:27:10問題19。行数制限により多少汚く整形されている。
#include <stdio.h>
#include <stdlib.h>
void series(int *data, int maxItem, unsigned bunsi, unsigned bunpo, unsigned plusMinus) {
unsigned bunpo2, *item, *itemDiv, *imp, *ikp; int *dap, i, j, k; long x;
item = (unsigned *)calloc(16, sizeof(unsigned)); for (imp = item, i = 16; i--; ) *imp++ = 0;
itemDiv = (unsigned *)calloc(16, sizeof(unsigned));
*item = bunsi * bunpo * 4; bunpo2 = bunpo * bunpo;
for (j = 1; maxItem--; j += 2, plusMinus++) {
x = 0;
for (i = 16, imp = item; i--; ) {x = x * 10000 + *imp; *imp++ = x / bunpo2; x %= bunpo2;}
imp = item; ikp = itemDiv;
if (j == 1) for (i = 16; i--; ) *ikp++ = *imp++; else for (x = 0, i = 16; i--; ) {x = x * 10000 + *imp++; *ikp++ = x / j; x %= j;}
k = 0; dap = data + 16; ikp = itemDiv + 16;
if (plusMinus & 1) for (i = 16; i--; ) {*--dap += *--ikp + k; if (*dap < 10000) k = 0; else {*dap -= 10000; k = 1;} }
else for (i = 16; i--; ) {*--dap -= *--ikp + k; if (*dap >= 0) k = 0; else {*dap += 10000; k = 1;} }
}
free(itemDiv); free(item);
}
void pi(int *data) {
int i; for (i = 0; i < 16; i++) data[i] = 0;
series(data, 45, 4, 5, 1); series(data, 15, 1, 239, 0);
}
int main(void) {
int i, data[32];
pi(data);
printf("円周率π = %1d.", data[0]);
for (i = 1; i <= 15; i++) printf("%04d", data[i]);
return 0;
}
0736デフォルトの名無しさん
2006/11/17(金) 09:27:25配列の先頭から順に10進入力し、入力されたデータの個数をint型で返す関数を作れという事なのですが、EOFまでとはどういう事でしょうか?
コンソールからEOFを入力?できるという事ですか?
どうやったら入力出来るのか、またそれを検出するにはどうすれば良いのでしょうか、教えてください。
携帯からなので読みにくいかもしれませんが宜しくお願いします。
0737r ◆r/etvCKR2A
2006/11/17(金) 09:38:03windowsのコマンドプロンプトならctrl+Z
Unixっぽいshとかならctrl+D
0738r ◆r/etvCKR2A
2006/11/17(金) 09:39:37検出は、feof( stdin )が非0を返すから、それを評価すればいいよ。
0739さん
2006/11/17(金) 10:43:11[2] 問題文(含コード&リンク):
#include <iostream>
using namespace std;
class c1{ //基本クラス
int i;
public:
void seti(int n){i=n;};
int geti(){return i;};
};
class c2 : public c1 {//発生クラス
int j;
public:
void setj(int n) {j = n;};
void
disp(){cout<<geti()<<","<<j<<"\n";};
};
int main()
{
c2 ob;
ob.seti(10); //基本クラスの関数
ob.setj(4); //発生クラスの関数
ob.disp();
return 0;
}
基本クラスc1のメンバ関数iは発生クラスc2のメンバ関数disp()内と
関数main()内で、それぞれアクセスできるか。
基本クラスc1のメンバ関数iをprotectedにしたらどうなるか?
基本クラスc1のメンバ変数iはpublicで、基本クラスc1をprivate指定にしたらどうなるか?
0740さん
2006/11/17(金) 10:44:02[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC++ 6.0
[3.3] 言語: C++
[4] 期限:2006 年11月17日13:00まで
改行が多すぎてエラーになったので分けました、すいませんがよろしくお願いします。
0741デフォルトの名無しさん
2006/11/17(金) 10:49:14自分で試してみれば?としか…
初めて見たな。
0743デフォルトの名無しさん
2006/11/17(金) 11:15:42つoccured class
「occurred class」なんて用語を使う宗派自体見たこと無いw
0745さん
2006/11/17(金) 11:20:110747デフォルトの名無しさん
2006/11/17(金) 11:34:34http://ex17.2ch.net/test/read.cgi/news4vip/1163671379/
0748デフォルトの名無しさん
2006/11/17(金) 12:11:47発生クラス【occurred class】
あるクラスを基にして別のクラスをつくることを「継承」という。
ランタイムの自由な継承によって不本意に発生した、
父親クラスが判然としないクラスのことを発生クラスという。
http://ja.wikipedia.org/wiki/%E7%B6%99%E6%89%BF
0749デフォルトの名無しさん
2006/11/17(金) 12:28:38父親が判然としないのはbastard classじゃないのか?
0751デフォルトの名無しさん
2006/11/17(金) 13:28:11[2] 問題文(含コード&リンク):
[3] 環境
2分木を「深さ優先探索」する。以下のプログラムを完成させなさい。
関数dfs( )で、訪問した頂点の値を表示する。
-------------------ここから--------------------
#include <stdio.h>
typedef struct {
int key;
int left;
int right;
} BT;
int main( void )
{
BT a[ 7 ] = {
{ 10, 1 , 2 },
{ 20, 3 , 4 },
{ 30, 5 , 6 },
{ 40, -1 , -1 },
{ 50, -1 , -1 },
{ 60, -1 , -1 },
{ 70, -1 , -1 }
};
dfs(a, 0);
}
int dfs(
printf("
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: C
[4] 期限:11月20日
[5] その他の制限:特になし
dfsの仕様がわからんのでやりようがない。
引数と戻り値の意味くらい書け。
■ このスレッドは過去ログ倉庫に格納されています