C/C++の宿題を片付けます 58代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/01/18(水) 03:35:45【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して
投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[1] 授業単元:
[2] 問題文(含コード&リンク):
[3] 環境
[3.1] OS: (Windows/Linux/等々)
[3.2] コンパイラ名とバージョン: (gcc 2.9 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++の宿題を片付けます 57代目
http://pc8.2ch.net/test/read.cgi/tech/1136768567/l50#tag993
【過去スレ一覧】
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
0002デフォルトの名無しさん
2006/01/18(水) 04:02:48int main()
{
MessageBox(0,"スレ立て乙"," ",0);
return 0;
}
0003デフォルトの名無しさん
2006/01/18(水) 04:06:33int main(void){
while(1){
puts(">>1スレ立て乙");
}
return 0;
}
0004デフォルトの名無しさん
2006/01/18(水) 04:08:10public static void main(String arg[]){
while(true){
System.out.println("スレ立て乙");
}
}
0005デフォルトの名無しさん
2006/01/18(水) 04:14:18遅くなりました
0006デフォルトの名無しさん
2006/01/18(水) 04:17:43すいません。こちらでお願いします。
0007デフォルトの名無しさん
2006/01/18(水) 04:24:470008デフォルトの名無しさん
2006/01/18(水) 04:34:2800099
2006/01/18(水) 04:53:09[2] 問題文(含コード&リンク):
#include <stdio.h>
int ch;
void getch0(void) {
ch = getchar();
}
int expression(void);
int factor(void) {
int val;
if(ch >= '0' && ch <= '9') {
val = ch-'0';
getch0();
}
else if(ch == '(') {
getch0();
val = expression();
getch0();
}
return val;
}
int term(void) {
int val;
val = factor();
while(ch == '*') {
getch0();
val = val * factor();
}
return val;
}
00109
2006/01/18(水) 04:54:00int val;
val = term();
while(ch == '+') {
getch0();
val = val + term();
}
return val;
}
int main(void) {
printf("expression? ");
getch0();
printf("value=%d\n", expression());
}
この計算プログラムにおいて,2*(3+(4+5)*6) を計算するとき,
どういう順番で,expression, term, factorを呼び出して計算がなされて,
最終的な答えに行き着くのかを説明しなさい。
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限: 2006年1月20日まで
何とぞお手柔らかにお願いします!
00119
2006/01/18(水) 04:57:5600129
2006/01/18(水) 04:59:3000139 ◆jcfgG7aJMA
2006/01/18(水) 05:07:11朝早くからのいたずら、お疲れ様です
0014デフォルトの名無しさん
2006/01/18(水) 05:56:04浅学な我輩にはなかなか面白いプログラムだったよ
2*(3+(4+5)*6)
expression //mainより 戻り値117
term
factor
factor
expression //最初の( , 戻り値57
term
factor
term
factor
expression //2番目の( , 戻り値9
term
factor
term
factor
factor
0015デフォルトの名無しさん
2006/01/18(水) 06:01:12何やってんだか
00169
2006/01/18(水) 07:55:04どうもありがとうございます。そんなにややこしいんですか!・・・
あの〜、ちなみにこのプログラムってどのコマンドで数字を読み取ってるんですか?
scanf() みたいなものが見当たらないので・・・
0017デフォルトの名無しさん
2006/01/18(水) 08:02:31数式を受け取ってどの様に処理してるかは、入力ストリームの話題になるんだけど
文字を受けとる関数はgetch0()関数のgetchar()関数
こいつは標準入力デバイスのバッファからEOFになるまで1文字1文字を読み込む関数で
例えば次のプログラムを見ると
int ch;
while( (ch=getchar())!=EOF )
printf("%c %d\n",ch,ch);
getcharの動作が良くわかる
次に
int ch
while( (ch=getchar())!=EOF ){
printf("%c %d\n",ch,ch);
fflush(stdin);
}
を実行してみると"標準入力デバイスのバッファってのが良くわかるはず
適当にぐぐって
0018デフォルトの名無しさん
2006/01/18(水) 08:29:48ァ ∧_∧ ァ,、
,、'` ( ´∀`) ,、'`
'` ( ⊃ ⊂) '`
00199
2006/01/18(水) 08:33:55丁寧にどうもありです。調べて理解できるようにがんばります!
0020デフォルトの名無しさん
2006/01/18(水) 08:48:00[2] 問題文(含コード&リンク):
問題文自体は無いのですが、コンソール画面上で動く、サーバーとクライアントの通信をする
簡単なゲームプログラムに組み込むタイマー(カウントダウン)を作りたいのです。
仕様としては、サーバー側プログラムの起動時に、引数としてint型で時間の「分」(min)を渡すと、ゲームが開始し、
ゲーム中は画面の端に「mm:ss」と表示してカウントダウンしていく感じにしたいです。
そのタイマーが00:00になったとき、ゲームが終了するようにしたいです。
[3] 環境
[3.1] OS: Linux(RedHat7)
[3.2] コンパイラ名とバージョン: gcc (付属のもので、バージョンは分かりません)
[3.3] 言語: C
[4] 期限: 2006年1月18日 13時15分
[5] その他の制限: 標準ライブラリとmylib.hというヘッダを利用します。
【添付】http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1491.zip
mylib.hは添付のファイルの中にあり、純粋にコンパイルしたもののみ使う形です。
ゲーム自体は、添付のファイル内にあるtagというフォルダの中にある鬼ごっこプログラムです。
(他のフォルダ内のものは今回は使わないです。)
よろしくお願いしますm(_ _)m
0021デフォルトの名無しさん
2006/01/18(水) 09:15:14プログラミングB って大学ですか?
0022デフォルトの名無しさん
2006/01/18(水) 10:18:05[2] 問題文(含コード&リンク):
�@ 変数x,yにそれぞれ4と9を代入して,x/yを計算し,商sと余りrを出力するプログラムを作
成せよ。
�A sを入力し,sから100までの整数のうち7の倍数となる整数を出力するプログラムをfor文ま
たはwhile文を用いて作成せよ。
�B n円を入力した後,画面に「1・ドル 2・ユーロ 3・ウォン」と表示され,1,2,3のいず
れかの番号を入力すると,その指定した通貨の額にn円を換算するプログラムを作成せよ。
なお、為替レートは,ネットなどで調べること。
�C n人分について国語,社会,数学,理科,英語の5科目の得点を入力し,それぞれの合計点を
計算した後,n人を合計点の小さい順に並び替え,出力するプログラムを作成せよ。ただし
,各科目の変数名をko,sy,su,ri,eiとし,配列名はtokutenとすること。
�D 10文字以内の文字列(英字)を入力し,母音(a,i,u,e,o)を取り除いた文字列を出力
するプログラムを作成せよ。(例:momotarou → mmtr)
[3] 環境
[3.1] OS: WindowsXP
[3.2] すいません。わかりません
[3.3] 言語: C
[4] 期限: [2006年01月25日24:00まで]
[5] その他の制限:特にありません。
5問もあって申し訳ありませんが、初心者なので難しいです。よろしくお願いします。
0023デフォルトの名無しさん
2006/01/18(水) 10:31:00ttp://pc8.2ch.net/test/read.cgi/tech/1136768567
�@�Aとかで検索するとすぐみつかるかもne♥
0025デフォルトの名無しさん
2006/01/18(水) 11:11:49�@ぐらいはがんがれ。
0026デフォルトの名無しさん
2006/01/18(水) 11:18:520027デフォルトの名無しさん
2006/01/18(水) 11:20:49[2] 問題文(含コード&リンク):50人のアルファベット表記の名前を、
(1)マージソート (2)クイックソート で辞書順にソートして出力する
プログラムを作成せよ。各プログラムのアルゴリズムも記述すること。
50人の名前は二次元配列で実現し、プログラム内で設定すること(ファイルから読み込むなどの処理は不要)。
[3] 環境
[3.1] OS: WindowsXP Pro
[3.2] コンパイラ名とバージョン: Borland C 5.5
[3.3] 言語: C
[4] 期限: 2006年1月18日19:00まで
[5] その他の制限: 特にありません。時間が迫っておりますのでよろしくお願いいたします。
002923
2006/01/18(水) 11:40:29�D小文字aiueoのみ対応
#include <stdio.h>
int main()
{
char s[10+1],*p;
fgets(s,10+1,stdin);
p=s;
while(*p!='\0'){
if(*p!='a'&&*p!='i'&&*p!='u'&&*p!='e'&&*p!='o')
putchar(*p);
*p++;
}
return 0;
}
0030loi ◆qMuXz8UNv6
2006/01/18(水) 11:56:03[2]• ファイルから数値データを読み込み,その数値の平均をファイルに書き込むプログラ
ムを作成する
• 数値データは全部で100行(ファイルには実際に100 行以上存在している)
• 数値データの入っているファイルは授業用HP にある.なおデータは実数である.
ファイル名: kadai.dat
• 平均を書き込むファイル名はheikin.dat とする.平均はすべてのデータ(600個)の平
均とする
[3] 環境
[3.1] Windows
[3.2] コマンドプロンプト 秀丸
[3.3]C
[4] 本日中
[5]
正直まったくわかりません。というか授業にでていないです。
でも単位が欲しいです。どうすれば課題を提出できるか教えてくれませんか?
お願いします。
0031loi ◆qMuXz8UNv6
2006/01/18(水) 11:57:36include "stdio.h"
/* file_read 関数は【】内を記述する */
double file_read( void )
{
【 】
int i, j;
double data[600];
double heikin;
【 】
for( i=0 ; i<600 ; i+=6 )
{
for( j=0 ; j<6 ; j++ )
【 】
}
for( i=0, heikin=0.0 ; i<600 ; i++ )
{
heikin += data[i];
}
heikin /= 600.0;
printf("heikin -> %lf\n",heikin);
【 】
return heikin;
}
/* file_write 関数の中身を全部記述すること */
void file_write( double heikin )
{
/* ここの中身を記述する */
}
0032デフォルトの名無しさん
2006/01/18(水) 12:00:070033デフォルトの名無しさん
2006/01/18(水) 12:12:00[2] 問題文(含コード&リンク):
[�T] n人分について国語,社会,数学,理科,英語の5科目の得点を入力し,
各科目の最高点を出力するプログラムを作成せよ。
ただし,各科目の配列名をjap,soci,math,sci,engとすること。
[�U] 5人の学生の4科目の試験の得点(1科目につき満点は100点)を入力する.
1人分入力する毎に「合計得点が240点以上で,
かつ各得点が40点以上であるとき合格とする」の条件で,合否を判定せよ.
[3] 環境
[3.1] OS: WindowsXP
[3.2] 初心者なんでわかりません。
[3.3] 言語: C かな。
[4] 期限: [2006年01月20日まで]
C言語難しくて、僕には全くわからないです。
よろしくお願いします!!!
0034デフォルトの名無しさん
2006/01/18(水) 12:18:11前スレに解答あります。
0035デフォルトの名無しさん
2006/01/18(水) 12:21:25kadai.dat っていうやつをアップして
0036デフォルトの名無しさん
2006/01/18(水) 12:27:57main()
{
int dec, bit, coef=0;
char hex[11]={0}, endchar;
do{
printf("10進法での数字を入力してください");
scanf("%d%c",&dec,&endchar);
printf("10進法の%3d\tは",dec);
while(dec!=0)
{
bit=dec%16;
dec/=16;
hex[coef] = "0123456789ABCDEF"[bit];
++coef;
}
printf("16進法では%10s\n",hex);
return;
} while(endchar!='*');
}
だと210がD2じゃなくて2Dってでるんですけどどこが間違ってますか?
0037デフォルトの名無しさん
2006/01/18(水) 12:36:17int a = 210;
printf( "\X\n", a );
0038デフォルトの名無しさん
2006/01/18(水) 12:43:20japだと
0039デフォルトの名無しさん
2006/01/18(水) 12:46:58なめんじゃねーぞ糞が
0040デフォルトの名無しさん
2006/01/18(水) 13:16:29あ、>>37 は
printf( "%X\n", a );
ね。失礼。
004136
2006/01/18(水) 13:37:52質問の仕方が悪かったです、
210だったら2D、258だったら201、280だったら811
というように1桁目>2桁目>3桁目というふうに出力されるのを直したくて質問しました。
前スレの854さんに教えていただいたのを実際に使うとこうなってしまい、今日提出なんで焦ってます。
0042デフォルトの名無しさん
2006/01/18(水) 13:39:420043デフォルトの名無しさん
2006/01/18(水) 13:52:10++coef ===> --coef
hex) ===> hex + coef + 1)
0044デフォルトの名無しさん
2006/01/18(水) 14:17:36004540
2006/01/18(水) 14:20:40printf のフォーマット使いたくないならこれでどう?
#include <stdio.h>
char *convert_base( unsigned n, unsigned base )
{
static char buf[ 1024 ];
char *end = buf + sizeof(buf) - 1;
char *expression = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
*end-- = '\0';
while ( buf != end ) {
*end = expression[ n%base ];
if ( n < base ) break;
n /= base; --end;
}
return end;
}
int main( void )
{
char buf[32];
int a;
while (1) {
fgets( buf, sizeof(buf), stdin );
if ( buf[0] == 'q' ) break;
sscanf( buf, "%d", &a );
printf( " %d\t%s", a, convert_base(a,2) );
printf( "\t%s", convert_base(a,8) );
printf( "\t%s\n", convert_base(a,16) );
}
}
0046デフォルトの名無しさん
2006/01/18(水) 14:29:48これで良いや。
#include<stdio.h>
int main()
{
int dec, bit, coef;
char hex[11]={0}, endchar;
do{
printf("10進法での数字を入力してください");
scanf("%d%c",&dec,&endchar);
printf("10進法の%3d\tは",dec);
for(coef=10;dec;dec/=16){
bit = dec%16;
hex[--coef] = bit["0123456789ABCDEF"];
}
printf("16進法では%10s\n",hex+coef);
}while(endchar!='*');
return 0;
}
0047デフォルトの名無しさん
2006/01/18(水) 14:38:01ガウス消去法
004830
2006/01/18(水) 15:22:401.3 4 0 0 36.179598 36.179598
1.3 4 0 0.1 36.238542 36.238542
1.3 4 0 0.2 36.238542 36.238542
1.3 4 0 0.3 36.238542 36.238542
1.3 4 0 0.4 35.268814 35.268814
1.3 4 0 0.5 35.022824 35.022824
1.3 4 0 0.6 36.626796 36.626796
1.3 4 0 0.7 38.423352 38.423352
1.3 4 0 0.8 42.404821 42.404821
1.3 4 0 0.9 50.056847 50.056847
1.3 4 0 1 56.29155 56.29155
1.3 4 0 1.1 63.364309 63.364309
1.3 4 0 1.2 69.133599 69.133599
1.3 4 0 1.3 73.891168 73.891168
1.3 4 0 1.4 77.865372 77.865372
1.3 4 0.1 0.1 36.238542 36.238542
1.3 4 0.1 0.2 36.238542 36.238542
1.3 4 0.1 0.3 36.238542 36.238542
1.3 4 0.1 0.4 35.126008 35.126008
1.3 4 0.1 0.5 35.149002 35.149002
1.3 4 0.1 0.6 37.415956 37.415956
1.3 4 0.1 0.7 39.538102 39.538102
1.3 4 0.1 0.8 44.041386 44.041386
1.3 4 0.1 0.9 52.435181 52.435181
1.3 4 0.1 1 58.998314 58.998314
1.3 4 0.1 1.1 66.336784 66.336784
1.3 4 0.1 1.2 72.194806 72.194806
1.3 4 0.1 1.3 76.944402 76.944402
1.3 4 0.1 1.4 80.857437 80.857437
004930
2006/01/18(水) 15:24:171.3 4 0.2 0.3 36.238542 36.238542
1.3 4 0.2 0.4 35.003256 35.003256
1.3 4 0.2 0.5 35.544757 35.544757
1.3 4 0.2 0.6 38.752023 38.752023
1.3 4 0.2 0.7 41.186905 41.186905
1.3 4 0.2 0.8 46.237783 46.237783
1.3 4 0.2 0.9 55.412151 55.412151
1.3 4 0.2 1 62.247766 62.247766
1.3 4 0.2 1.1 69.790496 69.790496
1.3 4 0.2 1.2 75.667226 75.667226
1.3 4 0.2 1.3 80.342333 80.342333
1.3 4 0.2 1.4 84.136243 84.136243
1.3 4 0.3 0.3 36.238542 36.238542
1.3 4 0.3 0.4 35.452965 35.452965
1.3 4 0.3 0.5 36.77885 36.77885
1.3 4 0.3 0.6 41.180944 41.180944
1.3 4 0.3 0.7 43.711862 43.711862
1.3 4 0.3 0.8 49.223951 49.223951
1.3 4 0.3 0.9 59.133336 59.133336
1.3 4 0.3 1 66.113423 66.113423
1.3 4 0.3 1.1 73.747224 73.747224
1.3 4 0.3 1.2 79.538658 79.538658
1.3 4 0.3 1.3 84.05313 84.05313
1.3 4 0.3 1.4 87.659236 87.659236
005030
2006/01/18(水) 15:25:131.3 4 0.4 0.5 38.388558 38.388558
1.3 4 0.4 0.6 44.500205 44.500205
1.3 4 0.4 0.7 46.779962 46.779962
1.3 4 0.4 0.8 52.761729 52.761729
1.3 4 0.4 0.9 63.546086 63.546086
1.3 4 0.4 1 70.61663 70.61663
1.3 4 0.4 1.1 78.302961 78.302961
1.3 4 0.4 1.2 83.945404 83.945404
1.3 4 0.4 1.3 88.23714 88.23714
1.3 4 0.4 1.4 91.595744 91.595744
1.3 4 0.5 0.5 44.451739 44.451739
1.3 4 0.5 0.6 51.347464 51.347464
1.3 4 0.5 0.7 51.347464 51.347464
1.3 4 0.5 0.8 57.603556 57.603556
1.3 4 0.5 0.9 69.419834 69.419834
1.3 4 0.5 1 76.38392 76.38392
1.3 4 0.5 1.1 83.987591 83.987591
1.3 4 0.5 1.2 89.329809 89.329809
1.3 4 0.5 1.3 93.259877 93.259877
1.3 4 0.5 1.4 96.259406 96.259406
005130
2006/01/18(水) 15:25:541.3 4 0.6 0.7 51.347464 51.347464
1.3 4 0.6 0.8 60.812886 60.812886
1.3 4 0.6 0.9 75.35268 75.35268
1.3 4 0.6 1 82.39328 82.39328
1.3 4 0.6 1.1 90.047312 90.047312
1.3 4 0.6 1.2 95.065067 95.065067
1.3 4 0.6 1.3 98.574162 98.574162
1.3 4 0.6 1.4 101.152511 101.152511
1.3 4 0.7 0.7 51.347464 51.347464
1.3 4 0.7 0.8 70.349869 70.349869
1.3 4 0.7 0.9 86.527557 86.527557
1.3 4 0.7 1 91.687356 91.687356
1.3 4 0.7 1.1 98.379777 98.379777
1.3 4 0.7 1.2 102.38411 102.38411
1.3 4 0.7 1.3 105.012379 105.012379
1.3 4 0.7 1.4 106.860022 106.860022
005230
2006/01/18(水) 15:26:291.3 4 0.8 0.9 100.859711 100.859711
1.3 4 0.8 1 100.859711 100.859711
1.3 4 0.8 1.1 106.202542 106.202542
1.3 4 0.8 1.2 108.970987 108.970987
1.3 4 0.8 1.3 110.632941 110.632941
1.3 4 0.8 1.4 111.735982 111.735982
1.3 4 0.9 0.9 100.859711 100.859711
1.3 4 0.9 1 100.859711 100.859711
1.3 4 0.9 1.1 108.970987 108.970987
1.3 4 0.9 1.2 111.735982 111.735982
1.3 4 0.9 1.3 113.099775 113.099775
1.3 4 0.9 1.4 113.904037 113.904037
1.3 4 1 1 100.859711 100.859711
1.3 4 1 1.1 116.846683 116.846683
1.3 4 1 1.2 116.846683 116.846683
1.3 4 1 1.3 116.846683 116.846683
1.3 4 1 1.4 116.846683 116.846683
0053デフォルトの名無しさん
2006/01/18(水) 16:14:140054デフォルトの名無しさん
2006/01/18(水) 16:28:40#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
static double next_double( FILE *fp, double *d )
{
char buf[256], *p = buf, c;
while ( !isdigit( c = fgetc(fp) ) )
if ( c == EOF ) return 0;
ungetc( c, fp );
while ( isdigit( c=fgetc(fp) ) || c == '.' )
*(p++) = c;
*p = 0;
*d = atof( buf );
return 1;
}
int main( void )
{
char *filename = "kadai.dat";
FILE *fp;
double sum = 0, d;
unsigned num = 0;
if ( NULL == ( fp = fopen( filename, "r" ))) return 1;
while ( next_double( fp, &d ) ) { sum += d; ++num; }
printf( "Sum: %lf\nNum: %u\nAverage: %lf\n", sum, num, (sum/num) );
fclose( fp );
return 0;
}
0055デフォルトの名無しさん
2006/01/18(水) 16:30:024行目: static double next_double( FILE *fp, double *d )
じゃなくて
訂正 : static int next_double( FILE *fp, double *d )
0056デフォルトの名無しさん
2006/01/18(水) 17:05:10うん、大学の宿題だけど・・・ほとんどの人がそうじゃないの?
0057デフォルトの名無しさん
2006/01/18(水) 17:14:370058デフォルトの名無しさん
2006/01/18(水) 17:29:210059デフォルトの名無しさん
2006/01/18(水) 17:36:23同名の講義あるが俺の所はパスカルだな
006027 ◆bgdlxVqI.o
2006/01/18(水) 17:41:310061デフォルトの名無しさん
2006/01/18(水) 17:49:060062デフォルトの名無しさん
2006/01/18(水) 17:51:48アルゴリズムの単位が貰えるなんてどう考えてもおかしいよな
0063デフォルトの名無しさん
2006/01/18(水) 18:27:030064デフォルトの名無しさん
2006/01/18(水) 18:43:100065デフォルトの名無しさん
2006/01/18(水) 19:11:03一応、あれの実装は処理系定義じゃなかったっけ?
0066デフォルトの名無しさん
2006/01/18(水) 19:16:14ISO/IEC 9899:1999には、その件については何も書かれてないな。
0067デフォルトの名無しさん
2006/01/18(水) 19:33:25かなり頑張った。
0068デフォルトの名無しさん
2006/01/18(水) 19:34:32[2] 問題文: 1.入力用テキストファイルに番号、2科目の得点(0〜100)
を用意する。データ数は5。
2.↑のデータを出力用テキストファイルに出力する。
3.副プログラムを利用し、2科目それぞれの合計点と平均点を出力ファイル
の2.の続きに出力する。(ポインタ変数を扱い、主プログラム
とは別に記憶し、includeする。)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: わかりません
[3.3] 言語: C++
[4] 期限:本日中
たらない頭を使って考えましたがわかりませんでした。
よろしくお願いします!!
006927 ◆bgdlxVqI.o
2006/01/18(水) 19:35:22この他にもあって他は出来てるんですがどうしてもこれだけできないんです
0070デフォルトの名無しさん
2006/01/18(水) 19:46:05来年、もう一度受けろや
そんなのが理解できないならオワットル
0071デフォルトの名無しさん
2006/01/18(水) 20:10:14ここで出てる課題ってクイックソートよりだいぶ程度が低いのが多いけどな。
クイックソートtは結構面倒くさい。
むしろクイックソートが自力で実装できるようになれば、Cは大体理解できてると思う。
0072デフォルトの名無しさん
2006/01/18(水) 20:10:23んなら、50人分のアルファベット表記の名前リストだけ作って
>>1の所にでもうpしれ。
手持ちのマージソートルーチンとクイックソートルーチンを
くっつけてみるから。
0073むう
2006/01/18(水) 20:10:47[2] 問題文:配列[2][2]にそれぞれ0か1が格納されている。
[0][0] [1][0] [2][0]
[0][1] [1][1] [2][1]
[0][2] [1][2] [2][2]
0なら上下左右に移動でき、1なら移動できない。そのとき現在地と目的地を入力し
目的地まで最短で移動するプログラムを作成せよ。出力は「↑に移動する。→に移動する。→に移動する。↑に移動する」というようにする事
[3] 環境
[3.1] OS:WindowsXP
[3.2] コンパイラ名とバージョン:Visual Windows For BC++
[3.3] 言語:C
[4] 期限:無期限
よろしくおねがいします
0074デフォルトの名無しさん
2006/01/18(水) 20:10:55[2] 問題文: 整列されたn 個の数列から二分探索でデータを探索する場合、
与えるデータによって比較する回数は異なるはずである。
そこで、nを1〜10万まで変化させ、その都度、最悪の比較回数を求めるプログラムを作成せよ
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: BCC
[3.3] 言語: C
[4] 期限: 1月23日
[5] その他の制限:
0075デフォルトの名無しさん
2006/01/18(水) 20:11:370076デフォルトの名無しさん
2006/01/18(水) 20:14:46[2] 問題文:CGIを使ったプログラムを作成せよ
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: BCC
[3.3] 言語: C
[4] 期限: 1月23日
[5] その他の制限: CGIを使っていればどういうプログラムでもいいです。
よく分からないので、お願いいたします。
0077デフォルトの名無しさん
2006/01/18(水) 20:17:03http://www.kumei.ne.jp/c_lang/intro/no_80.htm
0078デフォルトの名無しさん
2006/01/18(水) 20:18:38ありがとうございます
0079デフォルトの名無しさん
2006/01/18(水) 20:21:11もう少し複雑なプログラムとかもありますか?
>>76に書き忘れたのですが、あと2つCGIプログラムを作らない
といけないらしいです
0080デフォルトの名無しさん
2006/01/18(水) 20:28:140081デフォルトの名無しさん
2006/01/18(水) 21:08:16C++?
Cじゃないの?
本当にC++?
ウソじゃない?
0082デフォルトの名無しさん
2006/01/18(水) 21:14:58>>46
ありがとうございました、助かりました
0083デフォルトの名無しさん
2006/01/18(水) 21:43:27ウソではないですよ??
C++です
0084デフォルトの名無しさん
2006/01/18(水) 21:44:25C と C++ の区別が出来てますか、ということね。
文字を出力するのに使うのは printf と習ったか、cout と習ったか、どっち?
0085デフォルトの名無しさん
2006/01/18(水) 21:51:25coutと習いましたよ
0086デフォルトの名無しさん
2006/01/18(水) 21:54:02と習いましたか?
#include <iostream>
と習いましたか?
0087デフォルトの名無しさん
2006/01/18(水) 21:54:05この問題を解くのに、
そんなにCとC++の違いが影響するのか?
0088デフォルトの名無しさん
2006/01/18(水) 21:55:120089デフォルトの名無しさん
2006/01/18(水) 21:55:49やっぱりCで書いてって言われたことある。
0090デフォルトの名無しさん
2006/01/18(水) 21:57:12#include<iostream.h>と習いました
0091デフォルトの名無しさん
2006/01/18(水) 22:03:30標準C(C89)はけっこう普及しとるようだが。
0092前スレ920
2006/01/18(水) 22:10:10なんのお礼も出来ませんが、とりあえずぬこ置いてきます
ttp://www.uploda.org/uporg289807.jpg
0093デフォルトの名無しさん
2006/01/18(水) 22:11:042分探索 真面目に書くのメンドクセ。
#include<stdio.h>
unsigned ulog2(unsigned int n){
unsigned r=0,i=16;
do if(n>>i)n>>=i,r+=i;while(i>>=1);
return r;
}
int main(void){
int i;
printf("数列の要素数 最悪の比較回数\n");
for(i=1;i<=100000;++i)printf("%12d%16d\n",i,ulog2(i)+1);
return 0;
}
0094デフォルトの名無しさん
2006/01/18(水) 22:42:17EUCコードでひらがな「あ」は(164,162)の2バイトです。
文字→EUCコード数値への変換プログラムはできたのですが、
逆(EUCコード数値→文字)ができません・・・
つまり
(164,162) を入力して「あ」に変換するにはどうすればいいのでしょうか?
お願いします。
0095デフォルトの名無しさん
2006/01/18(水) 22:45:52ありがとうございます
助かりました
0096デフォルトの名無しさん
2006/01/18(水) 22:50:47いわれのない非難だが、コラっぽい笑顔がムカつく_| ̄|○
名前忘れた関西系の大御所漫才師みたい
0097デフォルトの名無しさん
2006/01/18(水) 22:53:19これでいいのかな?
int main(void)
{
int a,b;
::printf("code1 code2->");
::scanf("%d%d",&a,&b);
char s[3] = {(char)a,(char)b,0};
::printf("->");
::printf(s);
::system("pause");
return 0;
}
0098デフォルトの名無しさん
2006/01/18(水) 22:55:36#include <stdio.h>
int main( void )
{
char a = 164, b = 162;
printf("%c%c\n", a, b );
return 0;
}
>>96
気になるから是が非でも名前を思い出してくれ。
てゆかこの画像有名だよね。
0099デフォルトの名無しさん
2006/01/18(水) 22:56:16C++でCを書くなよw
0100デフォルトの名無しさん
2006/01/18(水) 22:58:000101デフォルトの名無しさん
2006/01/18(水) 23:01:09って、DOS プロンプトで EUC でるかよ
「これでいい?」とかいって、いいわけない
■ このスレッドは過去ログ倉庫に格納されています