C/C++の宿題やらせてください。9代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG今まで1年*ヶ月、ほとんど毎日休まず一生懸命C++を勉強してきた。
わからない宿題若しくは処理があったら私にやらせてくださいm(_ _)m
8代目(前スレ): http://pc2.2ch.net/test/read.cgi/tech/1055056940/l50
7代目: http://pc2.2ch.net/test/read.cgi/tech/1053963794/l50
6代目: http://pc2.2ch.net/test/read.cgi/tech/1053045530/l50
5代目: http://pc2.2ch.net/tech/kako/1051/10515/1051594046.html
4代目: http://pc2.2ch.net/tech/kako/1045/10450/1045074808.html
3代目: http://pc2.2ch.net/tech/kako/1041/10419/1041992392.html
2代目: http://pc3.2ch.net/tech/kako/1039/10397/1039772622.html
宿題手伝いますYO!!: http://pc3.2ch.net/tech/kako/1038/10380/1038024989.html
ラウンジ:質問が長い時はココを使うと便利
http://do.sakura.ne.jp/%7Ejunkroom/cgi-bin/megabbs/lounge/index.html
0232デフォルトの名無しさん
NGNG0233デフォルトの名無しさん
NGNG"文字列"も変数やて
それに、>>206はコマンドラインから入力を受け取ると思うのだが
argc と argv が使えないから、俺の頭では不可能
0234デフォルトの名無しさん
NGNG./a.out < input.txt
0235デフォルトの名無しさん
NGNG面倒やね…
0236デフォルトの名無しさん
NGNG0237デフォルトの名無しさん
NGNG30
0238デフォルトの名無しさん
NGNG>>206には、こう書いてあるのだが
>./tasizan 10 20
>./tasizan 10 20 30
確かに、>>227に入力方法を変えてはいけないと言う条件は無いな…
0239デフォルトの名無しさん
NGNG変数じゃなくて定数・・・
ダメ?
0240デフォルトの名無しさん
NGNGグッジョブ
そのネタ、今日一番おもろかった
0241206
NGNG…できませんTT
皆さんありがとうございました
0242デフォルトの名無しさん
NGNGちょっと待て、
変数使用不可と言う条件が不可能なだけで
恐らく、この課題を出された時に、
無条件に全ての変数の使用不可とは言われてないはずだ
つーわけで、もう少し詳しい条件は無いのか?
0244206
NGNG引数以外に変数を使わないこと。
って書いてあります。
0245デフォルトの名無しさん
NGNGif(!(argc==3)){
printf("二つにしてください\n");
return 0 ;
}
printf("%d\n",atoi(argv[1])+atoi(argv[2]));
return 0;
}
0246デフォルトの名無しさん
NGNG#include <stdlib.h>
int main(int argc, char** argv)
{
if (argc != 3) {
fputs("2つにしてください\n", stderr);
return 1;
}
printf("%d\n", atoi(argv[1]) + atoi(argv[2]));
return 0;
}
0247デフォルトの名無しさん
NGNGstderrは微妙に変数のような…
0248デフォルトの名無しさん
NGNGputs("2つにしてください");
0249デフォルトの名無しさん
NGNGマクロかもしれない
0250206
NGNGだんだん分かってきました
自分まだまだ勉強不足です。もっと勉強します
0251デフォルトの名無しさん
NGNGstdinもstdoutもstderrも
全部freopen()出来なかったっけ?
0252デフォルトの名無しさん
NGNG「問題文は出されたそのままを書きやがれ。
てめえの足りねえ頭で解釈した内容を書くんじゃねえぞゴルァ」
ってかいといたほうがよくない? ま、それでも不毛なやり取りはなくならんだろうけど。
0253デフォルトの名無しさん
NGNG全文が長すぎる場合に、そのまま全て書かせるのもどうかと…
0254デフォルトの名無しさん
NGNG読み込んだ文章と、その文中にある、
単語数、行数、段落数を出力するプログラムの宿題ですが、
途中までやって行き詰まっています。
誰か助けてください。
条件は、文頭にあるvoidの5種類の関数と、whileを使うことです。
自分で途中まで書いた分へのリンクを貼っておきます。↓
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=96
0255デフォルトの名無しさん
NGNGスマン
話の流れは読んでいないんだ。>>247しか見ていない。
0256デフォルトの名無しさん
NGNG問題の意味がわからん。ファイアーエムブレムなどで移動できる位置が明青化する
けど、あれの事?
0257デフォルトの名無しさん
NGNG> if(!(argc==3))
なぜif(argc!=3)と書かないの?
0258デフォルトの名無しさん
NGNGA*アルゴリズムを使って、最短距離探索プログラムを
組んでくれって言ってるんじゃない?
0259デフォルトの名無しさん
NGNGされないみたいだから、調べられないし。ファイアーエムブレムだと、
スタート:0,0 ゴール:4,0 コスト 草:1 森:2 山:4
\01234
0草草草草草
1山山山山草
2山草山森森
3山山森森草
4草草草草草
最短の道順は 0,1 1,1 2,1 3,1 4,1 4,0==12見たいにやるのですが。
惜しいのは、真下に行く==13、大きく回りこむ==13。
0260デフォルトの名無しさん
NGNGそのデータを配列に格納したいのですが、
データがいくつ入力されるのか分からないので、
配列をどのくらいの大きさで宣言すればよいのか分かりません。
そこでmallocでまずメモリを動的に確保して、
データが入力されるたびにreallocでメモリを増やすことを考えたのですが、
1回1回データが入力されるたびにreallocを呼び出すので、
なんだか効率が悪そうで気分が良くありません。
これを解決する何かよいアルゴリズムはありませんでしょうか。
それとも諦めて、多少メモリの無駄遣いにはなりますが、
最初から大きめに配列の大きさを宣言しておくのが良いのでしょうか。
C言語でお願いします。
0261デフォルトの名無しさん
NGNG256バイトずつ確保する
0262261
NGNG0263デフォルトの名無しさん
NGNG「エースター」で検索。
0264デフォルトの名無しさん
NGNGよく使われるのは足りなくなった時に現在の2倍reallocする方法
128,256,512,1024,...などなど
0266デフォルトの名無しさん
NGNGa-star で google
0267デフォルトの名無しさん
NGNGありがとうございます。ありました。
http://izariuo.s12.xrea.com/developing/findpath/
あらゆるパターンを調べていくという事だったので、ゲームで使っているのと
同じだった。遅くなるというのも同じだった。ただ、斜め移動とかどうなって
いるのかよく分からないのですが。
0268デフォルトの名無しさん
NGNG問題自体はよくある西暦・月・日を入力し、
その日の曜日を出力しなさいというプログラムなのですが、
配列や関数などは使わずにif・for・swich-case(breakを使って抜けてはいけない)
と、言う制限がついています。
宜しければ、どなたかヒントをご教授いただけないでしょうか。
ちなみに言語はCです。
宜しくお願いします。
0269132のクラスメート(おそらく)
NGNG関連ホームページみてもさっぱりです。
どなたか ば〜〜〜ん と答えお願いします。
0270デフォルトの名無しさん
NGNGすごいな
0271デフォルトの名無しさん
NGNG文字列定数はarray of charだがどうするんだ。
printfもscanfも使えないぞ。あっそれ以前に関数が使えないんだった
0272デフォルトの名無しさん
NGNG関数が使えないのだからprintfは最初っからつかえないのでokとか。
入出力どーすんだろね。
0273デフォルトの名無しさん
NGNG0274デフォルトの名無しさん
NGNG0275デフォルトの名無しさん
NGNGオマエニマカセタ
0276デフォルトの名無しさん
NGNG0277デフォルトの名無しさん
NGNG0278デフォルトの名無しさん
NGNGgotoは聞いた事がないので使ってはダメだと思います(^^;
0279デフォルトの名無しさん
NGNGならswitchは使うな。
0280デフォルトの名無しさん
NGNG0281デフォルトの名無しさん
NGNG#include<stdio.h>
#include<ctype.h>
#include<locale.h>
#include<wchar.h>
int main(){
int c,y=0,m=0,d=0,day;
wchar_t wc=0;
setlocale(LC_ALL, "japanese");/*ここだけは駄目だった*/
for(;c=getchar(),isdigit(c);y*=10,y+=c-'0');
for(;c=getchar(),isdigit(c);m*=10,m+=c-'0');
for(;c=getchar(),isdigit(c);d*=10,d+=c-'0');
if(m<3) m+=12,y--;
day=(y+y/4-y/100+y/400+(13*m+8)/5+d)%7;
switch(day){
case 0: wc+=L'日'-L'月';
case 1: wc+=L'月'-L'火';
case 2: wc+=L'火'-L'水';
case 3: wc+=L'水'-L'木';
case 4: wc+=L'木'-L'金';
case 5: wc+=L'金'-L'土';
case 6: wc+=L'土';
}
putwchar(wc);
return 0;
}
0282デフォルトの名無しさん
NGNG0283デフォルトの名無しさん
NGNGおぉ…ありがとうございますm(_ _)m
しかし、最初の#include部分はstidio.hまでしか使ったことがないのですが大丈夫でしょうか(汗
ちなみに教科書は
ttp://www.amazon.co.jp/exec/obidos/ASIN/4407023058/qid=1056272941/sr=1-11/ref=sr_1_0_11/250-3896315-5368237
を使っており、ここの3章までの内容で作れとの事でした…。
やはりこれだけで作るのはかなり面倒なんでしょうか?
0284デフォルトの名無しさん
NGNGそんなことやったって意味無いだろうに。ご愁傷様。
0285デフォルトの名無しさん
NGNGmain関数を「使って」いることにはならんのかな。
呼び出さなければ定義するのは問題ないのか?
0286デフォルトの名無しさん
NGNG今までやってきた問題では、最初は
#include<stdio.h>
int main (void)
{
}
return 0;
と、言った感じでした。
って、これが質問の答えになっているかどうかわからないですが(汗
0287デフォルトの名無しさん
NGNG0288デフォルトの名無しさん
NGNG曜日を表示したあとにreturnじゃだめなの?
0289デフォルトの名無しさん
NGNG0290デフォルトの名無しさん
NGNG0291デフォルトの名無しさん
NGNG#include<ctype.h>
int main(){
int c,y=0,m=0,d=0,day;
for(;c=getchar(),isdigit(c);y*=10,y+=c-'0');
for(;c=getchar(),isdigit(c);m*=10,m+=c-'0');
for(;c=getchar(),isdigit(c);d*=10,d+=c-'0');
if(m<3) m+=12,y--;
day=(y+y/4-y/100+y/400+(13*m+8)/5+d)%7;
switch(day){
case 0: putchar('S');putchar('U');putchar('N');return 0;
case 1: putchar('M');putchar('O');putchar('N');return 0;
case 2: putchar('T');putchar('U');putchar('E');return 0;
case 3: putchar('W');putchar('E');putchar('D');return 0;
case 4: putchar('T');putchar('H');putchar('U');return 0;
case 5: putchar('F');putchar('R');putchar('I');return 0;
case 6: putchar('S');putchar('A');putchar('T');return 0;
}
return 0;
}
0292デフォルトの名無しさん
NGNGswich-case-breakはOKなんだから、returnしなくてもいいし。
0293デフォルトの名無しさん
NGNG0294デフォルトの名無しさん
NGNG>>268 breakで抜けてはならない。
文字列定数は配列だから使用不可ということで。
0295デフォルトの名無しさん
NGNG0296デフォルトの名無しさん
NGNG0297デフォルトの名無しさん
NGNG同意。いくらなんでも〜の感が、おそらく釣りでしょう。
0298デフォルトの名無しさん
NGNG>>278でswich-case-breakはOKと書いてある。
0299デフォルトの名無しさん
NGNG「絶対使うな」ではなく出来れば使うなでした…。
話をややこしくしてしまったすみませんでした(汗
0300デフォルトの名無しさん
NGNGやはり無理でしょうか…。
0301デフォルトの名無しさん
NGNG0302デフォルトの名無しさん
NGNGおまいには >>281 や >>291 は見えないのか?
0303デフォルトの名無しさん
NGNGスレ汚しすみませんでした。
0304デフォルトの名無しさん
NGNGアッタマワルイデスネー
0305デフォルトの名無しさん
NGNG「西暦・月・日を入力し、
その日の曜日を出力しなさいというプログラムを
配列を使わずに、組め。」
だろ?違うのか?だったら>291でいいじゃん。
気に入らなきゃ、さっさと問題を直せ。
0306デフォルトの名無しさん
NGNG#include <stdio.h>
int main(){
int y,m,d,day;
printf("year/month/date>");
scanf("%d/%d/%d",&y,&m,&d);
day=(y+y/4-y/100+y/400+(13*m+8)/5+d)%7;
switch(day){
case 0:printf("日曜日\n");
break;
case 1:printf("月曜日\n");
break;
case 2:printf("火曜日\n");
break;
case 3:printf("水曜日\n");
break;
case 4:printf("木曜日\n");
break;
case 5:printf("金曜日\n");
break;
case 6:printf("土曜日\n");
break;
}
return 0;
}
0307デフォルトの名無しさん
NGNG0308デフォルトの名無しさん
NGNGがんばって、配列を使わずにテーブルを作ってね
0309デフォルトの名無しさん
NGNG名前とIDのやつね。
だれか教えてくれ。
0310デフォルトの名無しさん
NGNGchar* sun;
char* mon;
char* tue;
char* wed;
char* th;
char* fri;
char* sat;
}TABLE;
TABLE t = {"月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"};
/* dayに0-6が入ってる */
char* p;
p = (char*)&t + (day*sizeof(char*))
printf("%s"p);
0311310
NGNG0312デフォルトの名無しさん
NGNG316 名前:デフォルトの名無しさん[sage] 投稿日:03/06/11 03:15
>>238
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=87
0314デフォルトの名無しさん
NGNGアライメントの関係で動作は処理系依存
0315デフォルトの名無しさん
NGNGどこが?
0316デフォルトの名無しさん
NGNG0317デフォルトの名無しさん
NGNG使ってくれ
#include <stdio.h>
int main(void)
{
int y,m,day,d;
scanf("%d/%d/%d",&y,&m,&day);
if (m == 1 || m == 2) {
y--;
m += 12;
}
d = (y + y/4 - y/100 + y/400 + (13*m+8)/5 + day) % 7;
switch(d){
case 0:
puts("日");
case 1:
if(d) puts("月"); d = 0;
case 2:
if(d) puts("火"); d = 0;
case 3:
if(d) puts("水"); d = 0;
case 4:
if(d) puts("木"); d = 0;
case 5:
if(d) puts("金"); d = 0;
case 6:
if(d) puts("土"); d = 0;
}
return 0;
}
0318デフォルトの名無しさん
NGNG0319デフォルトの名無しさん
NGNG関数使いたいプログラムって何?
0320デフォルトの名無しさん
NGNG0321デフォルトの名無しさん
NGNG0322デフォルトの名無しさん
NGNG0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNG0325デフォルトの名無しさん
NGNGありがとうございます。
とても助かりましたー。
これで課題1はなんとかなりそうです。
0326デフォルトの名無しさん
NGNG↓なんですけど教えていただけませんか?
ttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=97
0327デフォルトの名無しさん
NGNG0328デフォルトの名無しさん
NGNG出力する宿題が出たのですが途中で改行が入っていて、うまく読み込むことができません。
どうすればいいのでしょうか?
どなたか教えてください。
0329デフォルトの名無しさん
NGNG>>252
0330デフォルトの名無しさん
NGNG0331デフォルトの名無しさん
NGNG「コマンドラインから与えられた文字列を読み込み」ならわかるんだが・・・
与えられた文字列ってどこから与えられた文字列?標準入力でいいの?
■ このスレッドは過去ログ倉庫に格納されています