1 :
以下、名無しにかわりましてVIPがお送りします :
2009/06/07(日) 20:53:44.03 ID:2AGDMPsp0 いわゆる宿題がたまっています ご教授よろしくです
2 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 20:54:02.67 ID:IoKZY6A70 BE:1809644077-2BP(3889)
宿題うp
おっぱいはCが好きな俺が来ましたよ^^v
4 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:54:36.40 ID:ORMfnRBdO
おっぱいうp
5 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:54:57.07 ID:2AGDMPsp0
問題はdo-while文を使うフィボナッチ数の計算です 1から1000まで
6 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:55:05.45 ID:NYIrPTGQ0
さすがに1000行もあるような問題は無理だ
3年目のSEが来ましたよ
8 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:56:12.85 ID:x/KjKoGyO
余裕過ぎてググればまるまるソース載ってるレベル ふざけんな
9 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 20:56:24.74 ID:IoKZY6A70 BE:295452342-2BP(3889)
簡単すぎわろた
10 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:57:05.44 ID:XQlM+UhcO
#include 以下略
11 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:57:31.97 ID:2AGDMPsp0
正直フィボナッチ数が意味わからないです 繰り返しは分かるけど a(n-1) + a(n-2)を繰り返せばいいんかな
12 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 20:58:55.11 ID:q9i5sTEs0
ggrks なんでVIPで聞くの どうボケろというの
フィボナッチ数列がわかれば誰でもできるレベルだと。 そのフィボナッチ数列もググれば一瞬で・・・・・・。
なんだ釣りか
15 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 20:59:17.53 ID:IoKZY6A70 BE:147726522-2BP(3889)
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, …
16 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:00:07.75 ID:2AGDMPsp0
前の二つを足すのかな
17 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:00:09.90 ID:1LwiejzxO
1 1 1 2 1 1 3 3 1 1 4 6 4 1 … だっけ?
18 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:00:42.45 ID:x/KjKoGyO
もう再帰使って書いちゃおうぜ
printf("0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987\n"); だな!!
20 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:00:55.66 ID:IoKZY6A70 BE:1329535049-2BP(3889)
int a=1; int b=1; int c; do { c = a+b printf("%d\n",c); b=c; a=b; } while (c!=1000)
21 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:01:01.26 ID:1LwiejzxO
やべえ恥ずかしい…
22 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:01:46.67 ID:DMgRgk4i0
>>15 に書いてある奴をまず、配列に代入してだな・・・・
23 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:02:06.20 ID:q9i5sTEs0
24 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:02:24.31 ID:8utPhtaw0
帰納式の関数作った方がいいだろ とういか そういう宿題だろ
25 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:02:53.03 ID:+zgwSmni0
俺も再帰つかってフィボナッチ書かされたな 大体ググればソースも転がってるだろ
if文を使わずにswitch文を使い続けてきた俺が来ましたよ
27 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:05:57.38 ID:NYIrPTGQ0
フィボナッチをフィボナビッチって思ってた時期が 俺にもありました
28 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:06:07.87 ID:IoKZY6A70 BE:517041072-2BP(3889)
>>20 これじゃ全然ダメだわ
#include<stdio.h>
int main() {
int a=1;
int b=1;
int c;
do {
c = a + b;
printf("%d\n",c);
a = b;
b = c;
} while (c<=1000);
return 0;
}
後は適当に弄って
終了
29 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:06:09.86 ID:2AGDMPsp0
a_0 = 0, a_1 = 1, a_n = a_(n-1) + a_(n-2) これ使わなきゃならんっぽい
30 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:08:47.30 ID:4rbYyyAp0
指定かよ
31 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:09:12.81 ID:+zgwSmni0
とりあえず問題文要約しろ どういう出力結果が得られればいいんだよ
32 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:09:14.54 ID:q9i5sTEs0
配列を知らないとかそういうオチなのか? っていうかなんでVIPに立てたの
33 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:09:22.86 ID:1nIDBkb70
main(){ unsigned short a_0 = 0; unsigned short a_1 = 1; unsigned short a_n, a_(n-1), a_(n-2); a_n = a_(n-1) + a_(n-2) return 0; }
>>31 dowhile文を使ってフィナボッチ数(a_n = a_(n-1) + a_(n-2) )を0〜1000まで計算せよ
35 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:12:05.42 ID:DMgRgk4i0
まず、main()内の一行目はこれだな。 BOOL a[1000];
定義通りにやるより
>>28 の方が速そうだな
あと個人的に
while(c<=1000);
のところは定数使いたくない
37 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:14:39.40 ID:1LwiejzxO
a_[0]とかa_[n]とかじゃないのか?
こんな程度自分でできないなら学校やめちまえ。
39 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:16:26.17 ID:IoKZY6A70 BE:1772712386-2BP(3889)
>>34 アバウト杉だなwww
その問題文なら別に変数名を a_nとかにしなくてもいいんじゃないの?
main(){ unsigned long int a[3] = {1, 1, 1}; for(;;){ printf("%d\n",a[2]); a[2] = a[1] + a[0]; a[0] = a[1]; a[1] = a[2]; } }
41 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:17:22.44 ID:IoKZY6A70 BE:886356746-2BP(3889)
どうでもいいけど 「ご教示」 な。
42 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:17:36.15 ID:1nIDBkb70
a_1000までなのか a < 1000 までなのか
43 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:17:55.52 ID:q9i5sTEs0
>>1 はどういう学校なの
スペックもkwsk、あとID付きでアナルうpな
VIPならそれぐらいやってもらわんと答えは教えられんな
44 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:18:45.74 ID:DMgRgk4i0
じゃあさあ、一番少ない行数で計算した奴を優勝にするスレにしないか? Cだと無理やり一行に書く奴が出てくるだろうから、;の個数で勝負するのはどうよ?
>>39 変数はたぶんなんでもおk
たださきほどのint a=1,b=1,c
c = a+b b=c;
a=b;
な感じじゃなくa_(n-1) + a_(n-2)使用する
46 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:19:36.00 ID:IoKZY6A70 BE:1292603257-2BP(3889)
>>42 a < 1000は無いでしょ
数がでかくなりすぎ
47 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:19:47.00 ID:1nIDBkb70
>>44 だったらアセンブラソースでいいじゃん
リファレンスから一命令のクロック数換算せい
int a_[20]; int main() { int n = 1; a_[0] = 0; a_[1] = 1; do { ++n; a_[n] = a_[n-1] + a_[n-2]; } while (a_[n] + a_[n-1] <= 1000); } やっつけですが何か
あれ、全然伝わってないか フィボナッチ数を0から1000まで計算するってこと
50 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:20:53.91 ID:g4oyFnB+O
51 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:21:04.81 ID:ZFTmNxMn0
C言語でフォルダ検索してみつけたファイル書き換えるにはどうすればいいの?
52 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:21:17.14 ID:IoKZY6A70 BE:1181808948-2BP(3889)
>>45 なら a , b , c を a_[n]っていう配列に変えればおk
int fib(int n){ if(n==0||n==1){return 1;} return fib(n-1)+fib(n-2); }
できたぞ #include<stdio.h> #include<windows.h> int main(void) { int a,b,c; int i; a=0; b=i=1; do{ printf("%d\n",a); printf("%d\n",b); sleep(2); a+=b; b+=a; }while(i++<=1000); }
55 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:23:43.00 ID:q9i5sTEs0
俺の予想が正しければ、この
>>1 は配列を知らない・・・
いいからだまってアナルうpしろ
学校でやっててこの時期に配列知らないとかあるの?
57 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:25:32.16 ID:IoKZY6A70 BE:775562437-2BP(3889)
#include<stdio.h> int main() { int a_[32]; int n=2; a_[0]=0; a_[1]=1; printf("%d\n%d\n",a_[0],a_[1]); do { a_[n] = a_[n-1] + a_[n-2]; printf("%d\n",a_[n]); a_[n-2] = a_[n-1]; a_[n-1] = a_[n]; } while (a_[n]<=1000); return 0; }
お前ら親切すぎるww
@
60 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:28:23.56 ID:IoKZY6A70 BE:1181808184-2BP(3889)
int a_[32] じゃなくて int a_[3] ね
変数c消して、prinf文とwindows.hとsleepを消してなかったwww
62 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:28:28.79 ID:2AGDMPsp0
うーん
計算量がめちゃくちゃ多いけど、記述量は少なめ #include<stdio.h> int fib(int n){ if(n==0||n==1){return n;} return fib(n-1)+fib(n-2); } int main(){ int n=0; while(fib[n]<1000){printf("%d\n",fib[n++]);} return 0; }
64 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:29:59.56 ID:x/KjKoGyO
何がうーんだもう脳梗塞で死ねよww
暇なんだなぁ #include <stdio.h> main(){ FILE *fp; fp = fopen("re.txt","w"); fprintf(fp, "フィボナッチ数列\n1\n"); int a[3] = {1, 1, 1}; while(a[2]>0){ fprintf(fp, "%d\n",a[2]); a[2] = a[1] + a[0]; a[0] = a[1]; a[1] = a[2]; } fclose(fp); }
66 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:30:32.56 ID:IoKZY6A70 BE:295452724-2BP(3889)
>>62 何が不満なの?wwwwwwwwwwwwwwwwwwwwww
67 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:30:33.60 ID:h9Aq1Ke10
#include <iostream> #include <vector> using namespace std; main() {
ところでさ、intって何bit?
69 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:30:48.13 ID:+zgwSmni0
>>62 何が分からないのか俺には分からんが
聞く時は自分で考えてある程度プログラムの構想を組み立ててから聞け
全部他人に丸投げすんなクズ
70 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:30:59.15 ID:2AGDMPsp0
まだ全然初期だから知らない関数が多くて、、
あああああああああああああああああああ
72 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:31:37.63 ID:NYIrPTGQ0
75 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:33:09.09 ID:r9A5huTo0
76 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:33:28.86 ID:4rbYyyAp0
77 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:33:29.41 ID:q9i5sTEs0
関数なんてほかにprintfしか使ってないだろwwww なんか、配列がどうとかってレベルでもないらしいな いいからアナルうp
これであっているはず #include<stdio.h> int main(void) { int a,b; a=0; b=1; do{ a+=b; if(b+a<=1000) b+=a; }while(a+b<=1000||b+a<=1000); return(0); }
>>65 そのプログラムは、a[2]がオーバーフローして負になることを前提にしてて気持ち悪い
正のままループするようなものに応用すると死にそう
80 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:36:14.81 ID:2AGDMPsp0
途中だしエラーだけど自分だとこうしてる #include <stdio.h> int main(void) { int a = 0,n = 1; do{ n += n; a = a(n-1) +a (n-2); }while ( n > 1000); printf("%d",a); return (0); }
81 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:36:49.00 ID:IoKZY6A70 BE:332384033-2BP(3889)
#include<stdio.h> /*おまじない*/ int main() { int a_[3]; /*a_[0] a_[1] a_[2] という3つの変数のかたまり(配列 - はいれつ)を準備*/ int n=2; /*変数nを定義し2を代入*/ a_[0]=0; /*a_[0]に0を代入 (1個目のフィボナッチ数)*/ a_[1]=1; /*a_[1]に1を代入 (2個目のフィボナッチ数)*/ printf("%d\n%d\n",a_[0],a_[1]); /*a_[0]とa_[1]を画面に表示*/ do { a_[n] = a_[n-1] + a_[n-2]; /*a_[n]、つまりa_[2]に、a_[n-1]つまりa_[1]と、a_[n-2]つまりa_[0]を足したものを代入*/ printf("%d\n",a_[n]); /*a_[n]を画面に表示して改行*/ a_[n-2] = a_[n-1]; /*a_[0] に a_[1]を代入*/ a_[n-1] = a_[n]; /*a_[1] に a_[2]を代入*/ } while (a_[n]<=1000); /*a_[n] が1000以下のとき、繰り返す*/ return 0; }
ああそういう釣りなのね・・・
ソース書かずに言うのもなんだけどif文とかwhile分の条件式でマジックナンバー使うのってどうなの? 普通先に定数にしないの?
84 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:38:19.99 ID:+zgwSmni0
俺の場合はこんな 適当だけど っていうかなんでdowhileなんだろ #include <stdio.h> int main() { int a_[3] = {1, 0, 0}; do{ a_[2] = a_[0] + a_[1]; a_[0] = a_[1]; a_[1] = a_[2]; printf("%d\n", a_[2]); }while(a_[0] + a_[1]<= 1000); return 0; }
85 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:38:40.21 ID:1nIDBkb70
ねぇねぇ、 <stdint.h> 使おうよ 後で困るんだよ
プリントは最後の計算結果だけでおkです
87 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:38:57.71 ID:3qNaYBtH0
88 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:39:11.23 ID:1LwiejzxO
>>81 nは2で固定なのに変数にする必要が全くないだろw
90 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:40:00.23 ID:3qNaYBtH0
>>70 知ってる関数書き出してみろよ
それにあった様に作ってもらえるだろ
91 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:40:10.33 ID:VJkRflfAP
>>83 俺が学生の頃はマジックナンバーって言葉すら知らなかったよ
92 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:40:25.23 ID:NYIrPTGQ0
a(n-1) +a (n-2); てなんですか師匠 関数ですか
93 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:41:08.90 ID:IoKZY6A70 BE:1994301296-2BP(3889)
>>89 a_[n-1]、a_[n-2]みたいな表現を使わないといけないみたいなので
まだpintf,scanfにif文switch文do文while文のみです
95 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:42:17.36 ID:3qNaYBtH0
>>92 a(n-1) +a (n-2)
=a*(n-1) +a* (n-2)
(a*n-a*1)+(a*n-a*2)
どんなけ進むの遅い講義なんだ・・・・?
97 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:42:38.45 ID:2AGDMPsp0
俺のプログラムが簡潔で尚且つ一番的を射ている
99 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:42:50.99 ID:1LwiejzxO
100 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:43:06.68 ID:IoKZY6A70 BE:1107945656-2BP(3889)
101 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:44:10.36 ID:3qNaYBtH0
>>96 パソコンのつけ方、消し方、フォルダの作り方、クリック、ダブルクリックで一週間かかる事だってある
本当に一からやられる
102 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:44:50.00 ID:2AGDMPsp0
#include <stdio.h> int main(void) { int a = 0,n = 1; do{ n += n; a = a * (n-1) +a * (n-2); }while ( n > 1000); printf("%d",a); return (0); } でできたつもりなのに0が表示される、、、 なんでダメなんだろう
103 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:44:50.26 ID:+zgwSmni0
ほれ、配列なくしてやったぞ #include <stdio.h> int main() { int a = 1; /*初期値の代入*/ int b = 0; int c = 0; do{ c = a + b; a = b; b = c; printf("%d\n", c); }while(a + b <= 1000); /*次の計算でcが1000を越えるなら終了*/ return 0; }
104 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:45:16.07 ID:6oJ1NA0T0
>>98 (1)宣言部でa,bを初期化すべき
(2)if(b+a<=1000)が冗長
(3)(a+b<=1000||b+a<=1000)が冗長
>>103 おおとても分かりやすいです
たぶん配列ってのが知らないです
でもa = a * (n-1) +a * (n-2);で計算しなければならないのです
>>94 printfを最初に学ぶのは普通だけど
そのあとにscanfが来る時点でその講義はクソだ
scanfを理解するには配列やポインタ、ファイル処理とクリアしないといけない課題が多い
その道で就職したいなら自力でカーニハン& リッチーのプログラミング言語C を読んだ方がいい
108 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:46:36.33 ID:mvH7xx5i0
>>102 いきなり1000回って考えないで
最初の3回ぐらいを頭の中で計算してみるといい
そうする習慣がつけば何で0なのか悩まなくなれる
109 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:46:55.86 ID:3qNaYBtH0
>>102 > #include <stdio.h>
> int main(void)
> {
> int a = 0,n = 1;
> do{
> n += n;
> a = a * (n-1) +a * (n-2); (一回目は0をかけてるから演算結果aは0、二回目以降も同じ)
> }while ( n > 1000);
> printf("%d",a);
> return (0);
> }
> でできたつもりなのに0が表示される、、、
> なんでダメなんだろう
OK?
111 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:48:39.23 ID:PbrwWF790
>>102 バカか?
最初に a = 0 じゃ a * (x) + a * (y) を何回やっても 0 じゃん
>>1 問題文をうpしる。a[n]とa(n)とa*(n)は全然違うんだぜ?わかってるかい?
113 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:48:55.94 ID:IoKZY6A70 BE:2363616588-2BP(3889)
どんどん仕様増やすなヴォケ
114 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:49:20.86 ID:NYIrPTGQ0
K&Rは
>>1 には難しすぎると思うwwwwwwwwww
まぁ、マジレスすると 簡潔さより 再帰関数使って分かりやすいコード書いた方が役に立つわな いかにもフィボナッチ解いてますってコード。
116 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:49:45.59 ID:VJkRflfAP
その前に条件式を指摘してやれよ
117 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:50:22.86 ID:+zgwSmni0
>>106 問題文にそれで計算しろと提示されてるのか?
118 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:50:27.29 ID:2AGDMPsp0
int main(void) { int a,n = 1; do{ a = a * (n-1) +a * (n-2); n += n; }while ( n > 1000); がんばってるけどできません、、なんでだろう
>>115 #include<stdio.h>
int fib(int n){return n<2?n:fib(n-1)+fib(n-2);}
void main(){
int n=0;
while(fib[n]<1000){printf("%d\n",fib[n++]);}
}
120 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:51:04.90 ID:3qNaYBtH0
122 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:52:02.30 ID:5Sqi+WC10
これはひどい
123 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:52:16.35 ID:q9i5sTEs0
> a = a * (n-1) +a * (n-2); まずこれをなんとかしろよwwwwwwwwwwwwwwwwwww
124 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:52:44.61 ID:kKhGX/nj0
【審議中】 /\/\/\/\/\/\ ./ ./| /| /| ./| ./| ./| ∴\/./ . / / / / / ゚∵ |/∵|/; :|/:;;;|/.;. |/ ;.;|/ _, ,_ _, ,_ _, ,_ _, ,_ _, ,_ _, ,_ (ノ゚Д゚) ノ゚Д゚) ノ゚Д゚) ノ゚Д゚) ノ゚Д゚) ノ゚Д゚)ノ / / / // // // // /  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
その問題文見せてくんない?
while ( n > 1000); これは酷いwww
128 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:53:19.89 ID:PbrwWF790
>>118 a を初期化してない
a には何が入ってるか分からない
129 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:53:19.45 ID:IoKZY6A70 BE:443178443-2BP(3889)
a = a * (n-1) +a * (n-2); こんなんじゃ無理だよ
130 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:53:32.75 ID:1nIDBkb70
飽きてきたから 誰かオブジェクティブに書いてくれよ
9割の参考書はprinftの次にscanfじゃないか? もしくは同時か
132 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:54:07.86 ID:2AGDMPsp0
>>126 do-while文を使用し、0から1000までのフィボナッチ数を順に計算しなさい。
フィボナッチ数とは、a_0 = 0, a_1 = 1, a_n = a_(n-1) + a_(n-2)となる数です。
133 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:54:09.66 ID:+zgwSmni0
>>121 それ読み間違いじゃないのか?
どう考えても配列の考え方だぞそれ
配列習ってないのに配列使って問題解かせるかよ普通
134 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:54:17.48 ID:h9Aq1Ke10
#include <iostream> using namespace std; int main() { for(int i = 1, j = 1; i <= 1000; i += j, j += i) { cout << i << " " << j << " " ; } return 0; } ナオミビッチ数できました
135 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:54:17.76 ID:PbrwWF790
ていうか、
>>1 はプログラムのセンスないんじゃない?
あきらめたほうがいい
136 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:54:33.21 ID:KrOcRagD0
でも実際こういうミスにかける時間が一番長かったりして腹が立つ
>>1 よ
>>29 のこの式は正確か?
a[0] = 0, a[1] = 1, a[n] = a[n-1] + a[n-2]
ではないか?確認してくれ
139 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:55:05.34 ID:IoKZY6A70 BE:1034082847-2BP(3889)
>>132 a = a * (n-1) +a * (n-2);
で計算しろなんて一言も書いて無いじゃんwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
>>128 でもどの数にすればいいのかわからないです、、
141 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:55:44.29 ID:ylKEhoWuP
こいつバカにもほどがあるだろ プログラミングとかやる前に数学勉強しろやタコ
142 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:55:45.67 ID:3qNaYBtH0
>>132 どうみても >a = a * (n-1) +a * (n-2); を必ず使えと書いてありません本当にありがとうございました
143 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:55:54.47 ID:+zgwSmni0
やっぱり
>>1 の読み間違いだ
問題文はフィボナッチの定義を紹介しているに過ぎないぞ
>>134 それ、運が悪いと1000超えるとこで1個増減するだろ
146 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:56:30.31 ID:IoKZY6A70 BE:1329534566-2BP(3889)
>>144 100%聞き間違いだ。
a = a * (n-1) +a * (n-2);
じゃ絶対無理
147 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:56:56.28 ID:ylKEhoWuP
>>144 フィボナッチ数がどうとかいう前に数列って何かわかりますか????
148 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:57:06.90 ID:h9Aq1Ke10
>>145 即席にけちをつけられても困るが、
一応987でとまったよー
149 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:57:23.55 ID:+zgwSmni0
>>144 さっきも言ったけど
それ実装すると配列使わなきゃいけなくなる
a_0 = 0, a_1 = 1, a_n = a_(n-1) + a_(n-2) これの _ っていうのは*じゃないんですか? 何なんですかこれ?
>>144 お前の聞き間違いか、先生の頭が終わってるか
まぁ前者だろうけど
配列
153 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 21:58:14.89 ID:IoKZY6A70 BE:443178926-2BP(3889)
>>150 それはただの変数の一部って考えればいいよ
a_0 て名前の変数
意味はない
154 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:58:18.39 ID:+zgwSmni0
155 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:58:19.40 ID:2AGDMPsp0
でも配列しらないです、、先生酷いですね、、、
>>148 「○以下のものをすべて表示せよ」って問題に対して、2個まとめて表示しようとするのは良くないんじゃない?って話
奇数だったら困るでしょ
157 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:58:59.49 ID:2AGDMPsp0
みんながさんざんいってるが”配列”って単語は聞き覚えないか? それを使うか使わないかで全然違ってくるんだよ
159 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:59:32.32 ID:ylKEhoWuP
>>155 別に繰り返すごとに出力すればいいから配列なんていらないから
>>150 アンダーバーは下付き文字を表す
数列でaの右下にちっこいもじで0とか1とか書いてあっただろ。それを意味する
161 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:59:40.96 ID:2AGDMPsp0
a_n = a_(n-1) + a_(n-2) でもとなるとこれはどう計算するんですか?
162 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 21:59:46.43 ID:3qNaYBtH0
>>150 a_0 = 0は
a_(0 - 1) + a_(0 - 2)
a_1 = 1は
a_(1 - 1) + a_(1 - 2)
と言う風になるって言う説明だwwwwwww
負(マイナスになるけど習ってないので無視)の数は無視
163 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:00:17.58 ID:88Q2VxCHO
ゼロサプレスする方法教えてくれ
つうか配列なんて調べればすぐに理解できるだろ
165 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:00:29.36 ID:2AGDMPsp0
166 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:00:41.97 ID:NYIrPTGQ0
お前マジでプログラミング以前の問題じゃねえかこれ
167 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:00:46.72 ID:IoKZY6A70 BE:1551123476-2BP(3889)
>>161 これでおk
#include<stdio.h>
int main() {
int a=0;
int b=1;
int c;
do {
c = a + b;
a = b;
b = c;
} while (a+b<=1000);
printf("%d\n",c);
return 0;
}
>>1 よ、配列はとりあえずいいとして
数学の数列ってのは知ってるか?
169 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:01:55.62 ID:2AGDMPsp0
#include <stdio.h> int main(void) { int a,n = 1; do{ a = (n-1) + (n-2); n += n; }while ( n < 1000); printf("%d",a); return (0); } これ違いますか?
170 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:01:55.98 ID:ylKEhoWuP
配列は数値保存しておくならいるってだけだろ? なくても困らねえよ
171 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:02:19.92 ID:U/Zi5SYrO
あ?
172 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:02:28.85 ID:+zgwSmni0
>>161 つまり
a(n-1)とa(n-2)の値をどこかに格納しなきゃならないわけだ
そこで
>>167 みたいなプログラムを使う
173 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:02:38.51 ID:2AGDMPsp0
お前らは優しいやつらだよ本当に
175 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:03:20.51 ID:NYIrPTGQ0
つか
>>1 のPCはコンパイラ入ってないのか
入ってないだろうな
177 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:04:16.39 ID:3qNaYBtH0
>>169 「順に」計算するんですよね?計算はどこで?
178 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:04:34.50 ID:UxsAmUBE0
日本語プログラミング言語「なでしこ」なら一行でいける 1から1000までフィボナッチ出せ ためしてみろ
179 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:05:06.87 ID:IoKZY6A70 BE:1181808948-2BP(3889)
>>169 (n-1) (n-2)ていう表現は忘れろ
配列知らないならこの表現は意味がない
>>167 で100%合格だから良く読んで理解せよ
180 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:05:10.66 ID:2AGDMPsp0
ううう難しいです
>>167 さんのプログラムで分かりましたが
でも理解はできてないかもです
181 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:05:32.83 ID:+zgwSmni0
最初にcの値をa+bで求めるわけだが そこで求めた値を次で格納してるの aにbを、bにcをって代入していけば a(n-1)とa(n-2)の値が保持されていることになる これが理解できなきゃお前終わり
とりあえずdo-whileはおいといて5回ぐらい単純に計算してみろよ… a_0=1 a_1=1 //←ここまで初期値 a_2=1+1=2 //a_0+a_1 a_3=1+2=3 //a_1+a_2 a_4=2+3=5 ループ云々の前に理解してないこと大杉
184 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:06:07.50 ID:1nIDBkb70
今更だけど どこにもC言語で書けとは書いてないんだよね
185 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:06:16.73 ID:2AGDMPsp0
>>179 分かりました
問題文のa_n = a_(n-1) + a_(n-2)だけが理解できないのですがそういう事なら大丈夫そうですね
ありがとうございました
186 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:06:19.60 ID:ylKEhoWuP
>>180 お前はまずフィボナッチ数列がどういう数列かを理解してない
わかってれば
>>167 見ただけでなにやってるかすぐわかる
ちょっと自分がどんなプログラム書いてるのか コメント打ってみろよ、何をしたいのかさっぱりわからん
188 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:07:14.66 ID:2AGDMPsp0
すいませんたぶんフィボナッチ数列の意味が理解できてないのです
>>180 お前が考えるフィボナッチをa_10ぐらいまで手で計算してみろよ
190 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:08:21.50 ID:LNXEliXPO
だめだこりゃ
191 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:08:28.05 ID:+zgwSmni0
>>188 ggrksといいたいとこだけど
フィボナッチ数列っていうのは
前に求めた値 + 前の前に求めた値 で成り立ってる
192 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:08:43.77 ID:LWf+usI40
ここうけるなw
193 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:08:47.22 ID:2AGDMPsp0
あれでも答えは2487?くらいになるそうです
194 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:09:01.68 ID:QF8m1yUq0
ggrks
196 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:09:28.39 ID:2AGDMPsp0
int main(void) { int a=0,b=1,c; do {c = a + b; a = b; b = c; } while ( a <=1000); printf("%d\n",c); return (0); } おそらくこうです
197 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:10:05.11 ID:IoKZY6A70 BE:590905128-2BP(3889)
>>188 フィボナッチ数1個目 = 0
フィボナッチ数2個目 = 1
フィボナッチ数3個目 = 1個目+2個目 = 0 + 1 = 1
フィボナッチ数4個目 = 2個目+3個目 = 1 + 1 = 2
フィボナッチ数5個目 = 3個目+4個目 = 1 + 2 = 3
フィボナッチ数6個目 = 4個目+5個目 = 2 + 3 = 5
フィボナッチ数7個目 = 5個目+6個目 = 3 + 5 = 8
フィボナッチ数8個目 = 6個目+7個目 = 5 + 8 = 13
フィボナッチ数9個目 = 7個目+8個目 = 8 + 13 = 21
これを延々と繰り返す
分かった?
198 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:10:29.31 ID:NYIrPTGQ0
ID真っ赤にして教えてるやつ親切すぎるwwwwwwwwwwww
199 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:10:45.24 ID:+zgwSmni0
>>196 いや違うだろ
なんでaを評価してるんだよ
それだと1000超えてなお計算してるだろ
>>132 よく見たら何の計算するか書いてないじゃないか!
202 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:11:16.37 ID:ylKEhoWuP
よしわかったまず関数ってわかるか f(0)=0 f(1)=1 f(n)=f(n-1)+f(n-2) で定義される関数のf(0)からf(1000)までの値を求めろっていってんだよ わからないならしね
203 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:11:21.08 ID:KrOcRagD0
int main(){ int 一項前=0; int 二項前=1; int 今の項数=1; int 保存しとく変数a[収まりそうなくらいの数]; do{ 保存しとく変数a[今の項数] = 一項前 + 二項前; //次の計算の準備 二項前 = 一項前; 一項前 = 今の項; }while(1000まで) どっかに出力; } 久しぶりにやてみたぜ・・・
204 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:11:51.88 ID:hV2462or0
>>199 答えが1000を越えるんじゃなくフィボナッチ数が0から1000までの計算です
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, … を足していくんだと思われます
206 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:12:08.85 ID:UxsAmUBE0
207 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:12:35.10 ID:1LwiejzxO
今さらなんだが、do{}while()すると 最後の一回余分じゃないか?
208 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:12:44.35 ID:1nIDBkb70
フィボナッチ数は黄金比 モナリザのレプリカでも提出すれば好成績間違いなし
>>202 Cでfib(1000)求めよってことは、多倍長演算実装しろって意味なのかな?
210 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:13:46.92 ID:+zgwSmni0
>>207 >>167 のプログラムみたいに
次の計算結果を評価してやればおk
ぶっちゃけdowhileでやる意味あんまないんだけど
>>205 じゃぁフィボナッチ数が3の答えって何?
>>205 で書かれている数列の3つ目の1が正解?それとも0+1+1=2で2が正解?定義をはっきりさせろ
212 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:14:54.76 ID:rb3a2bd60
#include <stdio.h> void main() { int a,b,c; a=0; b=1; c=0; do { c = a + b ; if(c<=1000) { printf("%d\n",c); } a = b; b = c; } while(c<=1000) ; } ちゃちゃっとつくった
213 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:14:57.65 ID:2AGDMPsp0
>>211 0, 1, 2, 3, 5, 8,... と続きます。
だそうです
ようは987で終わればいいんだよな? do { c = a + b; //c=987 とすると、a=377 b=610 a = b; // a=610 b = c; // b=987 } while ( a <=1000); //もちろんa=610なんで続行 どう考えてもおかしいだろ?
215 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:15:49.15 ID:+zgwSmni0
結局どんな出力結果が得られれば満足なんだよ それが分らないんじゃ話にならない
217 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:16:48.43 ID:2AGDMPsp0
218 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:17:16.75 ID:LWf+usI40
おかんに携帯の操作伝えるときのあのもどかしさ
219 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:17:18.04 ID:1LwiejzxO
>>210 thx
普通この手のはwhileだよね
220 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:17:19.85 ID:IoKZY6A70 BE:517042027-2BP(3889)
フィボナッチ数 1個目 = 0 フィボナッチ数 2個目 = 1 フィボナッチ数 2個目 = 0 + 1 = 1 フィボナッチ数 3個目 = 1 + 1 = 2 フィボナッチ数 4個目 = 1 + 2 = 3 フィボナッチ数 5個目 = 2 + 3 = 5 フィボナッチ数 6個目 = 3 + 5 = 8 フィボナッチ数 7個目 = 5 + 8 = 13 フィボナッチ数 8個目 = 8 + 13 = 21 フィボナッチ数 9個目 = 13 + 21 = 34 フィボナッチ数10個目 = 21 + 34 = 55 フィボナッチ数11個目 = 34 + 55 = 89 フィボナッチ数12個目 = 55 + 89 = 144 フィボナッチ数13個目 = 89 + 144 = 233 フィボナッチ数14個目 = 144 + 233 = 377 フィボナッチ数15個目 = 233 + 377 = 610 フィボナッチ数16個目 = 377 + 610 = 987 フィボナッチ数17個目 = 610 + 987 = 1597 フィボナッチ数18個目 = 987 + 1597 = 2584 これでどうか
221 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:17:28.83 ID:2AGDMPsp0
すいません2584でした。
このスレが釣りだったらどれだけ救われることか・・・
223 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:18:18.83 ID:2AGDMPsp0
224 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:18:52.19 ID:IoKZY6A70 BE:1329534094-2BP(3889)
フィボナッチ数 1個目 = 0 フィボナッチ数 2個目 = 1 フィボナッチ数 2個目 = 0 + 1 = 1 フィボナッチ数 3個目 = 1 + 1 = 2 フィボナッチ数 4個目 = 1 + 2 = 3 フィボナッチ数 5個目 = 2 + 3 = 5 フィボナッチ数 6個目 = 3 + 5 = 8 フィボナッチ数 7個目 = 5 + 8 = 13 フィボナッチ数 8個目 = 8 + 13 = 21 フィボナッチ数 9個目 = 13 + 21 = 34 フィボナッチ数10個目 = 21 + 34 = 55 フィボナッチ数11個目 = 34 + 55 = 89 フィボナッチ数12個目 = 55 + 89 = 144 フィボナッチ数13個目 = 89 + 144 = 233 フィボナッチ数14個目 = 144 + 233 = 377 フィボナッチ数15個目 = 233 + 377 = 610 フィボナッチ数16個目 = 377 + 610 = 987 ←これ以上やるとn個目フィボナッチ数が1000を超えるぞ フィボナッチ数17個目 = 610 + 987 = 1597 フィボナッチ数18個目 = 987 + 1597 = 2584 ←これ以上やると、(n-2)個目のフィボナッチ数が1000を超えるぞ
背景差分で出てきた画像中の物体の外接四角形作りたいんだけどどうやったらできるかな?
ああ、じゃあ解決か?
227 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:19:26.18 ID:rb3a2bd60
#include <stdio.h>
void main()
{
int a,b,c,d;
a=0;
b=1;
c=0;
d=0;
do
{
c = a + b ;
if(c<=1000)
{
printf("%d\n",c);
}
a = b;
b = c;
d+=c;
}
while(c<=1000) ;
printf("合計は%d",d);
}
>>217 合計計算したら4179になったぞ
計算間違ってんじゃねぇの
はい!できました ありがとうございます
これでいいですか>< #include<stdio.h> int main(void) { int a=0,b=1; do{ a+=b; if(b+a<=1000) b+=a; }while(b+a<=1000); return(0); }
どうでもいいけど0はフィボナッチ数じゃないぞ
fib(1000)って 43466557686937456435688527675040625802564660517371780402481729089536555417949051 89040387984007925516929592259308032263477520968962323987332247116164299644090653 3187938298969649928516003704476137795166849228875 なんだけど、こっちを計算するんじゃないのか?
232 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:20:09.88 ID:QF8m1yUq0
ちゃんと理解できたのかよ
233 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:20:24.78 ID:h9Aq1Ke10
2変数で頑張ったけど無理だった! #include <iostream> using namespace std; int main() { for(int i = 1, j = 0, k = 0; i+j < 1000; k = i, i = j, j += k) { cout << i+j << " " ; } return 0; }
234 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:20:47.30 ID:2AGDMPsp0
235 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:20:53.66 ID:KrOcRagD0
>>203 int main(){
二項前=1;
一項前=0;
今の項数=2;
保存しとく変数a[1001];
a[1] =0;
do{
保存し得変数a[今の項数] = 一項前 + 二項前;
//次の計算の準備
二項前 = 一項前;
一項前 = 今の項;
}while(今の項数 <= 1000)
どっかに出力;
}
修正自己レス
できました・・・じゃねーぞ!お前ができたのはコンパイラがちゃんと回って計算できたことであって プログラムを書いたことではない!しっかり復習しとけこのスカタン!
238 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:21:50.59 ID:IoKZY6A70 BE:923288055-2BP(3889)
239 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:22:00.47 ID:+zgwSmni0
240 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:22:53.33 ID:1LwiejzxO
オマイら優しいな
たぶん構造体とかポインタあたりでまたスレ立てるぞこのガキwww
242 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:24:22.57 ID:rb3a2bd60
#include <stdio.h> void main() { int a,b,c,d; a=0; b=1; c=0; d=0; printf("で、いったいいくつまでのがほしいわけ?\n"); scanf("%d",&d); do { c = a + b ; if(c<=d) { printf("%d\n",c); } a = b; b = c; } while(c<=d) ; } ちょっと改良
243 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:24:52.76 ID:q9i5sTEs0
さて、解決したところでなにかうp
244 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:24:57.06 ID:NYIrPTGQ0
>>241 いや二重繰り返しかユーザ関数あたりでしょ
>>241 むしろ言語に関係ないとこできそうだけどなwww
246 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:25:50.60 ID:+zgwSmni0
こんだけ教えてるのにこの手ごたえの無さといったらなんだ
247 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:26:18.53 ID:rb3a2bd60
結局
>>1 がほしいフィボナッチ数は
1000以下のフィボナッチ数のうち最大のもの
1000以上のフィボナッチ数のうち最小のもの
1000以上のフィボナッチ数のうち2番目に小さいもの
のどれなわけ?
2584なら一番下なんだが
248 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:26:54.12 ID:mvH7xx5i0
>>1 のできたって言うプログラムはちゃんと条件文に1000が入っていて
なおかつ出力結果が2584になったのだろうか・・・?
249 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:27:20.51 ID:+zgwSmni0
>>247 多分問題が意図してるところは一番上だと思うんだがなw
250 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:28:04.40 ID:2AGDMPsp0
int main(void) { int a=0,b=1,c; do { c = a + b; a = b; b = c; } while ( a <= 1000);
252 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:28:16.15 ID:rb3a2bd60
人のプログラムを見るのは楽しいなww #include<stdio.h> #define F 1000 int main(void) { int a=0,b=1; do{ a+=b; b+=a; }while(b+a<=F); printf("%d\n",(a<=F > b<=F)?a:b); return(0); }
解決したところで16進数を10進数に変換する関数でも作って下さい 全然わからんです
256 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:29:21.21 ID:UEbcQGipO
企業のホームページみたいのもC言語で作るの?てかC言語習えばサイト作ったりできるの?
257 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:29:27.02 ID:3Ca9DEbd0
>>247 2584云々はおそらく友達にでも聞いたんだろうが罠だなwww
260 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:30:04.99 ID:KrOcRagD0
修正前
>>203 >>int 一項前=0;
>>int 二項前=1;
修正後
>>235 >>二項前=1;
>>一項前=0;
修正できてなかったorz
しかもdo whle使ってるいみがないことにきづいた
261 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:30:11.53 ID:IoKZY6A70 BE:369315252-2BP(3889)
>>256 ホームページはHTMLとかCSS
C言語は全く使わない
とりあえず2584がどこから出てきたのかが謎 2584と出ればいいと先生から言われたのかな
263 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:30:35.36 ID:2AGDMPsp0
264 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:30:36.25 ID:+zgwSmni0
>>252 条件式の評価対象を次の計算結果にしないと多分1000越えるぞそれ
265 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:30:38.61 ID:IoKZY6A70 BE:590905128-2BP(3889)
>>256 それはhtml、javascript、css、phpとかだろ
267 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:30:56.62 ID:UEbcQGipO
C言語マスターしたら何ができるわけ?
>>259 俺もそんな気がするwwwwwwwwww
そしてあと4問とか先が思いやられるwwwwwwwwwwww
C言語ちっとも覚えられないから勉強法教えろ
270 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:31:18.18 ID:Zz83Ew3bP
>>256 企業のホームページみたいの、は
Java(サーバサイドJava=J2EE(サーブレット、JSP))、ASP/ASP.NET(言語で言うならVB、C#)、
あとそこまで大規模でないならPerl、PHP。
いずれにしてもDBの知識は必須
>>254 手作業で16進数を10進数に変換する式を作ってみる
まずはそこからだ
>>254 n桁の16進数を配列s[0]〜s[n-1]に格納
sum=0
for i in 0..n-1 sum=sum*16+hex2dec(s[i])
273 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:31:38.61 ID:rb3a2bd60
#include <stdio.h>
void main()
{
int a,b,c,d,e;
a=0;
b=1;
c=0;
d=0;
e=1;
printf("で、いったい何番目のフィボナッチ数がほしいわけ?\n");
scanf("%d",&d);
do
{
c = a + b ;
a = b;
b = c;
e++;
}
while(e<=d) ;
printf("%d番目のフィボナッチ数は%dだよ",d,c);
}
>>251 適当に作った
276 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:32:01.22 ID:mvH7xx5i0
>>254 strtol("16進数の文字列",NULL,10);
277 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:32:18.37 ID:Xm4oBCNn0
流れ豚切ってさーせん 最近C言語を学び始めたんですが 華氏、摂氏の変換やってるレべル fahr celsius?とか変数?が理解できないんです 助けてください
278 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:32:31.60 ID:h9Aq1Ke10
似たような問題で2数の最小公倍数をループで探してくださいみたいなの思い出した
279 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:32:56.84 ID:IoKZY6A70 BE:997151639-2BP(3889)
>>273 適当 を免罪符にするのうざいから止めたほうがいいよ
280 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:33:22.14 ID:NYIrPTGQ0
>>277 K&Rにちょうどその問題があるなwwwww
もう一気に問題全部のせろよ
282 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:33:28.62 ID:rb3a2bd60
>>264 実際に実行したけど最終的に987がでたよ
283 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:33:31.39 ID:IoKZY6A70 BE:1551123667-2BP(3889)
舐めっこただのゲイじゃ無かったのか
285 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:33:55.80 ID:fEPkYm2D0
286 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:34:21.58 ID:UEbcQGipO
mixiとかモバゲ、グリー、ニコ動みたいなIT系のサイト作るとしたら何から勉強すれば良い? Java?HTLM?とか一杯あってわけわからんよ
287 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:34:45.02 ID:IoKZY6A70 BE:553972853-2BP(3889)
>>264 は1000超えてるけど表示してないだけでしょ
288 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:34:46.19 ID:2AGDMPsp0
a=0, b=0 として、 while(++a < 10) b++; と while(a++ < 10) b++; の違いを検証しましょう。 です
289 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:34:50.78 ID:Zz83Ew3bP
>>283 いやC/C++だろうとなんだろうとCGIに出来るだろ
たまに /foo.exe?key=value なとこもあるがな
今Webサイト作るので使えない言語とかほとんどないんじゃない? ぱっと思いつくのがWhiteSpaceとかBrainf*ckとかくらいなんだけど
ねえ、教えてってば
292 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:35:03.59 ID:+zgwSmni0
>>282 そりゃ出力した値がif文でフィルタされてるもん
内部では1000以上行ってる
>>283 CGIはCでも組める
という意味で全く使わなくない
294 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:35:15.61 ID:h9Aq1Ke10
>>283 printfでhtmlの内容書き込んで
拡張子cgiにして見る 終わり
295 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:35:31.07 ID:Xm4oBCNn0
296 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:35:34.64 ID:1LwiejzxO
>>286 HTMLやってマスターしたらJavaScriptやってそれもマスターしたらPHPかJavaだな
PHPは中小企業 Javaは大企業 みたいなイメージがある イメージだけだが
俺的にはRubyやっとk
>>288 演算前に数値が増えるのが++a
演算後に数値が増えるのがa++
wonderfl
302 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:37:13.62 ID:mvH7xx5i0
>>291 覚えれば2次元への扉が開かれる
大好きなアニメキャラクターが意のままに動く
どうだ? やる気が出ただろう?
303 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:37:19.25 ID:pvGXv03b0
304 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:37:26.66 ID:+zgwSmni0
>>288 それは足した後に評価するか
評価してから足すかの違いなんだが
っていうかやれよ
検証しろよ
>>295 カーニハンとリッチーおじさんというそれはそれは偉いおじちゃんたちがいてだな、その人たちが書いた本のことだ
ねえ、ねえ、ねえ、ねえ、ねえ、ねえ、ねえ、ねえ
307 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:37:42.46 ID:NYIrPTGQ0
>>295 カーニハン& リッチーのプログラミング言語C でググれ
308 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:37:42.68 ID:QF8m1yUq0
309 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:37:59.79 ID:IoKZY6A70 BE:590903982-2BP(3889)
>>254 int hex(char s){
if s>60{return s-55;}else{return s-48;}
}
int hex2dec(char s[]){
int i=0,sum=0;
while(s[i]!='0'){sum=sum*16+hex(s[i++]);}
return sum;
}
311 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:38:22.27 ID:UEbcQGipO
おまいら素人の俺の質問丁寧に答えてくれて優し過ぎるわwww ありがとう
312 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:38:46.06 ID:oHeGVeLcO
やっぱ初心者が素人を教えるのが一番だな、やりやすそう
>>286 htmlから勉強しる。卵焼きで例えるとね。
html = 卵をフライパンで焼いたもの
htmlとCSSを組み合わせたモノ = 卵を卵焼き機で焼いて綺麗な形にしたもの
htmlとCSSとJavascriptを組み合わせたモノ = 卵を卵焼き機で焼いて出来上がったものに箸でつつくと半熟の部分がとろっと出てくるもの
315 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:40:33.33 ID:mvH7xx5i0
サーバーからデータ転送してクライアントのディスプレイに何かを出力するのがホームページとするなら Cでできない事は無い やりかたは知らない
>>271 ,272,276
ありがとうございます参考にします
>>274 1とは無関係のとおりすがりの者です
>>296 そうです4桁の文字列入力して変換する関数です
318 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:41:21.37 ID:UEbcQGipO
>>313 ほんとみんなサンクスw
わかりやすいww
319 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:41:24.80 ID:IoKZY6A70 BE:997151639-2BP(3889)
3つ目の問題まだー?
321 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:41:52.15 ID:h9Aq1Ke10
class A { }; class B : public A { }; class C : public A { }; class D : public B, public C { };
>>315 それやったことあるが、ホームページっていうのかそれ?
>>254 微妙に修正
int hex(char s){
if s>'9'{return s-'A'+10;}else{return s-'0';}
}
int hex2dec(char s[]){
int i=0,sum=0;
while(s[i]!='\0'){sum=sum*16+hex(s[i++]);}
return sum;
}
324 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:43:07.21 ID:UEbcQGipO
>>316 いや、ただwebページを作って公開するならhtmlだけでいい
綺麗なものを作りたいならcssも
なんかアクティプに動くものが欲しいならjavascriptをっていいたかっただけなんだ。卵焼きは特に意味はない。
326 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:43:13.72 ID:Zz83Ew3bP
>>314 単に標準入出力経由してアレコレ出来れば別になんでもいけるぜ
試してみろよ。 *.exe とかがURLに現れるのが気持ち悪いなら、
.htaccess やconfで *.cgi をエイリアスにすりゃいいだけ
CGIでC言語使えるそんな恐ろしいサーバーって現実的に今あるの?
328 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:43:55.53 ID:IoKZY6A70 BE:2659068498-2BP(3889)
329 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:44:39.16 ID:adtPCmoa0
ぶっちゃけプログラミングは就職上何の役にも立たなかった・・・ 自ら使わないと活用できない技術だよな
330 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:44:43.34 ID:5Sqi+WC10
サーバにアクセスしてhtml吐かせるだけならCでもできるだろうけどそんなサーバ危なすぎて使いもんにならんだろwww
>>324 気にするなXMLでWebサイト作るヤツなんてほっとんどいない
HTML=Webサイト作るための言語
XML=なんかデータをセーブしたりプログラムの設定を書いたりXSLTとかと組み合わせてWebサイト作ったりする超ごてごてした言語 とりあえずいらない
printf("このスレ見てCプログラマーの未来は明るいなと思いました");
>>327 自分で立てたサーバとかだと普通に自分の好きな適当な言語で書いて動かしてたりするよ
レンタルサーバとかだと流石にムズいんじゃない?
335 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:45:49.58 ID:h9Aq1Ke10
336 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:45:52.34 ID:1LwiejzxO
>>277 要は数学のxとかyの変数みたいなもの
x=1+2 (xは3)
celcius=1+2 (celciusは3)
勝手に長い名前とか付けてるだけで一緒
337 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:45:56.13 ID:Zz83Ew3bP
>>327 コンパイルされたCのモジュールもcgiで使えます(Linux)、って言う無料サーバはちょいちょいあるが
338 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:46:09.40 ID:BZZGNgPX0
新ANSI C言語辞典とC言語による最新アルゴリズム事典は手元に置いておきたい
>>324 GGRKS
何がしたいの?
自分で調べる力ないと何も出来ないよ
delphiとlazarusについて
>>331 あぁ、サーバーとして使うって意味だったのか。
しかしサーバーのプログラムから作るやつなんていないだろwww
>>336 x = x + 1
っておかしくね?ありえなくね?
っていうのを初心者に説明するのが難しいと感じる俺がいる
343 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:47:27.59 ID:UEbcQGipO
>>332 浅いな
そんなもんその場しのぎにしかならん
345 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:48:07.40 ID:rb3a2bd60
そもそもこの程度の問題は本屋でC言語の本買ってきて一週間も勉強すれば余裕でわかるレベル
346 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:48:12.48 ID:oHeGVeLcO
情報を扱うためにあるものなのに本人がそれに流されてどうする
>>344 とりあえずやってみよう!の段階のヤツに2〜3ヶ月後くらいに知ればいいような余計なこと教えてもどうしょーもないだろwww
349 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:49:59.77 ID:+zgwSmni0
>>342 =を等価だと思うなって教えてやれば?
言うなれば左矢印みたいな
350 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:50:01.35 ID:Zz83Ew3bP
>>341 お前なんか勘違いしてないか。CGIの話だろ
誰が80番ポートで待ってるServerSocketアプリケーションの話をしている
どうやって検証するんだろう、、、 while(++a < 10) b++; って int main(void) { int a=0,b=0; while (++a < 10) b++; { } でいいのかな
352 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:52:13.98 ID:oHeGVeLcO
80番は優秀な子
>>348 とりあえずいらないとか言うやなー
今はいらんだろうけど必要やがなー
>>350 そうか、違うのかちなみにどんなのがあるんだ?
356 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:53:21.87 ID:QF8m1yUq0
>>310 ,323
親切にありがとうございます!
参考にして自分で理解できるようにもう少し頑張ってみます
358 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:53:44.23 ID:+zgwSmni0
>>351 bの値をwhile文の中で出力させればいいだろ
そうすりゃわかる
さあやれ
今やれ
359 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:54:16.16 ID:oHeGVeLcO
>>349 x <- x + 1
確かに分かりやすい
だがしかし一般的に考えて = は等価記号じゃないか
俺らが True & Love とかいう文字列を見つけて
「Loveも評価されるな Loveには何が入っているんだ?」
と一瞬考えてしまうのと同じように初心者は等価記号だと思ってしまうだろうと思うんだよ
362 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:55:04.95 ID:Zz83Ew3bP
int main(){ int a=b=c=0; printf("a=%d, b=%d, c=%d",a,++b,c++); return 0; }
364 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:56:25.58 ID:Zz83Ew3bP
>>1 が基本から理解してないように釣りしていることを願った
366 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:57:10.35 ID:2AGDMPsp0
int main(void) { int a=0,b=0; while (++a < 10) b++; { printf("%d",b); } return (0); } こうですか?
>>353 とりあえず今はいらないwww
>>354 俺がメモ帳でCのプログラム書きたくないなと思うのと同じ理由で
CでCGIなんか書きたくない
とかそういうことじゃね?
368 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:57:12.26 ID:+zgwSmni0
>>361 まあ
長年定着してたものだからしゃーないよね
あくまで代入の記号であるって事強調させりゃいいのかね
369 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:57:31.42 ID:1LwiejzxO
>>342 あー確かに。
俺は弟に、=は左辺代入の意味って普通に教えたっけ。
同時に==も覚えてもらった。
370 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:57:32.11 ID:pvGXv03b0
お前ら少しぐらい俺の相手しろや糞 fib(15939)= 738860383888786161419270262204667693265416497746570174670525421773015255 831111751867180934073429941518446372618708924542684656274626944407480066 146209859426379833002757711519438784628420657900332252777067576770892536 468409462029880337715276097791440074450379638997033717728515620105744498 862729302060484451007310655274118979723920565597007498355389500800307111 076569286367793056853366903788653957447866893490139418448934042257676073 937488821372094947447411905543585738047408636461909421445325049252711663 795375194515581812507839783957460405520388652407892737152136528412426365 940567133938213084487290472913162372400322009485299818348818347739473263 326701206469186874736731539679701077432296768747073809457174997057421122 997191520346109038900956001349095120567445200845589347387032959334668251 120261678874883671769257425130577962929526635869075595330254982987414803 398903231512967808363231817160585602074961370491932188318088843797514614 705398438372484554313652523213210437677280324045379418136286552482501799 091672401947399638990289183972945894675421764684635682804564323447346937 045574068117815770186753759898298190996349312770974596580021853654096358 433645646347349418581709281732522202218984883429569645362806216316604464 232398608701107682309483877445492581803134211755767356647135737398375604 445356033932908073406195472856000242200384012217482765436167882825822793 667598550596395829031321556330703477452160799537111928083643035489283963
371 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:57:34.95 ID:pvGXv03b0
339197960790198949766248216771290901568904703165980815092455777992272114 036306635051610031919014785722108254384192673963553055952725420810369759 334376574671169266179130409252635035930425700009656458212077768972415990 781664796467660032055942543973174028222078733652172653301408945159056525 383708743676103421524267514325645937197462042014338156714762947975575105 506674950971149159220076084559224500895335156974775944826815148623975746 690466939328668651541944732300699433449455764993814210008044858460729127 342428770795461032379843413180543223277889782198185394223790449377202725 227830808144425341136586581972054695228866360153910490393864769076451134 594410473200208622726126860112733716139392627818983893629979729837175518 750645774323359241488188492413727630411108079957018283282869224010666479 889437342157855866745523619850343724759749995167771582427020467988525378 586925879967018605037726226539857373443773390520656964511196194579754456 673684084919364710015585781221552291210940819029898627078274134383556404 925535295810385770679513398083883830318963827913040579806019235668978472 389101506869742061527658248283800927797200309509874561738817686987483241 805471293541457528545148192484272511192833045753480141451333270515960159 724160178879694132188320469262564945555922561360923449815028281475764484 005313104761106789840471773833748595779557441197683054403866571198886713 423381123610697105824297751310551446931924213630049260758984528118831352 675435058530773776076754525274376941466027433547116270016318215894666805 045871507190689484783880749600005014086180407887599409731490494757732679 891114724134967632872557160314136690174833881332515547744313715849927969 964918967525963596500184806565910294855529865134038053097127028772416507 218492367407163476968342897323276190574874720993951437716054956777889431 460763749150717098916365740218452755692109264060263109714803627145536120 209108343957224065
>>363 あ、何回かやらんと検証にはならんな。だめだわ無視しとくれ。
373 :
エルドラド ◆uxmEYZnCjM :2009/06/07(日) 22:57:49.48 ID:WEqPdPW70
バルキスの定理を使えば一発だ C言語も操れぬ奴がVIPPERを名乗るとはおこがましい
374 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:57:54.74 ID:+zgwSmni0
>>366 そんなんでいい
それでもう一方も走らせて結果を比較してみろ
375 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:58:07.70 ID:IoKZY6A70 BE:1329534094-2BP(3889)
>>1 a = 1 b = 1
a = 2 b = 2
a = 3 b = 3
a = 4 b = 4
a = 5 b = 5
a = 6 b = 6
a = 7 b = 7
a = 8 b = 8
a = 9 b = 9
a++ の場合
a = 1 b = 1
a = 2 b = 2
a = 3 b = 3
a = 4 b = 4
a = 5 b = 5
a = 6 b = 6
a = 7 b = 7
a = 8 b = 8
a = 9 b = 9
a = 10 b = 10
になる
377 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 22:58:31.65 ID:IoKZY6A70 BE:590903982-2BP(3889)
コピペそこなった ++a の場合 a = 1 b = 1 a = 2 b = 2 a = 3 b = 3 a = 4 b = 4 a = 5 b = 5 a = 6 b = 6 a = 7 b = 7 a = 8 b = 8 a = 9 b = 9 a++ の場合 a = 1 b = 1 a = 2 b = 2 a = 3 b = 3 a = 4 b = 4 a = 5 b = 5 a = 6 b = 6 a = 7 b = 7 a = 8 b = 8 a = 9 b = 9 a = 10 b = 10 になる
378 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 22:59:03.78 ID:oHeGVeLcO
379 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:00:05.15 ID:+zgwSmni0
っていうか単にprintf加えただけで聞いてこんでもいいから まず走らせてから質問なりしろと
>>368 なのかねぇ?
そこさえクリアできればまぁ大概ポインタあたりまでは死ぬほどコケることもなく進んでくれると思うんだけど
>>369 お前さんの弟さんはたぶん頭がいいか割り切りがいいかのどっちかだと思うぞwww
381 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:00:15.76 ID:mvH7xx5i0
とりあえずハンドルとってそれからどうすりゃ良いか考えようぜ!
382 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:00:47.63 ID:2AGDMPsp0
走らせるの意味が、、、
383 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:01:03.75 ID:QF8m1yUq0
コンパイルして実行するって意味だよ!!!!!!!!!!!!!!!
>>370 fib(1000000)の最上位桁の数字教えてくれ
385 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:01:26.60 ID:rb3a2bd60
Sc_7407
初心者でも作れるプログラム作ったけど
>>1 だと無理な予感がする
>>377 ポストインクリメントと
プリインクリメントの違いくらい知ってるが
その説明じゃ何も分からん
387 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:01:53.30 ID:NYIrPTGQ0
>>382 コンパイル(こんぱいる)して実行(じっこう)だよ
わかりにくい表現(ひょうげん)ばかりで困(こま)るよね
++aってのはa+1してから比較 a++ってのは比較してからa+1 ……であってるよな?
>>1 ググればすべてのソースコードも出てくるから調べれ
390 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:02:07.77 ID:rb3a2bd60
392 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:02:56.72 ID:IoKZY6A70 BE:997150493-2BP(3889)
>>366 while (++a < 10) b++;
は、
while (++a < 10) {
b++;
}
と同じ意味だぞ。
393 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:03:15.34 ID:mvH7xx5i0
*並べてポインタのポインタ一杯作ろうず!!
394 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:03:23.97 ID:QF8m1yUq0
exe怖い
>>382 走る、いわゆるrun。
コンパイルかけたりなんか実行させると一斉に計算したりログ出したりするでしょ。
その様がヨーイドン!でかけっこする様子を連想するから走らせるっていうんだよ。
よくエラーが出て”止まった”っていうだろ?それと同じような感覚
397 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:04:11.61 ID:uHgjebVq0
もうすぐ学校でやるんだけどさ、いわゆる右も左もわからない状態。 予習しときたいんだけど何からやったらいいの?
399 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:04:49.58 ID:IoKZY6A70 BE:1181808948-2BP(3889)
>>366 (++a < 10) は、aに1を足してから 10より小さいか比べる
(a++ < 10) は、aが10より小さければ aに1を足す
て言う意味だ
400 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:04:53.32 ID:pvGXv03b0 BE:226734645-PLT(12000)
401 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:05:21.99 ID:mvH7xx5i0
>>397 オマエ右利きか?茶碗持つほうが左で箸持つのが右だぜ!
ドラクエで言うと上が北で右が東で左が西だ!
402 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:05:39.92 ID:rb3a2bd60
てかそもそも
>>1 がアホ
本当に教えてほしかったら
スレタイ
「自称C言語の天才ならこれぐらいとけるよなwwwwww」
本文
1から1000までのフィボナッチ数をdo-while文を使って表示してみろよ
ぐらいにしとかないといかん
403 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:06:06.83 ID:+zgwSmni0
でも増分演算子であんまり使い分け考慮したことないな
404 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:06:09.99 ID:pvGXv03b0 BE:158713872-PLT(12000)
405 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:06:29.54 ID:oHeGVeLcO
誰か繰り返しの規制外して変数宣言ループしてみてくれよ
406 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:06:32.87 ID:IoKZY6A70 BE:1661917695-2BP(3889)
>>399 ごめんこの説明は違う
(++a < 10) は、aに1を足してから 10より小さいか比べる
(a++ < 10) は、aが10より小さいか比べてから、 aに1を足す
だ
407 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:06:36.80 ID:NYIrPTGQ0
>>397 右も左もわからないようなやつがいきなり予習したって大した意味ない
まずはきちんと話聞いてからちゃんと復習しとけ
408 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:07:00.82 ID:Qg/u0K9vO
>>397 Helloworld
handleが説明読んでもいまいちなんだが…
誰かわかりやすく教えてはくれないものか
409 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:08:56.44 ID:2AGDMPsp0
int main(void) { int a=0,b=0; while (++a < 10){ b++; printf("%d",b); } return (0); } うーんできない
410 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:09:54.33 ID:+zgwSmni0
>>409 インクルードしろよ
#include <stdio.h>
411 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:10:15.73 ID:ylKEhoWuP
そもそもなんでいちいち出力してんの? 最後だけ出せばいいだろ
412 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:10:30.18 ID:IoKZY6A70 BE:2659068498-2BP(3889)
>>409 うん、それでいいんだよ
今度はwhile (++a < 10) を while (a++ < 10) に変えて実行してみよう
printf("%d",b); だと見にくいから、printf("%d\n",b);のように改行を入れるといいよ
413 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:10:45.30 ID:rb3a2bd60
そもそも問題自体が「検証せよ」なんだから実際に動かしてみりゃイーだけ
頭を使う必要も無い
>>398 IDでもろバレ 調子ノンな
>>397 プログラムは難しいことをするために書くんじゃなくて簡単なことをいかに繰り返して書かないかが肝。
なんていっても多分ピンと来ないと思うからとりあえず言語云々ではなくアルゴリズムを覚えるといい。
探索アルゴリズムやプッシュポップなんかいいんじゃない?
415 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:11:33.34 ID:NYIrPTGQ0
>>409 出来ないなら出来ないなりに
どういうエラーが出るとか
目的とする値はこうなんだけど実際はこういう値が出ちゃうとか
書いてくれたほうが早く解決するよ
できないできないほざくだけならいつまで経っても解決しねえぞ
お前らがこんな馬鹿に付き合ってやってる理由が知りたいよww
>>397 俺の言うことはあまり聞かない方がいいと思うけど
プログラムの勉強をしたいなら俺はまずRubyやPerlをちょろんとやってみることを進める
変数や制御構文や関数の使い方を学んだあと、ちょびっとだけメモリとか、ハード面の勉強をしてみる
で、そのあとC言語だな
そうすると変数や制御構文の使い方はもう分かっているはずだから、ハードとあわせて考えるとなぜそうなるのか理解しやすい
--- 以下どうでもいい話 ---
C言語を勉強するならなるべくハードも一緒に勉強してほしい
関数の定義で
int test(int hoge[][10]){
〜〜〜
}
って関数は定義できるのに
int test(int hoge[10][]){
〜〜〜
}
って関数は定義できないんだ?ってのが自分で想像できるはず
あと
int a[5];
a[3] = 1;
printf("%d\n", a[3]);
printf("%d\n", *(a + 3));
printf("%d\n", *(3 + a));
printf("%d\n", 3[a]);
とかで笑えるようになるといっぱしのプログラマーっぽいかな、と思う
419 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:12:58.70 ID:IoKZY6A70 BE:1994301869-2BP(3889)
421 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:14:07.98 ID:oHeGVeLcO
>>416 誰だって自分が多少なりとも詳しいことはべらべらしゃべくりたいはずだ
423 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:14:33.98 ID:1LwiejzxO
>>380 後に中卒で就職して納品モノの会計ソフトとかSE兼開発しててフイタ
DirectXとかもやってたwww
425 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:14:41.19 ID:2AGDMPsp0
int a=0,b=0; while (++a < 10){ b++; printf("%d\n",b); } return (0); } これなんでエラーなんでしょう、、
426 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:14:48.32 ID:+zgwSmni0
427 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:14:53.63 ID:mvH7xx5i0
#include <stdio.h> int F(int *a,int *b,int *c); int main() { int a=0; int b = 0; int c = 1; int d = 0; do { a = F(&b,&c,&d); } while (b<=1000); printf("フィボナッチ数%a個目,答え%d\n",a + 1,d); return 0; } int F(int *a,int *b,int *c) { static int d; *c = *a + *b; *a = *b; *b = *c; return ++d; } 何個目のフィボナッチ数かもわかって超オヌヌメ
>>423 そりゃすげぇwww
弟さん頑張ったんだなwwww
429 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:15:39.00 ID:IoKZY6A70 BE:517041072-2BP(3889)
>>425 俺のコンパイル環境だとエラーでないよ?
どんなエラーでてる?
430 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:16:21.73 ID:IoKZY6A70 BE:1477260858-2BP(3889)
>>425 まさか
#include <stdio.h>
int main(void) {
を書いてないなんてことは無いよね
431 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:16:26.33 ID:9a9nzlZN0
おまえら自分で言語とか勉強したのか?俺もjavaとCとC++とPHPとSQLできるぜwww 俺の勤めてるところはIBMうらやましいだろwww
>>431 職業プログラマでそんだけできるならスゲェなwww
趣味プログラマでその数なら少ないといわざるをえない
436 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:18:17.02 ID:IoKZY6A70 BE:221589623-2BP(3889)
>>433 エラーメッセージをここにコピペしてみて
437 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:18:54.00 ID:rb3a2bd60
>>431 言語なんて一つ覚えりゃ芋づる式に覚えられる
その程度で威張るな糞が
438 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:19:01.05 ID:2AGDMPsp0
c:\documents and settings\owner\my documents\visual studio 2008\projects\7-6\7-6.cpp(12) : error C3861: 'printf': 識別子が見つかりませんでした
439 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:20:19.54 ID:oHeGVeLcO
インクルードしてないだろ
441 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:20:29.35 ID:rb3a2bd60
てか今のうちに残りの三問書いとけよ お前が二問目で悩んでるうちに問い解いてやるから
>>431 大学でC言語学んで
趣味でhtml css JavaSvript jquery perl ruby php
研究でmatlab labview C++ fortran visualC JAVA
ぐらいかなぁ。DBとかは正直よくわからん。NTTコミュ内定。
まさかC#……?
1. a,b を入力し、小さいほうを c に代入する 2. for 文を使って、 a, b それぞれを 1 から c で割り算する 3. a, b ともに割り切れる場合は、その数値を表示する 次のです
445 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:21:17.92 ID:1LwiejzxO
>>428 だなwww弟には頭が下がります
俺より後に始めたくせに悔しいビクンビクン
446 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:21:21.62 ID:IoKZY6A70 BE:2659068689-2BP(3889)
>>432 intは時代の産物
環境でbit数が違うから
ハードのこと考えるならまずintは使わない
448 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:22:05.62 ID:2AGDMPsp0
449 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:22:20.92 ID:pvGXv03b0
>>447 業務で普通にint使いまくりな俺に正しいお作法を教えてくださり
452 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:22:50.80 ID:mvH7xx5i0
#include <stdio.h> int fib(int); int main() { int i = 0; while(fib(i) <= 1000) printf("%d\n", fib(i++)); return ~0; } int fib(int n) { if(n == 0 || n == 1) return 1; else return fib(n - 2) + fib(n - 1); }
454 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:24:32.49 ID:9BwfbDnP0
>>448 ミスったwww
コマンドプロンプトでやろうぜ!(カッコよく)
456 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:25:39.55 ID:Ig9afdf1O
気持ち悪い奴らだな
457 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:26:02.36 ID:rb3a2bd60
#include<stdio.h>
void main ()
{
int a,b,c;
printf("aの値を入力してください\n");
scanf("%d",&a);
printf("bの値を入力してください\n");
scanf("%d",&b);
if(a>b)
{
c=a;
printf("cの値は%dです",c);
}
else if(a==b)
{
printf("同じ値だよ");
}
else if(a<b)
{
c=b;
printf("cの値は%dです",c);
}
}
>>444 第一問目
なにがだめなんでしょう、、、
459 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:26:52.57 ID:+zgwSmni0
>>454 一定桁毎に格納してるんかなーってオモタ
460 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:27:35.83 ID:IoKZY6A70 BE:1181808948-2BP(3889)
>>454 めんどくさいからSchemeでやったに1票www
>>444 は無現ループで止まらないってことでいいのか?
>>449 地方の国立大だけど?
まぁ大学で得た知識なんてほとんどなかったけどw
>>451 先を見るなら
アプリ系なら<stdint.h>入れて
新しい定義使ってくださー
組込み系ならunsigned short か
やっぱ<stdint.h>かな。。。
でも、しょぼい職場だと
上の人たちに使うなとか知らんとか
言われるかもね。
<stdint.h>自体は1999年のC言語で入ってんだけども。
466 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:30:26.90 ID:oHeGVeLcO
467 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:32:06.49 ID:rb3a2bd60
#include<stdio.h>
void main ()
{
int a,b,c,d;
printf("aの値を入力してください\n");
scanf("%d",&a);
printf("bの値を入力してください\n");
scanf("%d",&b);
printf("cの値を入力してください\n");
scanf("%d",&c);
for(d=1;d<=c;d++)
{
printf("aを%dで割った値は%dです\n",d,a/d);
printf("aを%dで割った値は%dです\n",d,b/d);
}
}
>>444 第二問目
>>1 は変数の方とか習ってんのか?
>>463 問題間違えてた指摘ありがと
>>460 まじっすか・・・
c:\documents and settings\owner\my documents\visual studio 2008\projects\7-6\7-6.cpp(13) : error C3861: 'printf': 識別子が見つかりませんでした これなんででしょうか、、
>>450 と同じ派閥であろう俺は
c = a < b ? a : b;
こう書くっぽいことは確定的に明らか
>>465 へー知らなかったー
もっかい勉強しなおした方がいいのかなー
どう考えてもC89までしか分かってないっぽいぞ俺
470 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:35:01.08 ID:zvfydsoU0
だれかpythonやってるやついない?
>>468 拡張子 って知ってる?
ついでにいうと表示してる???
472 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:35:32.80 ID:pvGXv03b0
>>468 C3861のところにカーソルもっていってF1キー押してみw
そーすっと 2. for 文を使って、 a, b それぞれを 1 から c まで割り算する ってこと?今度はa, bそれぞれを何で割ればいいのかわからんぞ
>>471 知ってます
でも他のプログラムはできてました
>>444 int main(){
int a,b,c,d;
scanf("%d %d",&a,&b);
c=a>b?b:a;
for(d=0;d<=c;d++){if(a%d==0&&b%d==0){printf("%d\n",d);}}
return 0;
}
477 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:38:17.01 ID:IoKZY6A70 BE:775561673-2BP(3889)
>>444 #include<stdio.h>
int main ()
{
int a,b,c;
int i;
int count=0;
printf("aの値を入力してください\n");
scanf("%d",&a);
printf("bの値を入力してください\n");
scanf("%d",&b);
if(a>b) {
c=b;
printf("cの値は%dです\n",c);
} else if(a==b) printf("同じ値だよ\n");
else if(a<b) {
c=a;
printf("cの値は%dです\n",c);
}
for (i=1;i<=c;i++) {
if (a%i == 0 && b%i == 0) printf("%d個目が見つかりました\n%d÷%d = %d\n%d÷%d = %d\n\n",++count,a,i,a/i,b,i,b/i);
}
return 0;
}
これでいいかな
478 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:38:20.66 ID:QF8m1yUq0
printf関数が定義されているヘッダをインクルードしていないのが問題 だそうです><><><
>>475 そうか、じゃあソースを最初から最後までちゃんと見せてみ
int main(void) { int a=0,b=0; while (++a < 10){ b++; printf("%d\n",a); printf("%d\n",b); } return (0); }
>>470 アレどうなの?
インデントでブロックを表すとか俺耐えられそうにないんだけど
でもリストの内包表記はちょっと羨ましいな
>>476 素直にi使ってくれよ 読みにくいぞ
printf()関数の最後のfって何
>>482 print format じゃね?多分
自分の好きな形(format)に整形して出力してくれる的な意味で
484 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:40:34.07 ID:Qg/u0K9vO
485 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:40:40.86 ID:NYIrPTGQ0
勝手にFunctionだと思ってたがどうなんだべ
486 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:40:42.57 ID:QF8m1yUq0
487 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:40:43.10 ID:rb3a2bd60
#include<stdio.h> void main (){ int a,b,c,d,e,f,g,h; printf("aの値を入力してください\n"); scanf("%d",&a); printf("bの値を入力してください\n"); scanf("%d",&b); if(a<b){ c=a; printf("cの値は%dです",c);} else if(a==b){ printf("同じ値だよ");} else if(a>b){ c=b; printf("cの値は%dです",c);} for(d=1;d<=c;d++){ printf("aを%dで割った値は%dです\n",d,a/d); printf("aを%dで割った値は%dです\n",d,b/d);} e = a % c; f = b % c; if(e==0 && f==0){ printf("両方cで割り切れるよ\n"); printf("cで割った値は、a,bそれぞれ%dと%dだよ",a/c,b/c);} else{ printf("両方をcで割り切ることは出来なかったよ");} } ちょっとみにくいけど途中の挙動もチェックできるやつ作った
>>469 今組んでるコードがいつまで使うか
どんな環境で使われるかーって言うのが
明確になってる上でintでも大丈夫っていう確証があれば
問題ないんだけども
最近流行の拡張性、移植性、保守性、再利用性って観点で見れば
intはあんまり使うべきではないようですねー
JAVAとかだとintクラス自体が
変更されちゃったりするっぽいから
Cとは違うようだけどもー。
>>480 #include<stdio.h> は?
>>488 割った余りが0かどうか、つまり割りきれたかどうかってことだと……
>>480 printf("%d\n",a)は外に出せ、これじゃ違いがわからん
495 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:44:36.59 ID:oHeGVeLcO
こいつホンマアホや…
496 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:44:41.03 ID:IoKZY6A70 BE:1477260285-2BP(3889)
>>480 printf("%d\n",a);
printf("%d\n",b);
の表示の仕方だと見にくいから
printf("a = %d , b = %d\n",a,b);
にするといいんじゃないかなあ
>>489 手元で試したら余裕でダメだった俺バカスwww
俺バカス…
500 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:45:04.74 ID:rb3a2bd60
>>492 0でモジュロする可能性があるってことじゃないの?
それともC言語だと x % 0はおkなんだっけ?
502 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:45:51.19 ID:IoKZY6A70 BE:2068164487-2BP(3889)
>>493 おいあんた、さっきちゃんと書いてるって言ってたじゃんか
できました!!! いまからコメントとかつけてみます ありがとうございました
>>502 だよなwwwwwwww俺も思ったwww
507 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:47:18.03 ID:oHeGVeLcO
インクルードしてるって言ってるのにインクルードしてないとか…しかもインクルード出来てないというアドバイスを無視
508 :
舐めっこ ◆Tinpo//Tc2 :2009/06/07(日) 23:47:31.21 ID:IoKZY6A70 BE:2326684897-2BP(3889)
>>490 某銀行系システムで余裕で稼働中だったりするから困る
まぁ大抵longしか使ってなかったはずだからきっと大丈夫だきっと大丈夫だ
今度から気をつけるようにするよ…
あんがと!
そして
>>1 がアホの子というかガチで初心者臭が漂ってて非常に可愛い
教育したくなるwww
気付きませんでした、、ホント申し訳ないです。。
>>508 if(
>>1 .iQ > saru.IQ ){
printf("乙");
}
512 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:51:25.17 ID:rb3a2bd60
>>477 こういうフォーマルな書き方する場合は、%d÷%d のとこは%4d÷%4dとか整形したい気分
514 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:51:30.52 ID:bq11SZ0P0
515 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:51:57.12 ID:oHeGVeLcO
甲乙つけがたい
516 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:52:56.17 ID:M4PvKLzuP
大学でC言語の講義のTAしてるけど
>>1 みたいなやつが多すぎて楽しい
偉くなった気分になれる
518 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:53:40.40 ID:zvfydsoU0
>>472 どうやって勉強してる?
>>481 インデントでブロック表すのはめんどいかも
ちょっとミスるとすぐ結果にひびく
まあ俺が使ってるのはインデントおかしいと警告してくれるけどね
>>488 日本語に弱いってどういう?
触って日が浅いんであんまり実感してない
519 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:55:36.39 ID:oHeGVeLcO
>>504 このコメント楽しみじゃねwww
ちょっと見てみたい気がする
このスレには下手なIT企業の1部署よりも総スキル量がありそうだ。 なんかプロジェクト立ち上げたくなるよね。
結果が9で終わるのと10で終わるので先に演算するか後に演算するかの違いとかどう説明すればよろしいでしょう?
523 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:56:37.23 ID:rb3a2bd60
>>518 例えば全角半角変換とかひらがなカタカナ変換とかそういうのがない
昔は偉い人が作ったのがあったんだけどもうメンテされてないみたいで
今じゃnkfのラッパーライブラリぐらいしかオレは知らねえ
pythonのクラス使う時 class hoge: def huga( self ): #処理 のselfを第一引数に取らなきゃならんのが気に入らなかった
527 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:58:35.73 ID:oHeGVeLcO
528 :
以下、名無しにかわりましてVIPがお送りします :2009/06/07(日) 23:58:52.20 ID:Zz83Ew3bP
なんとなく、C#でCGIのサンプル。
1. C# で適当な場所に以下のC#コードをコンパイルして配置 ※Test.exe とする
using System;
using System.IO;
namespace Test {
class Program {
static void Main(string[] args) {
Console.Out.Write("Content-type:text/html\n\n"); // ここがミソ
Console.Out.Write("<html><body>ソース丸出し<br/>");
if (args.Length > 0) {
using (StreamReader sr = new StreamReader(args[0])) {
Console.Out.Write("<pre>" + sr.ReadToEnd() + "</pre>");
}
} else Console.Out.Write("Blank");
Console.Out.Write("</body></html>");
Console.Out.Flush();
}
}
}
2. Apacheで Options +ExecCGI なディレクトリに次の内容を "foo.cgi" という名前で置く
#!≪1のパス≫/Test.exe
TestTest
3. ブラウザで(例えば)、
http://127.0.0.1/cgi-bin/foo.cgi を叩いて結果を確認する
>>521 頭でっかちのPG書けるだけのキモオタばっかりだろうから無理だろ
まぁ俺のことだが
要件定義とかシステム設計とかDBの物理設計とか基盤系とか超むずい
俺の好きな言語で延々とPG書いてれば金になるような仕事どっかにねーかなマジで
>>527 はいいやつ
おれだったら今までの時間を返せと言って殴る
>>522 「
比較とインクリメントのどちらが先に行われるかによって結果が異なる
++aはインクリメントが比較の先に行われるため、++a<10 は、a+1が10未満のときにTrueとなる
a++はインクリメントが比較の後に行われるため、a++<10 は、aが10未満のときにTrueとなる
」
>>530 はいいやつ
こんなやつ目の前にいたらもう無言で前歯へし折る
533 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:02:39.93 ID:gSLqC4FSP
>>529 全然関係無いけど、PGって略しちゃうとプログラム、よりもプログラマの略称に見えてしまう罠
要件定義の難しさは技術よりも人的な部分だと思う12年目の俺
できますた
>>1 には最後、コメントまでつけて完成させたものを全部張り付けてってもらいたいなw
今更どうでもいいけど、最初の問題って
「1000以下のフィボナッチ数を全て合計した値を求めよ」
だったりしないかなぁ
2583になっちゃうけど
536 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:04:32.12 ID:Um7lKlJc0
>>28 インデントは半角と全角を組み合わせて使うんだよ。
こんな感じで
537 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:04:56.42 ID:SX9dciah0
538 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:05:48.96 ID:aNjYLjaI0
>>535 たぶんそうです
やばいねむくなてきたmすた
539 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:06:46.18 ID:3W8HApRB0
リナックスで、あるランダムな数字の羅列のTxt文書に対して、 第一引数で与えられた文字列を、第二引数で与えられた文字列に変換するプログラムを作れといわれてるんだが。 大体どんな風にしたらいいかだけ教えてほしい。
>>533 あまり意識せずに文脈でわかるからPGって書いちゃう俺
たしかに人的な部分が難しいよね 技術的なことはむしろ簡単
先輩についてって、お客さんに●●できますか?って言われて
先輩に「お前それできるかわかる?」って聞かれて俺が先輩に答えて、
それを素人であるお客さんに分かりやすく伝えてくれるあたり先輩とか超スゴいと思う3年目の俺
>>537 合格
さて、fib(100000000)の最上位桁も教えてくれ
だから鬱になるんだよな・・・。 ストレス発散したくても忙しくて休日もない。溜まる案件迫る納期。 はいはいデスマーチデスマーチ。 もう寝る・・・
543 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:08:07.52 ID:U3aL8U4xO
コピーアンドペースト
>>539 cat hoge.txt | sed -e "s/from/to/"
こいでよくね
546 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:09:28.63 ID:ikdo9owq0
>>539 O(N×M)でいいなら2重ループ
O(N/M)が欲しいならBM法でぐぐれ
548 :
舐めっこ ◆Tinpo//Tc2 :2009/06/08(月) 00:10:58.04 ID:7SbmeH1R0 BE:1661918459-2BP(3889)
>>1 が気になって眠れなくてまた来ちゃった
>>546 こんなん誰が踏むんだよwwwww
ありがとみんなs
550 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:12:25.32 ID:3W8HApRB0
>>545 いや、それは分かってるんだが・・・、肝心のプログラムがさ。
穴埋めみたいな形なんだけど、第一引数はINT,第二引数はChar**(ポインタのポインタ)ってなってて、
いまいちその意図が分からないんだ
こんなかんじ
unsigned int from_len, to_len,mv_len;
char *p = NULL;
char in[MAX_LEN],from[MAX_LEN],to[MAX_LEN];
fgets(in,100000,stdin);
from_len = strlen(from);
to_len = strlen(to);
551 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:12:37.49 ID:SX9dciah0 BE:181387744-PLT(12000)
>>541 wwwww
さすがに計算できないから
結果だけうpするわwwww
552 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:13:26.09 ID:3W8HApRB0
>>550 の後半訂正
int main(int argc, char **argv)
{
unsigned int from_len, to_len,mv_len;
char *p = NULL;
char in[MAX_LEN],from[MAX_LEN],to[MAX_LEN];
fgets(in,100000,stdin);
from_len = strlen(from);
to_len = strlen(to);
他人の話を聞かない人は他人に話を聞いてもらえない
VIPPERは他人の話なんか聞かない人種かもしれんけどw
もう誰が
>>1 かわからなくなったことだしw
554 :
舐めっこ ◆Tinpo//Tc2 :2009/06/08(月) 00:14:01.75 ID:7SbmeH1R0 BE:1772712386-2BP(3889)
なんだもう終わったのか
僕です
556 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:14:40.58 ID:ikdo9owq0
557 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:14:41.43 ID:3W8HApRB0
>>552 は最初の数行ってことね。
このあとに不完全なプログラムがばあ〜って続いてる。
穴埋めっていうより後は自分で書けって感じ。
わっ、F1始まってるんじゃね? ノシ
559 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:17:22.64 ID:aNjYLjaI0
今日はもうやめにします たぶん木曜日にきます その時はヨロシクです!
>>550 それだけ聞くと
int main(int argc, char *argv[]){ ←こうとしか思えないwww
こんな感じ ってのもどんな感じか全然わからん
>>552 も見たけど
第一引数はINT,第二引数はChar**(ポインタのポインタ)ってなってて
がどういう意図なのか全然わからん
とりあえず俺が何も考えずに愚直に書くなら
fromを頭から1文字っつずーっとstrncmpで舐める
一致してたらそっからtoに置き換える
置き換え終わったらまたずーっとstrncmpで舐める
ケツまでいったら終わり
でよくね
>>552 それ一般的にはコマンドラインから引数を受け取るときの書き方だ
argc argv でググってみ
562 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:20:09.99 ID:3W8HApRB0
>>560 >fromを頭から1文字っつずーっとstrncmpで舐める
>一致してたらそっからtoに置き換える
>置き換え終わったらまたずーっとstrncmpで舐める
>ケツまでいったら終わり
>でよくね
まあそうだよね。
ただ、引数にポインタのポインタを使う意味とかが分からなくてさ。
まあ頑張ってみるわwありがとう。
>>548 も。
>>552 下手な引数入れると、置換した結果バッファオーバーフローで死にそうで非常に怖い
564 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:21:36.32 ID:3W8HApRB0
>>561 確かに、Linaxのコマンドプロンプトみたいなのからキーボードで起動する宿題だわ。
言われたとおり調べてみるよ。ありがとう。
>>561 そういうことかwww
Javaかなんか別の言語わかるなら簡単にわかる教え方ができるがCしかわからん?
566 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:23:21.89 ID:3W8HApRB0
>>565 JAVAは一応分かると思う。
教えてくれると非常に助かる。
567 :
地雷2 ◆SSyQjz5JfQ :2009/06/08(月) 00:24:42.06 ID:UGm5HXVaO
Cで教えた方がいいよ 高級言語じゃ勉強にならない
>>552 fromとto何も入ってないのにstrlenするとか……
569 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:26:32.90 ID:3W8HApRB0
>>568 多分それは穴埋めだからだと思うw
プログラムの足りない部分を自分で書けって課題だから。
>>568 from <- arg[0]
to <-arg[1]
を暗黙に代入してるんじゃないの?
571 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:26:59.26 ID:ikdo9owq0
>>566 簡単に言うと、public static void main(String args[]){ だ
Javaの場合、args.lengthとかやるとargsの長さがわかるじゃん?
でもC言語はそんな親切な機能ない 長さとかプログラマがしっかり把握しとけよ?の世界
だから、argc = .length みたいなノリでargvの長さ最初に教えてやるから後は適当にやれよってこと
配列の範囲外にアクセスしたら例外とか発生するヒマもなく余裕で落ちるしC言語マジ強敵
で、char **argcは間違いを恐れず別の書き方をするとchar[] argv[] ←だいたいこんなニュアンス
char[] = JavaのStringってのはなんとなく知ってんだろ?String[] = char** ぐらいの勢いだ
まぁそんなこんなだ ↑のはイメージだからあんまり鵜呑みにされると後の理解を妨げかねないから留意しといてね
>>569 そうか、ごめん。
最初の数行って云ってたから、この後だけが穴埋めになってるのかと思ってた
>>570 そんなんアリか?ww
>>570 俺も
from <- argv[1]
to <- argv[2]
くらいなのかなーなノリで適当に読んでたわwww
MAX_LEN = 100000なのか?とかもちょっと疑問だよね
argv[0]はプログラム名が来るから気をつけるんだぜ?
それ以上に不可解なのは、普通は3引数でa.out text from toと実行するだろって話だ なんでファイル名だけ別に取得するんだろう
576 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:37:55.55 ID:3W8HApRB0
>>572 要するにargcがargv(=文字列変数の配列)の長さを表してるってことか。よく分かった。
argcが第一引数、argvが第二引数だと勘違いしてたw
でもそうじゃなくて第一引数がargv[0]、第二引数がargv[1]ってことなのか。
>配列の範囲外にアクセスしたら例外とか発生するヒマもなく余裕で落ちるしC言語マジ強敵
何か知らんがこええなwそれで
>>563 か。色々頭の中で繋がってきたw
丁寧に説明してくれて本当助かりました。答えていただいた方ありがとうございました!
577 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:39:17.27 ID:3W8HApRB0
>>574 あ、argv[0]はまた違うのか。
てことはargv[1]からが第一引数…ってなるわけね。
thx
>>576 main関数の第一引数はargc第二引数はargv
そのプログラムの第一引数はargv[1] 第二引数はargv[2]に入る
>配列の範囲外にアクセスしたら例外とか発生するヒマもなく余裕で落ちるしC言語マジ強敵
さらに、運が悪いと配列の範囲外にアクセスしてよくわからん場所のデータをぶっ壊したにも関わらず
そのまま処理を続行したりすることもあるからC言語とか強敵どころの話じゃない
Javaとかなんか比較にならんくらいミスがないかちゃんとチェック&テストしつつ完成させる必要があるぜ
579 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:42:23.36 ID:SX9dciah0 BE:136040562-PLT(12000)
>>579 fib(10^8)の最上位桁は4だけど?
なんでもかんでも単純に計算させればいいってもんじゃない
581 :
地雷2 ◆SSyQjz5JfQ :2009/06/08(月) 00:45:46.37 ID:UGm5HXVaO
argvとか略しすぎだよな こういうのって見ても意味がわからんよね 伝統的に使ってる意味ならともかく、何でも略すのは開発の現場ではタブー 例えばクラスならCreateGraphicVectorのように長ったらしく書いた方がいい タイピングの時間よりもデバッグの時間の方が遥かに長いから
582 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:47:36.78 ID:SX9dciah0
>>580 いやww分かってるよwwww
それ出力結果あってる?
ものすごく時間がかかるんだけど
しかもアルゴリズムによっては微妙にずれてくる
>>582 まず、君の使ってる多倍長演算アルゴリズムのオーダーを考えるんだ
n^2だとすれば、1億を求めるために100万のときの1万倍の時間がかかるわけで
同じやり方では絶対に終わらない
2000万桁全ての数字を求めよって言ってるわけではないんだから、しかるべきアルゴリズムを使えってことだ
585 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 00:53:12.58 ID:SX9dciah0
>>583 Schemeって多倍長演算できたっけ?
できたとしても再帰関数使ったら絶対終わらないけどw
>>586 多倍長演算って名前であってるのか知らないけどメモリが許す限り無限の精度もっとけ?みたくR6RSとかには書いてあった気がする
10^8とかナイーブに終わってたら死ぬほど時間かかるよねwww
しかし、今だにO記法はよくわからん…
>>587 fibを1まで分解する再帰で書くと、呼び出し回数が結果と一致するわけだから指数オーダーになるね
普通に足してけば加算の回数は線形時間だけど、加算にかかる時間が桁数に比例するなら全体の時間はn^2オーダー
>>588 言ってることはわかるが感覚として染みついてない
思考の道具として使うことが出来ない
とかそういう
O(log n)でもいけるらしいね
doukakuにでも投稿してみたらおもしろいんじゃねーの?と一瞬オモタ
眠いから寝る
何言ってるのかわかんない SEってみなCできないとだめなの? JAVAとかC#だけじゃだめなの?
591 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 01:38:52.17 ID:SX9dciah0
まだやってんのかよww
593 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 01:52:08.47 ID:SX9dciah0
いや、風呂入ってたwww
594 :
以下、名無しにかわりましてVIPがお送りします :2009/06/08(月) 01:59:02.43 ID:KqvryDlL0
今北産業
595 :
以下、名無しにかわりましてVIPがお送りします :
2009/06/08(月) 02:05:19.85 ID:SX9dciah0 >>588 fib(10^10)の最上位は1だNE
たぶんそのあとに4135と続く