↑
次スレを作る時は上記1行をコピーして2行に増やして必ず1行目に入るようにしてください。
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
※前スレ
C言語なら俺に聞け 149
https://mevius.5ch.net/test/read.cgi/tech/1540731704/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
C言語なら俺に聞け 150
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (アウアウクー MM57-IE4z)
2019/02/06(水) 13:39:03.21ID:c4bnQMl3M121デフォルトの名無しさん (ワッチョイ a900-uNFS)
2019/02/13(水) 15:40:57.70ID:d5jEja6x0 Cのスレに書き込んでてかつ鶏飼育してるってすげー組み合わせ
122デフォルトの名無しさん (ワッチョイ 49e6-feI+)
2019/02/13(水) 15:43:10.55ID:q5+/i40P0 ここの人たちはマイコンで全自動の餌やり制御とか余裕で作ってそうだからなぁ
123デフォルトの名無しさん (バットンキン MM96-azlk)
2019/02/13(水) 15:54:21.06ID:Q5DduoYTM むしろ全自動鶏作ろう。
124デフォルトの名無しさん (ワッチョイ a17b-D6og)
2019/02/13(水) 18:00:49.65ID:2WlGbphz0 まぁ、C言語のCはChickenの頭文字だからね。
125デフォルトの名無しさん (ドコグロ MM09-CTVZ)
2019/02/13(水) 18:16:41.77ID:i20vW39tM ここでスベるとか…
126デフォルトの名無しさん (ワッチョイ 49e6-feI+)
2019/02/13(水) 18:19:31.10ID:q5+/i40P0 おじいさまたち、しっかりたのみますよ
127デフォルトの名無しさん (ワッチョイ 275f-3QuV)
2019/02/14(木) 00:55:10.36ID:eGYXBQeH0 >>124
「はじめてのC」
「はじめてのC」
128デフォルトの名無しさん (ワッチョイ bf8c-l0e6)
2019/02/14(木) 07:24:34.92ID:J1vF692V0 鶏の雌雄判別機を作ったらまじで大儲けできる。
129デフォルトの名無しさん (ワッチョイ 07da-OxnY)
2019/02/14(木) 07:33:43.74ID:5EPJ06Po0 鶏ではなくてひよこの雌雄判別だろ
130デフォルトの名無しさん (ワッチョイ bf8c-l0e6)
2019/02/14(木) 07:42:05.06ID:J1vF692V0 玉子だったらなお良い。
131デフォルトの名無しさん (スプッッ Sdff-tyEA)
2019/02/14(木) 07:45:47.66ID:MhXZGfUyd それは機械学習の世界だからなpythonでやるべきだな
132デフォルトの名無しさん (ワッチョイ 07da-yQ/S)
2019/02/14(木) 07:52:15.98ID:5EPJ06Po0 機械学習の段階に持っていく以前にどうやって特徴点を抽出するんだよ
133デフォルトの名無しさん (ワッチョイ 077f-+3Lz)
2019/02/14(木) 08:01:05.34ID:bVlNWlBE0 >>130
レーザー使って卵のうちにてのはもうあるらしい
レーザー使って卵のうちにてのはもうあるらしい
134デフォルトの名無しさん (スプッッ Sdff-tyEA)
2019/02/14(木) 08:44:29.64ID:MhXZGfUyd >>132
AIを信じろ、心を無にして写真を撮り続けるんだ。
AIを信じろ、心を無にして写真を撮り続けるんだ。
135デフォルトの名無しさん (アウアウウー Sa4b-s2oh)
2019/02/14(木) 09:27:48.57ID:9tQDIG7ca 鶏のスレができたと聞いてゆっくり歩いてきました。
136デフォルトの名無しさん (ササクッテロル Sp7b-mDuQ)
2019/02/14(木) 12:09:08.34ID:EQjYAhePp >>124
A、B、そしてC言語だ、アホw
A、B、そしてC言語だ、アホw
137デフォルトの名無しさん (ワッチョイ 7f3a-yQ/S)
2019/02/14(木) 12:31:22.40ID:eoj/2xbH0 B (programming language) が A programming language の流れを汲んでいるとは初耳だな
138デフォルトの名無しさん (ササクッテロル Sp7b-mDuQ)
2019/02/14(木) 12:35:11.20ID:EQjYAhePp っAPL
139デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/14(木) 16:09:27.74ID:7mjvw7zr0 Bは聞いたことがあるが、Aがあるのは初めて知ったw
140デフォルトの名無しさん (アウアウクー MM7b-3QuV)
2019/02/14(木) 17:42:21.71ID:WWAGjmY5M >>128
ひよこの時点で選別されている。
ひよこの時点で選別されている。
141デフォルトの名無しさん (ワッチョイ 07da-yQ/S)
2019/02/14(木) 17:54:09.12ID:5EPJ06Po0142デフォルトの名無しさん (ワッチョイ 47e6-yQ/S)
2019/02/14(木) 17:55:33.11ID:dTIeIK2I0 まじかよプログラム書いてる場合じゃない
143デフォルトの名無しさん (ワッチョイ bf8c-l0e6)
2019/02/14(木) 19:22:48.32ID:Jtoe5svL0 雄のひよこの運命はマジでミンチ
144デフォルトの名無しさん (ワッチョイ 7f8f-M0iL)
2019/02/14(木) 20:04:09.42ID:lvuH5t8P0 ひよこ鑑定士の雌雄判定プログラムになるわ
145デフォルトの名無しさん (アウアウウー Sa4b-s2oh)
2019/02/14(木) 21:15:49.32ID:FnxMJF+Da 昔々小学生の頃に道で売ってたカラーひよこを買って、だいたいは一晩で死ぬわけだがその時は電球で暖めたり色々やったら生き長らえて成長し、立派な鶏に成長し、その後親戚に引き取られて行ったが、すぐに食われた。
146デフォルトの名無しさん (ワッチョイ ff7c-cT+3)
2019/02/15(金) 09:35:49.46ID:PLZ5J6XD0 ヒヨちゃん、ミケ、チョビ
147デフォルトの名無しさん (ワッチョイ 5fab-A2tD)
2019/02/16(土) 00:17:44.31ID:yq1cCgqT0 #include "A.h"
#include "B.h"
A.hとB.hに同じ内容の同じ名前の関数が定義されてると
こうインクルードした時点でコンパイラから二重定義されてるぞ
とおしかりを受けるわけだがどうしたらいいかな?
手作業でA.hないしはB.hから該当する関数を削除しないといけないかな?
#include "B.h"
A.hとB.hに同じ内容の同じ名前の関数が定義されてると
こうインクルードした時点でコンパイラから二重定義されてるぞ
とおしかりを受けるわけだがどうしたらいいかな?
手作業でA.hないしはB.hから該当する関数を削除しないといけないかな?
148デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/16(土) 00:26:14.00ID:BHwuOYP40 ヘッダーで関数を定義するのが悪いんじゃ
149デフォルトの名無しさん (ワッチョイ 47e6-yQ/S)
2019/02/16(土) 00:31:06.99ID:DIoBwVhC0 #pragma onceではダメですか?
そういう話ではない?
そういう話ではない?
150デフォルトの名無しさん (ワッチョイ 077f-iXJN)
2019/02/16(土) 00:35:57.27ID:QGJnkP2m0 AB共にその関数使用でインクルードするソースが多数あるのであれば
どちらか一方は関数削除し代わりにもう片方をインクルード
どちらか一方は関数削除し代わりにもう片方をインクルード
151デフォルトの名無しさん (ワッチョイ 5f78-foAg)
2019/02/16(土) 00:57:35.72ID:BxPlGezW0 いや普通に二重で定義せずに名前変えろよ
152デフォルトの名無しさん (ワッチョイ 7f8f-tyEA)
2019/02/16(土) 01:15:06.97ID:P5gjDjW+0 うん、事情によらず同じ名前の関数定義があっちゃだめでしょ。
153デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/16(土) 01:16:19.79ID:BHwuOYP40 そのヘッダーをインクルードするソースが複数あったら、
やはりリンク時に二重定義とならないか?
やはりリンク時に二重定義とならないか?
154デフォルトの名無しさん (ラクペッ MM9b-OxnY)
2019/02/16(土) 01:45:16.86ID:0XZqCZxyM 定義の意味が曖昧だけど自分ならヘッダーはプロトタイプ宣言だけなので関数定義そのものが
二重になることはまず無いな
*.cと*.hファイルの関数定義と宣言をきちんと区別していれば同一関数の二重定義なんて事態には
そうならないと思うんだが
二重になることはまず無いな
*.cと*.hファイルの関数定義と宣言をきちんと区別していれば同一関数の二重定義なんて事態には
そうならないと思うんだが
155デフォルトの名無しさん (ワッチョイ 5fab-A2tD)
2019/02/16(土) 03:04:51.53ID:yq1cCgqT0 int型の変数を文字列に変える
INT2STRって関数がバッティングしてる
便利な関数だからいろんなヘッダファイルに仕込んでるんだけど
そういうヘッダファイルを複数includeするとバッティングしちゃうんだよね
INT2STRって関数がバッティングしてる
便利な関数だからいろんなヘッダファイルに仕込んでるんだけど
そういうヘッダファイルを複数includeするとバッティングしちゃうんだよね
156デフォルトの名無しさん (ワッチョイ bf8c-l0e6)
2019/02/16(土) 04:31:59.37ID:0BUCSxrk0 バッティングする関数を別のヘッダーにする。
157デフォルトの名無しさん (ワッチョイ 8701-5sVJ)
2019/02/16(土) 05:23:54.50ID:mG+jUdie0 関数宣言だけなら多重でも文句はいわれない
マクロやtypedefに構造体の衝突ならインクルードガード施してそれだけをヘッダーに
};
マクロやtypedefに構造体の衝突ならインクルードガード施してそれだけをヘッダーに
};
158デフォルトの名無しさん (ワッチョイ 7fd2-A2tD)
2019/02/16(土) 07:51:21.96ID:cXYf2t9G0 #ifdef
#ifndef
#endif
の出番?
#ifndef
#endif
の出番?
159デフォルトの名無しさん (ワッチョイ 8701-yQ/S)
2019/02/16(土) 08:25:13.37ID:VTuLU8k00 ライブラリのヘッダ見てマネればいいじゃん
#ifndef _STDIO_H
#define _STDIO_H 1
...
#endif
#ifndef _STDIO_H
#define _STDIO_H 1
...
#endif
160デフォルトの名無しさん (ワッチョイ 47e6-yQ/S)
2019/02/16(土) 08:47:05.29ID:DIoBwVhC0 みなさんpragma onceじゃなくてifndef派なんですね
161デフォルトの名無しさん (ワッチョイ 5f01-3Kdw)
2019/02/16(土) 08:52:07.39ID:q1DAaOKG0 >>155
> INT2STRって関数がバッティングしてる
> 便利な関数だからいろんなヘッダファイルに仕込んでるんだけど
その関数を定義した"int2str.h"を作って
#pragma onceなり#ifndefなりでインクルードガードしておく
各ヘッダーファイルは"int2str.h"をインクルードすればいいだけ
> INT2STRって関数がバッティングしてる
> 便利な関数だからいろんなヘッダファイルに仕込んでるんだけど
その関数を定義した"int2str.h"を作って
#pragma onceなり#ifndefなりでインクルードガードしておく
各ヘッダーファイルは"int2str.h"をインクルードすればいいだけ
162デフォルトの名無しさん (ワッチョイ 7f8f-tyEA)
2019/02/16(土) 09:05:18.00ID:P5gjDjW+0 >>155
「便利な関数だからいろんなヘッダファイルに仕込んでるんだけど」
普通は
「便利な関数だからライブラリ化していろんな実装ファイルでインクルードしてる」
とするべきでしょ。
ヘッダファイルの使い方も間違ってるような…
「便利な関数だからいろんなヘッダファイルに仕込んでるんだけど」
普通は
「便利な関数だからライブラリ化していろんな実装ファイルでインクルードしてる」
とするべきでしょ。
ヘッダファイルの使い方も間違ってるような…
163デフォルトの名無しさん (ワッチョイ 7f8f-tyEA)
2019/02/16(土) 09:09:29.43ID:P5gjDjW+0 >>161
たぶんint2str.hはヘッダーファイルじゃなくて実装ファイルでインクルードすべき性質のものだよね。
細かいことかもしれないけど、ヘッダーファイルでインクルードすると他のファイルへの影響が増えるから、必要がない限りは実装ファイルの方でインクルードするべきだと思う。
たぶんint2str.hはヘッダーファイルじゃなくて実装ファイルでインクルードすべき性質のものだよね。
細かいことかもしれないけど、ヘッダーファイルでインクルードすると他のファイルへの影響が増えるから、必要がない限りは実装ファイルの方でインクルードするべきだと思う。
164デフォルトの名無しさん (ワッチョイ 8701-5sVJ)
2019/02/16(土) 09:19:18.44ID:mG+jUdie0 関数の実体をヘッダーにおいているのか
inline キーワードが使えるなら… という話かな?
inline キーワードが使えるなら… という話かな?
165デフォルトの名無しさん (ドコグロ MM1f-3Kdw)
2019/02/16(土) 09:40:04.81ID:suSnt5KvM >>163
いやそんなことはみんなわかっててでも本人やりたいならこうすればいいよって言ってるだけだろ
いやそんなことはみんなわかっててでも本人やりたいならこうすればいいよって言ってるだけだろ
166デフォルトの名無しさん (アウアウウー Sa4b-JTNF)
2019/02/16(土) 09:59:46.09ID:t+1YRxqBa これはみんなボケてるの?
167デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/16(土) 10:56:39.56ID:BHwuOYP40 ワザとだろう
168デフォルトの名無しさん (ワッチョイ 5fab-A2tD)
2019/02/16(土) 10:58:48.72ID:yq1cCgqT0 ありがとう、みんなが背中押してくれたから決心が付いた(`・ω・´)
ヘッダーファイルint2str.hを作って
関数INT2STRの実体はint2str.cに記述、
int2str.hには
#ifndef _INT2STR_H
#define _INT2STR_H
...
#endif
でくくって多重定義を防ぐ(`・ω・´)b
ヘッダーファイルint2str.hを作って
関数INT2STRの実体はint2str.cに記述、
int2str.hには
#ifndef _INT2STR_H
#define _INT2STR_H
...
#endif
でくくって多重定義を防ぐ(`・ω・´)b
169デフォルトの名無しさん (ワッチョイ 5fd2-5nnY)
2019/02/16(土) 13:29:20.93ID:GySit7mC0 #include <stdio.h>
int f(int i){
switch(i){
defalut:
return i;
}
}
int main(void) {
printf("%d\n", f(2));
return 0;
}
このコードを実行するとfの入力が何であっても0が出力されるんですけどなぜですか?
int f(int i){
switch(i){
defalut:
return i;
}
}
int main(void) {
printf("%d\n", f(2));
return 0;
}
このコードを実行するとfの入力が何であっても0が出力されるんですけどなぜですか?
170デフォルトの名無しさん (スッップ Sd7f-tyEA)
2019/02/16(土) 13:46:58.56ID:3/SZoFmmd171デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/16(土) 13:49:29.31ID:BHwuOYP40 >>169
defalut:
defalut:
172デフォルトの名無しさん (ブーイモ MM6b-JXvc)
2019/02/16(土) 14:04:34.91ID:WseEcsSPM defaultがラベルになる?switch の中に return だけになるのか?switch 素通りして関数の最後に return 無いけど return 0 になるのか?これコンパイルとおるの?
少なくともコンパイル警告は出るはずだから、素人は警告無視すんな
少なくともコンパイル警告は出るはずだから、素人は警告無視すんな
173デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/16(土) 14:11:52.03ID:BHwuOYP40 ラベルは、警告出ないだろう
これ昔ハマったことあるw
これ昔ハマったことあるw
174デフォルトの名無しさん (アークセー Sx7b-cMBS)
2019/02/16(土) 14:29:47.26ID:z2OC1C8Ix あー、これね。
これそのものじゃないけどcaseを書き忘れて同じようにハマった経験あるわ。
これそのものじゃないけどcaseを書き忘れて同じようにハマった経験あるわ。
175デフォルトの名無しさん (ワッチョイ 47ad-MMHW)
2019/02/16(土) 14:34:18.78ID:h+JOL/Xg0 初心者なんですけどファイルをfopenで開いてからcloseせずに別のモードでまたfopenするのは問題ありですか?
176デフォルトの名無しさん (ワッチョイ bf02-yQ/S)
2019/02/16(土) 14:41:10.94ID:FAU3Sbcr0 >>169
コピペして実行してみたがこちらでは 4195622 が出力されたw
gcc -Wall でコンパイルしてみると「ラベル ‘defalut’ が定義されていますが使用されていません」が出る。
綴り間違いだな。l と u が入れ違いになっている。
コピペして実行してみたがこちらでは 4195622 が出力されたw
gcc -Wall でコンパイルしてみると「ラベル ‘defalut’ が定義されていますが使用されていません」が出る。
綴り間違いだな。l と u が入れ違いになっている。
177デフォルトの名無しさん (ワッチョイ 5fd2-5nnY)
2019/02/16(土) 14:58:25.69ID:GySit7mC0 ありがとうございました!
綴が違っていたことに気づきませんでした!
綴が違っていたことに気づきませんでした!
178デフォルトの名無しさん (ワッチョイ 5f84-8zyB)
2019/02/16(土) 15:18:12.53ID:jgcdGKnj0 なるほど -Wreturn-type とか -Wall つけないと int 型の関数に return が無くても警告出ないのか
179デフォルトの名無しさん (スッップ Sd7f-tyEA)
2019/02/16(土) 15:31:05.97ID:3/SZoFmmd >>170
コピペせずに手打ちでやったから "defalut" に気づかなかった。。
コピペせずに手打ちでやったから "defalut" に気づかなかった。。
180デフォルトの名無しさん (ワッチョイ bf8c-l0e6)
2019/02/16(土) 15:42:31.02ID:GG6HVTci0 バグの大半は手書き
181デフォルトの名無しさん (ワッチョイ 877b-WJvq)
2019/02/16(土) 16:44:51.50ID:/Su8h7T90 >>175
単一のファイルを複数回、fclose()しないでfopen()するってことかな。
複数の FILE* が単一のファイル(名)を操作してる状態。
FIO24-C. すでにオープンされているファイルをオープンしない
ttps://www.jpcert.or.jp/sc-rules/c-fio24-c.html
↑によると「(前略)同一のファイルを同時に複数回オープンできるかどうかも、
処理系定義とする」ってことだから、一般的には好ましくないね。
すでにfopen()されててまだfclose()されてないファイルに対する
2回目のfopen()が成功する(場合もある)か、常に失敗するかも「処理系定義」だし。
単一のファイルを複数回、fclose()しないでfopen()するってことかな。
複数の FILE* が単一のファイル(名)を操作してる状態。
FIO24-C. すでにオープンされているファイルをオープンしない
ttps://www.jpcert.or.jp/sc-rules/c-fio24-c.html
↑によると「(前略)同一のファイルを同時に複数回オープンできるかどうかも、
処理系定義とする」ってことだから、一般的には好ましくないね。
すでにfopen()されててまだfclose()されてないファイルに対する
2回目のfopen()が成功する(場合もある)か、常に失敗するかも「処理系定義」だし。
182デフォルトの名無しさん (ワッチョイ 5f33-A2tD)
2019/02/16(土) 18:01:42.08ID:OrPj8CII0 >>159,168 予約識別子はやめとこう。
183デフォルトの名無しさん (ワッチョイ 47ad-MMHW)
2019/02/16(土) 19:51:50.72ID:h+JOL/Xg0 >>181
詳しい説明ありがとうございます
詳しい説明ありがとうございます
184デフォルトの名無しさん (ワッチョイ 8701-yQ/S)
2019/02/17(日) 08:39:19.73ID:uUoaBuH/0 んじゃこうだな
#ifndef STDIO_H_
#define STDIO_H_ 1
...
#endif
#ifndef STDIO_H_
#define STDIO_H_ 1
...
#endif
185デフォルトの名無しさん (アウアウエー Sa1f-Nxmh)
2019/02/19(火) 10:01:13.72ID:IvpU5OFea おまいらならFEのC言語問題余裕の全問正解なわけ?10分もかからんくらい?
186デフォルトの名無しさん (ワッチョイ 5fda-OxnY)
2019/02/19(火) 10:15:05.54ID:+p6oUoec0 少し古いが第一種情報とエンベデッドスペシャリスト程度はクリアしてる
即答クイズじゃないんだから時間気にするのは間抜けだぞ
即答クイズじゃないんだから時間気にするのは間抜けだぞ
187デフォルトの名無しさん (ワッチョイ 275f-3QuV)
2019/02/19(火) 17:04:59.95ID:uTkGj35D0 >>185
ああいう問題は実務では存在しないから簡単ではないよ。
ああいう問題は実務では存在しないから簡単ではないよ。
188デフォルトの名無しさん (ワッチョイ 4700-tIDa)
2019/02/19(火) 18:44:17.22ID:BOKvhiPA0 マジで言い訳でもなんでもなく
業務のときと使う脳味噌が全然 違う。
普段 ファイルを単純に移動させるにも 外環境からどういう邪魔が入りうるか
プール単位で跨ぐときどういうセキュリティーホールがあるか
とかいうことを重箱の隅をつつくように考えてるのに
条件分岐を一度も使わずに素数生成しろ みたいな問題が出てくるんだもん
しかも出/入力データの危険性は一切考えない、っていうパターンがほとんど。
業務のときと使う脳味噌が全然 違う。
普段 ファイルを単純に移動させるにも 外環境からどういう邪魔が入りうるか
プール単位で跨ぐときどういうセキュリティーホールがあるか
とかいうことを重箱の隅をつつくように考えてるのに
条件分岐を一度も使わずに素数生成しろ みたいな問題が出てくるんだもん
しかも出/入力データの危険性は一切考えない、っていうパターンがほとんど。
190デフォルトの名無しさん (ワッチョイ 5fda-iZZg)
2019/02/19(火) 18:56:33.83ID:+p6oUoec0 そういった類の具体的な問題対処能力を試してみたいのであればスペシャリスト系の過去問でも見てみれば?
エンベデッドかデータベース試験の午後の記述問題あたりがいいと思う
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/_index_mondai.html
エンベデッドかデータベース試験の午後の記述問題あたりがいいと思う
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/_index_mondai.html
191デフォルトの名無しさん (ワッチョイ 8701-cMBS)
2019/02/19(火) 19:25:12.60ID:rpeG63p80 情報処理試験は実務やってたらAPよりスペシャリストのほうが簡単だわ。
192デフォルトの名無しさん (アークセー Sx7b-cMBS)
2019/02/20(水) 17:11:05.26ID:5682Vwfvx 「100以下の素数を表示するブログラムを作りなさい」
どんなプログラムを作るかで実務向きかどうかを判断できるらしい。
どんなプログラムを作るかで実務向きかどうかを判断できるらしい。
193デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/20(水) 17:34:21.53ID:yWD0fIVX0 で、実務向きと判断される人はどういう風に回答するんだろうかw
194デフォルトの名無しさん (ワッチョイ 877b-WJvq)
2019/02/20(水) 17:56:41.12ID:V5JGZApS0 「100以下の素数を表示するブログラムを作りなさい」だと
手打ちの固定テーブル(初期化済み配列)って解答もありそうだな。
2重のforループで「エラトステネスのふるい」を回して0/1の配列を生成。
値を表示する/しないは、要素2個の関数ポインタを格納した配列ってトリック。
そもそもfor, whileや三項演算子は「条件分岐」じゃないのか?
みたいな疑問を感じ始めると答えられないね。
手打ちの固定テーブル(初期化済み配列)って解答もありそうだな。
2重のforループで「エラトステネスのふるい」を回して0/1の配列を生成。
値を表示する/しないは、要素2個の関数ポインタを格納した配列ってトリック。
そもそもfor, whileや三項演算子は「条件分岐」じゃないのか?
みたいな疑問を感じ始めると答えられないね。
195デフォルトの名無しさん (ワッチョイ 5fda-yQ/S)
2019/02/20(水) 18:03:03.37ID:/pFWY/nZ0 単純に考えれば素数を漏れなく見つけるにはエラトステネスのふるいによるしかない
いかにして無駄な計算を避けるかが重要
プラグラム言語よりもいかに数学的素養の能力を身に着けているかが問われる
馬鹿正直に2から100までループを回すようならまったく実務には向いてない
整数論の基礎だけで100以下の判定に必要な要素は2,3,5,7だけであることはすぐにわかる
プログラムに落とし込む以前の問題
いかにして無駄な計算を避けるかが重要
プラグラム言語よりもいかに数学的素養の能力を身に着けているかが問われる
馬鹿正直に2から100までループを回すようならまったく実務には向いてない
整数論の基礎だけで100以下の判定に必要な要素は2,3,5,7だけであることはすぐにわかる
プログラムに落とし込む以前の問題
196デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/20(水) 18:09:44.13ID:yWD0fIVX0 該当する素数一覧が埋め込まれた文字列を表示するプログラムが一番速そう
197デフォルトの名無しさん (スッップ Sd7f-tyEA)
2019/02/20(水) 18:34:58.50ID:MxetRGgJd 俺は拡張性がちらついてエラトステネスにしたくなるわ。どれだけの実行速度が求められるのかわからないとどの方法でやるか決心がつかなくてタイムアップしそうw
198デフォルトの名無しさん (アウアウウー Sa4b-4Twi)
2019/02/20(水) 18:48:50.68ID:WptMO45ba >>192
問題の意図や目的を明示せずに解かせた答えだけみても、その人がどんな意図でその回答を出したのかは断定できないから、これだけで実務がどうこう言うのは短絡的だとは思うよ。
よくある性格診断とかで、○○を選んだあなたは××な性格です〜ってのがあるけど、解説を聞いてもまったく説得力のない決めつけがほとんどだし。それよりはいくぶんましだけど。
問題の意図や目的を明示せずに解かせた答えだけみても、その人がどんな意図でその回答を出したのかは断定できないから、これだけで実務がどうこう言うのは短絡的だとは思うよ。
よくある性格診断とかで、○○を選んだあなたは××な性格です〜ってのがあるけど、解説を聞いてもまったく説得力のない決めつけがほとんどだし。それよりはいくぶんましだけど。
199デフォルトの名無しさん (ワッチョイ 7f63-cT+3)
2019/02/20(水) 18:51:44.09ID:yWD0fIVX0 実務的には、「要求を満たし、簡潔にして高速で間違いがないこと」位かな
200デフォルトの名無しさん (エムゾネ FF7f-tyEA)
2019/02/20(水) 18:53:27.21ID:onU160B4F >>199
いや拡張性をサッとそえとく心配りは必要だろ
いや拡張性をサッとそえとく心配りは必要だろ
201デフォルトの名無しさん (スッップ Sd7f-tyEA)
2019/02/20(水) 18:55:22.57ID:MxetRGgJd 夜な夜な素数配列DBをどんどん作ってくれるプログラムと、素数配列DBから値を引っ張ってくれるプログラムの組み合わせでファイナルアンサーだ!
202さまよえる蟻人間 ◆T6xkBnTXz7B0 (スププ Sd7f-fXCu)
2019/02/20(水) 18:55:39.06ID:AQq/x/Ljd 3以上の素数は奇数であること。
n以下の素数を調べるときは、ルートn以下の約数を調べればいいこと。
整数論を勉強したなら、これくらいは知っておいて欲しい。
n以下の素数を調べるときは、ルートn以下の約数を調べればいいこと。
整数論を勉強したなら、これくらいは知っておいて欲しい。
203デフォルトの名無しさん (アウアウウー Sa4b-s2oh)
2019/02/20(水) 19:05:39.41ID:agArr1lpa >>199
組み込み用でメモリが非常に少ないマシン用のプログラムの場合もう一捻り必要。
組み込み用でメモリが非常に少ないマシン用のプログラムの場合もう一捻り必要。
204デフォルトの名無しさん (アウアウウー Sa4b-s2oh)
2019/02/20(水) 19:07:07.48ID:agArr1lpa ま、いいや。うちに帰ってから俺が変なプログラム作ってみるよ。
205194 (ワッチョイ 877b-WJvq)
2019/02/20(水) 19:09:30.26ID:V5JGZApS0 >>196 こんな感じね。
#include <stdio.h>
int main(void)
{
puts("2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97");
return 0;
}
どうやって文字列を作ったかはヒミツ。本当に合ってるかは不明。
「素数なら表示し、素数でなければ表示しない」の部分は
テーブルがすでに出来てるとすれば、
tbl[i] && printf("%d\n", i);
てな具合に論理演算子の短絡評価を使う手もあるか。
パズルとしては面白いけど、実用で何の意味があるのか、
金払って受験する資格試験の問題としてどうなのか、疑問だなぁ。
#include <stdio.h>
int main(void)
{
puts("2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97");
return 0;
}
どうやって文字列を作ったかはヒミツ。本当に合ってるかは不明。
「素数なら表示し、素数でなければ表示しない」の部分は
テーブルがすでに出来てるとすれば、
tbl[i] && printf("%d\n", i);
てな具合に論理演算子の短絡評価を使う手もあるか。
パズルとしては面白いけど、実用で何の意味があるのか、
金払って受験する資格試験の問題としてどうなのか、疑問だなぁ。
206さまよえる蟻人間 ◆T6xkBnTXz7B0 (スププ Sd7f-fXCu)
2019/02/20(水) 19:12:37.32ID:AQq/x/Ljd 素数の知識がなければ暗号解読やハッキングができないかも。
207デフォルトの名無しさん (ワッチョイ 5fda-iZZg)
2019/02/20(水) 19:33:00.95ID:/pFWY/nZ0 この流れだと
世の中のあらゆる暗号鍵はあらかじめ配列に格納することで突破可能、どうやって配列を作るかは秘密
とか言い出しそうだな
本質が分かってない
素数を高速に表示することが目的ではなく素数を少ない計算量で見つける事が本来の目的
世の中のあらゆる暗号鍵はあらかじめ配列に格納することで突破可能、どうやって配列を作るかは秘密
とか言い出しそうだな
本質が分かってない
素数を高速に表示することが目的ではなく素数を少ない計算量で見つける事が本来の目的
208デフォルトの名無しさん (ワッチョイ 877b-WJvq)
2019/02/20(水) 19:46:25.77ID:V5JGZApS0209さまよえる蟻人間 ◆T6xkBnTXz7B0 (ワッチョイ 8701-fXCu)
2019/02/20(水) 19:56:53.43ID:jAMIqMc60 >>207
そのアイディアに近いものはレインボーテーブルと呼ばれていて、すでに実用化されている。
そのアイディアに近いものはレインボーテーブルと呼ばれていて、すでに実用化されている。
210デフォルトの名無しさん (ワッチョイ 5fda-yQ/S)
2019/02/20(水) 20:08:03.07ID:/pFWY/nZ0211さまよえる蟻人間 ◆T6xkBnTXz7B0 (ワッチョイ 8701-fXCu)
2019/02/20(水) 20:23:16.84ID:jAMIqMc60 一般的なコンピューターでは素数暗号の解読は困難だね。A5/1 Security Projectが進めばどうなるかわからないが。
212さまよえる蟻人間 ◆T6xkBnTXz7B0 (ワッチョイ 8701-fXCu)
2019/02/20(水) 20:25:26.46ID:jAMIqMc60 Windowsのユーザーアカウントくらいなら数日あれば。。。
213デフォルトの名無しさん (アウアウクー MM7b-3QuV)
2019/02/20(水) 20:27:13.73ID:EKI9LXSlM >>195
>整数論の基礎
素数だけで構成する積による表現がすべて自然数について存在すること、ならびに、この積の表現が一通りであることを証明してください
>整数論の基礎
単に掛け算の交換則だけでいいのでは?
>整数論の基礎
素数だけで構成する積による表現がすべて自然数について存在すること、ならびに、この積の表現が一通りであることを証明してください
>整数論の基礎
単に掛け算の交換則だけでいいのでは?
>>205
それは表示した数が、果たして素数かどうか、を示してはいませんよね
それは表示した数が、果たして素数かどうか、を示してはいませんよね
>>206
RSA 暗号はもう古いです、今は elgamal 暗号がトレンドです
RSA 暗号はもう古いです、今は elgamal 暗号がトレンドです
219さまよえる蟻人間 ◆T6xkBnTXz7B0 (ワッチョイ 8701-fXCu)
2019/02/20(水) 20:33:59.13ID:jAMIqMc60 >>215
「ある整数の倍数の存在が周期的であること」を利用すれば、メモリーを節約できる。
「ある整数の倍数の存在が周期的であること」を利用すれば、メモリーを節約できる。
>>219
たしかに 2 と 3 の公倍数である 6 をもとに
6n + 1, 6n + 5 だけをテーブルに載せる、とかは可能ですね
私はやったことがない、それはどうでもいいとして、これをコード化(coding-realized) したのも見たことがありません、いつか誰かやるだろうと思っていたんですが、なかなか表に表れませんね
たしかに 2 と 3 の公倍数である 6 をもとに
6n + 1, 6n + 5 だけをテーブルに載せる、とかは可能ですね
私はやったことがない、それはどうでもいいとして、これをコード化(coding-realized) したのも見たことがありません、いつか誰かやるだろうと思っていたんですが、なかなか表に表れませんね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「日本はドイツと違い反省せず」…中国外相、独外相に対日批判 台湾問題で理解求める [少考さん★]
- 【おこめ券】鈴木農相 米価維持の意図「一切ない」 [ぐれ★]
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★6 [七波羅探題★]
- 【警視庁】走行中の電車で女性に露出した下半身押しつけたか 無職の男(46)逮捕「チャンスがあればいつでもやる」 [nita★]
- 【苺ましまろ】立民衆院議員、人気漫画の水着少女画像を「醜悪」タイ人少女の性搾取事件と関連付け…党内で反発 [少考さん★]
- 「残業キャンセル界隈」若者が増加?「職務放棄」との批判も…“定時退社の権利”どこまで通用するか [七波羅探題★]
- 【悲報】ネトウヨゆたぼん、事故の見舞金を乞食したついでに今でもパパの自作自演操り人形なことがバレ終わるwwwwwwwwwww [802034645]
- 【高市悲報】中国軍「公海で空母の発着訓練するって事前通告したのになんで自衛隊機は急接近してきたんだ…?」中国軍困惑 [931948549]
- 30過ぎた大人おじさんが大学生(昔)のままのファッションをする「おじさんキッズコーデ」、炎上して問題視される。 [153490809]
- 現役ドラフト発表WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
- 俺はきっと"全部"嫌いなんだ。息づく全てが俺を苛つかせるんだ。
- 【速報】中国人の凶悪犯罪が急増!害国人の変遷、韓国→ベトナム→中国へ🏡
