C/C++の宿題片付けます 141代目
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/10/13(水) 23:03:19【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
【質問テンプレ】
[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
【過去ログ検索】 http://chomework.sakura.ne.jp/
【wiki】 http://www23.atwiki.jp/homework/
C/C++の宿題片付けます 140代目
http://hibari.2ch.net/test/read.cgi/tech/1284632294/
0153デフォルトの名無しさん
2010/10/16(土) 22:31:58void concat(struct node *p, struct node *q)
{
if( !p || !q ) return;
while( p->next ) p = p->next;
p->next = q;
}
int length(struct node *p)
{
int ret = 1;
if( !p ) return 0;
while( p->next ) ret++;
return ret;
}
struct node が示されてないから想像で書いてみた
0154まったくの初心者
2010/10/16(土) 22:50:18ありがとうございます。
あとすいませんがこれも分からないので教えてください。
int biesearch(int x, int v[], int n)
{
int p, q, m;
p = 0;
q = n - 1;
while(p <= q)[
m = (p + q)/2;
if(x < v[m])
q = m - 1;
else if(x > v[m])
p = m + 1;
else
return m;
}
return -1;
}
これをループを使用せず、関数の再帰呼び出しを使い、また外部変数
での値の受け渡しをしないという条件で作りなおさなければいけません。
0155デフォルトの名無しさん
2010/10/16(土) 22:57:45>>148じゃないが、この時代のC++では
static void Main()
になっている。
http://codepad.org/osqIJ92M
ひととおり組んでみました。
この中の concat() と length() をつかえばいいでしょう。
0157デフォルトの名無しさん
2010/10/16(土) 23:00:42それは C#では?
0158デフォルトの名無しさん
2010/10/16(土) 23:02:490159デフォルトの名無しさん
2010/10/16(土) 23:05:15関数に引数がないということと、
関数呼び出し時に引数の型や数のチェックが行われるかどうかは別だよ。
foo() は、Declarators の Syntax から空の identifier-list を持つ関数と解釈される。
この場合は、関数呼び出し時に仮引数と実引数の数が一致しない場合は呼び出し自体は有効だが、動作不定。
一方、foo(void) は、void が declaration-specifiers となる関数と解釈される。
この場合は、関数呼び出し時に厳密に引数の型や数がチェックされる。
よって、>>127 のコンパイラは正しく動作しているし、foo() != foo(void)。
main の件もスタートアップルーチンからの呼び出しだから、
型や数のチェックが行われていないだけじゃないかな。
だから、スタートアップルーチンから引数を渡されたら動作不定でしょ。
0160デフォルトの名無しさん
2010/10/16(土) 23:15:12うーん、あれだな
連結(concat)した後にqの長さはどうするべきか
a) p以降のどっかのノードを指しているのでそのまま放置
b) 連結されたんだからqはNULLにすべきで長さは0
全削除(delete)した後にqを利用するとどうなる
a) NULLアクセスを許すので落ちる
b) qは連結させたときにNULLになっているので正常終了
両方b)になってほしい気もしないでない
あああああ、明日ネットワークあるのに
0161デフォルトの名無しさん
2010/10/16(土) 23:20:30C99では、
ISO/IEC 9899:1999 6.7.5.3 14
An identifier list declares only the identifiers of the parameters of the function. An empty
list in a function declarator that is part of a definition of that function specifies that the
function has no parameters. The empty list in a function declarator that is not part of a
definition of that function specifies that no information about the number or types of the
parameters is suppllied
という風に、関数の定義を伴うときの宣言と、関数定義を伴わないときの宣言で、扱いが違います。
今は int main() { ... } がC99 に準拠しているかどうかが問題になっていますので、
関数定義を伴うときの宣言について考えると、この場合は int func(void) と int func() はまったく同じ no parameters の意味になっています。
>>127 の foo(), bar(void) はどちらも関数の定義を伴う関数の宣言ですから、C99 で考える限り foo() は foo(void) と一緒です。
0162デフォルトの名無しさん
2010/10/16(土) 23:23:16たしかに concat(p, q) としたあとの q の扱いは問題ですね。
void concat(struct node **p, struct node **q) だったら、もしかするとその点もうまく書けるのかもしれませんが、どうなるのでしょう。
0163デフォルトの名無しさん
2010/10/16(土) 23:23:42普通の感覚だと、b) もおかしい。
concat は、p の最後に q の内容がコピーで追加され、q 自体はコピー元のオリジナルのまま。
p が delete されてもオリジナルの q は変化しない。
0164デフォルトの名無しさん
2010/10/16(土) 23:38:11>162
**で書けますが、簡潔さに欠けるので、僕ならさらに構造体で覆うようにします
>163
説明が悪かったのかな
現状はa)なので、b)のようにした方が素直な設計でより安全だよねって
しかし、今さら設計変えるの大変(になるかもしれない)だから妥協できるところは妥協してもいいよねと
現状のまま、安全にするなら
concat p, q
q = nil
delete p
concatしたらnilってもう使うなで済む
0165デフォルトの名無しさん
2010/10/16(土) 23:40:35>>159 はコンパイル時に呼び出し側での引数チェックがされるかどうかの話をしているのに、
何故 no parameters にこだわってるの?
0166デフォルトの名無しさん
2010/10/16(土) 23:43:14>>163 が正しいだろ。
そこに書いてあることを実現するためには、
struct node の double pointer が必要なので、
concat などの引数リストが変わるけどいいの。
0167デフォルトの名無しさん
2010/10/16(土) 23:48:55関数定義を伴う関数宣言である以上 >>127 の foo() の場合であっても foo(void) になります。
>>127 の場合 foo() イコール foo(void) です。
コンパイル時に引数のチェックを行って、エラーとするコンパイラがあってもおかしくないと思います。
0168デフォルトの名無しさん
2010/10/16(土) 23:54:28コンパイラがあってもおかしくないって、それって「実装依存」ってこと?
もしくは、C99完全準拠のコンパイラを持ってないので確認できないということ?
君の解釈どおりなら、C99を満たすコンパイラはすべてエラーと判定しないと矛盾じゃない?
0169デフォルトの名無しさん
2010/10/16(土) 23:58:23失礼しました。>>167 は取り消します。
>>165 の事実を調べたいと思いますので、もしよければ C99 の該当場所を教えてください。
0170153
2010/10/17(日) 00:01:46>>153 で正しいのか?node が双方向リンクだったりはしないのか?まぁ知らんけど
>>154 はバイナリサーチだが、再帰で書くためには関数のインターフェイスを変える必要が有る
よって、再帰用に下請け関数を書いて対応した
int BSFunc( int x, int v[], int b, int e )
{
int m;
if( b == e ) {
if( x == v[b] ) return b;
else return -1;
}
m = ( b + e ) / 2;
if( x == v[m] ) return m;
if( x < v[m] )
return BSFunc( x, v, b, m - 1 );
else
return BSFunc( x, v, m + 1, e );
}
int biesearch(int x, int v[], int n)
{
if( !v || n <= 0 ) return -1;
return BSFunc( x, v, 0, n-1 );
}
0171まったくの初心者
2010/10/17(日) 00:19:21• void concat(struct node *p, struct node *q)
ノード*p以降のリストの後に,ノード*q以降のリストを連結
する関数
• int length(struct node *p)
ノード*p以降のリストの長さを返す関数
できたらこれらをそれぞれ別々に書いてくれるとうれしいです。
0172まったくの初心者
2010/10/17(日) 00:20:54mainの中身もお願いします。
0173デフォルトの名無しさん
2010/10/17(日) 00:37:19最近、出版された書物を見ても分かる通り
統一され始めているよ。今時void mainは書かれてないね。
0174デフォルトの名無しさん
2010/10/17(日) 01:01:20#include <stdio.h>
>> ここに >>170 を差し込め
int main( void )
{
int x, n, ret;
int v[] = { 1, 3, 4, 8, 11, 13, 16, 22 }; // 昇順になってればどんな数値が入っていても何個要素が有っても良い
n = sizeof( v ) / sizeof ( int );
printf( "検索対象の数字を入力:" );
scanf( "%d", &x );
ret = biesearch( x, v, n );
if( ret < 0 ) printf( "入力された数字はリストに有りません\n" );
else printf( "入力された数字はリストの %d 番目に有ります\n", ret + 1 );
return 0;
}
動作確認してないよ
しかし、main() くらい自分で書けんで大丈夫か?
0175デフォルトの名無しさん
2010/10/17(日) 01:45:13そのものズバリはまだ見つかってないけど、6.7.6 3 の (f) と (g) の記述で
with no parameter "specification" と、with no parameters
という違いはあるね。
specification なしの場合は 6.5.2.2 6 に該当するのかな。
英語苦手で正しく読み取れてないかもだが。
017655
2010/10/17(日) 02:23:51ありがとうございました。
0177まったくの初心者
2010/10/17(日) 19:35:31実行してみたのですが、リストに検索する数字がなかった場合ー1を返さなけれ
ばいけないのですが、−1と出ません。
どこをどのように変えればいいですか?
0179デフォルトの名無しさん
2010/10/17(日) 20:13:24「再帰で書くためには関数のインターフェイスを変える必要が有る 」は嘘だよ。
x が見つけたい値、v が要素のリストの先頭、n が要素数なんだから、
v と n を再起呼び出しのときに適切な値に変えるだけじゃない?
0180デフォルトの名無しさん
2010/10/17(日) 20:30:56{
int c, ret;
if(n<0) return -1;
c=n/2;
if(v[c]==x) return c;
if(v[c]<x)
{
ret=biesearch(x, &v[c+1], n-(c+1));
if(ret>=0) ret+=c+1;
}
else
{
ret=biesearch(x, &v[0], c-1);
}
return ret;
}
0181デフォルトの名無しさん
2010/10/17(日) 20:31:03>>177はレベルをはるかに超えるレベルを扱っているって感じだね
printfの簡単な使い方すら分らないのにバイナリサーチや再帰って凄いな
>>179
言葉だとどうすべきと言っているのかよく分らん
コードをさらしたほうが分りやすいと思う
0182デフォルトの名無しさん
2010/10/17(日) 20:36:59int biesearch(int x, int v[], int n)
{
int c, ret;
if(n<=0) return -1;
c=n/2;
if(v[c]==x) return c;
if(v[c]<x)
{
ret=biesearch(x, &v[c+1], n-(c+1));
if(ret>=0) ret+=c+1;
}
else
{
ret=biesearch(x, &v[0], c);
}
return ret;
}
0183デフォルトの名無しさん
2010/10/17(日) 20:37:12残念。分かる人いたね。
自分のレベルの低さを露呈したかったの?
0184デフォルトの名無しさん
2010/10/17(日) 20:56:04おれ、>>154のコードだけではバイナリサーチってのも分らんかったよ
関数名biesearchでバイナリサーチのコード分った、orz
コード作成じゃなく示されたコードからアルゴリズム答えよとかの宿題出ると面白いかも
0185デフォルトの名無しさん
2010/10/17(日) 20:58:30確かにそっちの方がエレガントだな、v のオフセットを変更するアイディアが浮かばんかったよ
でもね、戻り値のオフセット加算の分遅くなるんじゃね....と負け惜しみを言ってみる
0186デフォルトの名無しさん
2010/10/17(日) 21:08:17単に >>177 がサボりすぎて何も覚えて無いだけだと思うよ
大学で単位の為だけに履修してるなら良いけど、専門学校とかだったら大変だ
こんなのがプログラマとして世に出たらどうなる事か....
0187デフォルトの名無しさん
2010/10/17(日) 21:47:21やらないとこはブラック
0188デフォルトの名無しさん
2010/10/17(日) 21:51:220189デフォルトの名無しさん
2010/10/17(日) 21:52:30それがブラックの定義ならブラックのほうが企業数遥かに多いよな
0190まったくの初心者
2010/10/17(日) 22:14:53お願いします。
• int length(struct node *p)
ノード*p以降のリストの長さを返す関数
0191デフォルトの名無しさん
2010/10/17(日) 22:22:45struct node *temp = p;
while(temp!=NULL){
len++;
temp = temp->next;
}
return len;
0192デフォルトの名無しさん
2010/10/17(日) 22:27:46• void concat(struct node *p, struct node *q)
ノード*p以降のリストの後に,ノード*q以降のリストを連結
する関数
0193デフォルトの名無しさん
2010/10/17(日) 22:31:31while(temp->next != NULL){
temp = temp->next;
}
temp->next = q;
0194デフォルトの名無しさん
2010/10/17(日) 22:31:530195デフォルトの名無しさん
2010/10/17(日) 23:02:13そもそもループのプログラムを再帰にしろって言ってる時点で、
プログラムの実行速度遅くなるんだから、問題ないでしょ。
0196デフォルトの名無しさん
2010/10/17(日) 23:03:340198デフォルトの名無しさん
2010/10/17(日) 23:21:26{
return 0;
}
0199デフォルトの名無しさん
2010/10/17(日) 23:23:43>>1 に書いてあることをちゃんと読んだ?
問題付け足しになってると気づいてないの?
0200デフォルトの名無しさん
2010/10/17(日) 23:24:04>>151とは別の人ですか?
>>156に一式置いています。
0201デフォルトの名無しさん
2010/10/17(日) 23:54:33できれば#include <string.h>と書かない方法を教えていただきたいです。
あとどなたか>>88をよろしくお願いします。
0202デフォルトの名無しさん
2010/10/18(月) 00:01:06マジレスされても困ります
0203デフォルトの名無しさん
2010/10/18(月) 00:07:16こんな感じ?
#include <stdio.h>
#define SIZE 10
int strlength( char s[] )
{
int len = 0;
if ('a' <= s[0] && s[0] <= 'z')
s[0] = s[0] + 'A' - 'a';
while( s[len] != '\0' )
len++;
return len;
}
void strinput( char *s )
{
printf("%d文字以下の文字列を入力してください: ", SIZE-1); /* 入力 */
scanf("%s", s); /* 入力 */
}
int main(void)
{
char str[SIZE];
strinput(str);
printf("入力された文字列: %s\n", str);
printf("文字列の長さは%dです。 \n", strlength( str )); /* 関数の呼び出し */
printf("変換された文字列: %s\n", str);
}
0204デフォルトの名無しさん
2010/10/18(月) 00:18:57return 0;
がないような課題は零点課題ですよ、回答してはだめよ
先ず、ひどい課題だから作り直せって先生に言うべきです
0205デフォルトの名無しさん
2010/10/18(月) 00:20:11なぜなら、int main だから。
0206デフォルトの名無しさん
2010/10/18(月) 00:50:070207デフォルトの名無しさん
2010/10/18(月) 01:30:03mainがシステムに返す値だから関係ないよ。
0208デフォルトの名無しさん
2010/10/18(月) 01:40:43ごめん、一行目は何言ってるか判らないや
二行めを言うなら返さなくても良いじゃんって話になるよ、何返しても良いとかいうなら返さなくて不定値になっても同じでしょ
0209デフォルトの名無しさん
2010/10/18(月) 01:55:04ただ、別プログラムやシェルが戻り値を利用する場合もあるわけで
受け取り側の都合の良い値を返せばいいんだよ
慣例的に0を成功とすることが多いだけでマナーとか規格とか関係ないような
0210デフォルトの名無しさん
2010/10/18(月) 03:01:40どこで学んだ間違いですか?関数の戻り値について調べて下さいね。
0211デフォルトの名無しさん
2010/10/18(月) 03:03:42道路交通法に於いて、青信号なら通過しても良いが
安全が確認されてのことで、青でも通過できない場合もある。
しかし、青なら通過しなければという考えで生きている人は
そういうイレギュラーの時に、詰まらない失敗をする。
物事を適切に解釈、判断できないならプログラミングには向いてないよ。
0212デフォルトの名無しさん
2010/10/18(月) 03:48:52構わないが、他人に伝える以上、客観性がない意見は単なる個人の思い込みとしか
思われない。return についてはあくまでもその関数の戻り値の型によって
プログラマーが任意で、適切に処理すれば良い。必ずしも 0 でなければ
いけないという決まりは無い。
0213デフォルトの名無しさん
2010/10/18(月) 04:08:52If the return type of the main function is a type compatible with int, a return from the
initial call to the main function is equivalent to calling the exit function with the value
returned by the main function as its argument; reaching the } that terminates the
main function returns a value of 0.
これによると、
main)() の返り値が int で main() に return がないなどして main() の } に到達した場合は 0 が返りますね。
別に main() に return がなくても、何がしかの値が返るように規定されているから、main に return が必須というわけではないですね。
0214デフォルトの名無しさん
2010/10/18(月) 04:14:26[2] 問題文(含コード&リンク)
問題1
キーボードから読み込んだ整数値と実数値(倍精度:double)を、そのまま画面に表示するプログラムを作成せよ。
入力する整数の値は123456 入力する実数の値は123.456
問題2 キーボードから入力した適当な長さの文字列を、そのまま画面に表示するプログラムを作成しなさい。
入力例 I_love_programming.
問題3 キーボードから読み込んだ実数値の書式を指定して、整数部4桁、小数点以下2桁で表示するプログラムを作成しなさい。
例 12.3456 -> __12.35
[3] 環境
[3.1] OS: unix
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限:10月19日
[5] その他の制限: なし
よろしくお願いします。
0215デフォルトの名無しさん
2010/10/18(月) 06:57:04あくまで main() の戻り値は正常終了の場合は 0 がマナーと書いただけ
普通の関数なら何かの個数返したりポインタ返したりするよな、そういうケースで0(NULL)を返すのは逆に異常終了だ
まぁ0でも正常な場合は当然有るって書かんと重箱の隅を突かれそうだけど
マナーだから当然の事ながら規格なんてないよ、マナーって言い方がダメなら通例って言おうか?
何故0が正常終了として一般的なのかは知らんけど、Unix に慣れてると普通の感覚だと思うぞ
これは私見なんだが正常終了を0以外の値にすると
ret = Func();
if( ret == OK_RET ) { printf( "Error is %d\n", ret ); return ret }
と書かないとならんけど正常終了を0にすると
if( ret ) { ....
で、すむからではと邪推している
この辺の話は K&R あたりに書いてある様な気もするけど、友達から借りパクしたK&Rは別な奴に借りパクされたので手許に無い
手許に有る奴がちょっと調べてくれんかな
0216デフォルトの名無しさん
2010/10/18(月) 07:11:30[2] 問題文(含コード&リンク):0未満の数が入力されるまで
入力を求め、その入力した回数と入力した数値の最大値と最小値を表示するプログラムを作成しなさい。
なお、0未満の数は回数と最大値、最小値に含めないものとする。
また、0未満の値の入力だけで終わった場合は最大値、最小値は表示しない。
[3] 環境
[3.1] OS:Windows Vista Basic 32bit
[3.2] コンパイラ名とバージョン:Visual Studio 2010
[3.3] 言語:C言語
[4] 期限:2010年10月22日午前9時まで
[5] その他の制限:最大値、最小値についてはそれぞれ関数を作って作成すること
0217デフォルトの名無しさん
2010/10/18(月) 07:41:14int main( void )
{
int in, cnt = 0, max, min;
scanf( "%d", &in );
if( in < 0 ) {
printf( "cnt = 0" ); // 要らんかも知れん
return 0;
}
max = min = in;
cnt++;
while( 1 ) {
scanf( "%d", &in );
if( in < 0 ) {
printf( "cnt = %d, min = %d, max = %d\n", cnt, min, max );
return 0;
}
if( in < min ) min = in;
if( in > max ) max = in;
cnt++;
}
}
なんか垢抜けないコードで吐きそうだ
0218デフォルトの名無しさん
2010/10/18(月) 08:02:33やだ、この人素人以下。
0219デフォルトの名無しさん
2010/10/18(月) 11:06:510220デフォルトの名無しさん
2010/10/18(月) 13:54:52>最大値、最小値についてはそれぞれ関数を作って作成すること
らしいぞ
0221デフォルトの名無しさん
2010/10/18(月) 14:14:210222素人未満
2010/10/18(月) 17:58:50int in, cnt = 0, max, min;
void update_min(void){
if( in < min ) min = in;
}
void update_max(void){
if( in > max ) max = in;
}
int get_min(void){
return min;
}
int get_max(void){
return max;
}
void init_max_min(void){
max = min = in;
}
0223素人未満
2010/10/18(月) 18:00:37{
scanf( "%d", &in );
if( in < 0 ) {
printf( "cnt = 0" ); // 要らんかも知れん
return -1;
}
init_max_min();
cnt++;
while( 1 ) {
scanf( "%d", &in );
if( in < 0 ) {
printf( "cnt = %d, min = %d, max = %d\n", cnt, get_min(), get_max() );
return 1;
}
update_min();
update_max();
cnt++;
}
}
0224デフォルトの名無しさん
2010/10/18(月) 18:03:390225デフォルトの名無しさん
2010/10/18(月) 18:10:05「main関数の戻り値はその値を引数とするexit関数の呼び出しと等価とする」。
main()からのreturn 0; はexit(0);と等価。
だからexitの引数として用意された値を使わないことに違和感があるなら、
return EXIT_SUCCESS; で正しい(GNUのコードではよくみる)。
この仕様はANSI以前のCからの名残。
以前はexit()の呼び出しのみが正しい終了方法だった。
そうしないとatexit()に登録された関数が呼び出されない実装だったから。
>>212の言うとおりだと思う。
例えばsystem()の戻り値で呼び出し先のmain()の戻り値がくることも保証されてない。
実際、SUN環境では通用しない。
0226デフォルトの名無しさん
2010/10/18(月) 18:20:00そうです!
ありがとうございます。
0227デフォルトの名無しさん
2010/10/18(月) 18:28:02#include <stdio.h>
int main() {
int a;
double b;
printf("整数を入力してください > ");
scanf("%d", &a);
printf("実数を入力してください > ");
scanf("%lf", &b);
printf("入力した整数 = %d\n入力した実数 = %lf\n", a, b);
return 0;
}
#include <stdio.h>
int main() {
char str[1024];
printf("文字列を入力してください > ");
scanf("%s", str);
printf("入力した文字列 = %s\n", str);
return 0;
}
#include <stdio.h>
int main() {
double a;
printf("実数を入力してください > ");
scanf("%lf", &a);
printf("[%lf] -> [%7.2lf]\n", a, a);
return 0;
}
0228デフォルトの名無しさん
2010/10/18(月) 18:40:32[1] 授業単元:
[2] 問題文(含コード&リンク):
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限:できるだけ早くおねがいします。
[5] その他の制限: forの条件文を習ったばかりですがつまずきました。お願いします。
角度thetaを媒介変数として,(x,y)を計算してください.
thetaは0度から360度まで変化させた場合の(x,y)を出力せよ。
x=acosθ
y=bsin(θ+α)
ともうひとつ。
「個体群動態で N(t+dt) - N(t) = (r - hN(t)) N(t) として,rを増 殖率,hをこみあいの効果とする。
適当な,N(0) r, h を与えて, N(t) の変化を示しなさい。
0229デフォルトの名無しさん
2010/10/18(月) 18:43:03printf で double を出力するときは、「%lf」じゃなくて「%f」だよ。
あと、2つ目のプログラムだけど、「適当な長さ」に半角1023文字までという制限つけてよいの?
0230デフォルトの名無しさん
2010/10/18(月) 18:57:03問題文これで全部?
0231デフォルトの名無しさん
2010/10/18(月) 18:57:14逆に質問。
1つ目の問題で、a, b, α の値は指定なしですか?
0232デフォルトの名無しさん
2010/10/18(月) 19:12:41説明不足ですみませんでした。
a,b,αは自分で指定します。
0233デフォルトの名無しさん
2010/10/18(月) 19:14:56自分で指定っていうのは実行時に聞くの?
それとも適当な数字を埋め込めばいいの?
あとθは1°づつ増えるの?
0234デフォルトの名無しさん
2010/10/18(月) 19:18:190235デフォルトの名無しさん
2010/10/18(月) 19:21:300236デフォルトの名無しさん
2010/10/18(月) 19:25:030237デフォルトの名無しさん
2010/10/18(月) 19:29:21質問クンは質問クンであり、けっして回答クンではありません
0238デフォルトの名無しさん
2010/10/18(月) 19:33:33体重は何kgですか?
0239デフォルトの名無しさん
2010/10/18(月) 19:45:41isweb ライト のサービス終了について
http://isweb.www.infoseek.co.jp/info/information.html
0240デフォルトの名無しさん
2010/10/18(月) 20:08:48現在のCはlを付けてもいいんだよ
0241デフォルトの名無しさん
2010/10/18(月) 20:11:050242240
2010/10/18(月) 20:14:170243デフォルトの名無しさん
2010/10/18(月) 20:19:21C99のことを言ってるんだろうけど、間違える人が多すぎるから、仕方なく仕様に入れただけだよ。
C99非対応コンパイラやC++では、未定義の動作だよ。
0244240
2010/10/18(月) 20:22:360245デフォルトの名無しさん
2010/10/18(月) 20:24:11変数宣言の位置が気に入らないけど
0246デフォルトの名無しさん
2010/10/18(月) 20:33:31残念ながらgccはまだC99完全準拠ではありません。
0247デフォルトの名無しさん
2010/10/18(月) 20:33:400248デフォルトの名無しさん
2010/10/18(月) 20:37:240249デフォルトの名無しさん
2010/10/18(月) 20:41:120250デフォルトの名無しさん
2010/10/18(月) 20:43:420251デフォルトの名無しさん
2010/10/18(月) 20:43:58long %ld
float %f
double %lf
0252デフォルトの名無しさん
2010/10/18(月) 20:44:27■ このスレッドは過去ログ倉庫に格納されています