プログラミングのお題スレです。
【出題と回答例】
1 名前:デフォルトの名無しさん
お題:お題本文
2 名前:デフォルトの名無しさん
>>1 使用言語
回答本文
結果がある場合はそれも
【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/
宿題は宿題スレがあるのでそちらへ。
※前スレ
プログラミングのお題スレ Part21
https://mevius.5ch.net/test/read.cgi/tech/1668333636/
探検
プログラミングのお題スレ Part22
1デフォルトの名無しさん
2023/08/03(木) 13:52:13.20ID:/xW45k0z871869
2025/10/26(日) 10:21:11.68ID:XLS0tlS8872デフォルトの名無しさん
2025/10/26(日) 17:08:32.87ID:Y3+SSpql >>869-871
いえいえ、ああ、やっぱりずっと素数という訳にはいかないんですね…。
何か素数の秘密に触れるヒントか?と心躍ったけど、そんな訳なかったですね(´・ω・`)
あやうく数学スレで鼻息荒く書き込むところでした。
ありがとうございました<(_ _)>
いえいえ、ああ、やっぱりずっと素数という訳にはいかないんですね…。
何か素数の秘密に触れるヒントか?と心躍ったけど、そんな訳なかったですね(´・ω・`)
あやうく数学スレで鼻息荒く書き込むところでした。
ありがとうございました<(_ _)>
873デフォルトの名無しさん
2025/10/26(日) 17:55:12.41ID:N6SeZsiy 29bitで収まる範囲内
333333331 = 17 × 19607843
これを求められなかったHaskellはすごく遅い?
333333331 = 17 × 19607843
これを求められなかったHaskellはすごく遅い?
874デフォルトの名無しさん
2025/10/26(日) 23:06:07.50ID:Y3+SSpql >>873
速いアルゴリズムに変えたら何とか1分ほどでその数字まで届きました。
(そもそも、>867 のは美しいとか短いとかの枕詞が付くコードですし。33...31に気付かなかったら4桁ぐらいが実用的ならおkだったので)
改良版Haskell
pfactorization = f primes
where primes =2:3:5#primes
where n#x@(m:q:y)=[n|gcd m n<2]++(n+2)#last(x:[m*q:y|q^2-3<n])
というか、それより1桁少ない方が少し時間かかりますね。
19607843 < 33333331 なので、素数比較回数が多いのかと。
速いアルゴリズムに変えたら何とか1分ほどでその数字まで届きました。
(そもそも、>867 のは美しいとか短いとかの枕詞が付くコードですし。33...31に気付かなかったら4桁ぐらいが実用的ならおkだったので)
改良版Haskell
pfactorization = f primes
where primes =2:3:5#primes
where n#x@(m:q:y)=[n|gcd m n<2]++(n+2)#last(x:[m*q:y|q^2-3<n])
というか、それより1桁少ない方が少し時間かかりますね。
19607843 < 33333331 なので、素数比較回数が多いのかと。
875デフォルトの名無しさん
2025/10/26(日) 23:07:37.04ID:Y3+SSpql あ、f の方を忘れた。
f のコードは変更なしです。
f のコードは変更なしです。
876デフォルトの名無しさん
2025/11/07(金) 05:48:17.42ID:ckPLmv2U >>868
cだとこんな感じでいいのかな?
3333333333333331くらいまで一瞬でできる
#include <stdio.h>
int main(void) {
long long d, n;
printf("Enter a number: ");
scanf("%lld", &n);
for (d = 2; d * d <= n; d++) {
if (n % d == 0)
break;
}
if (d * d <= n)
printf("%lld is divisible by %lld\n", n, d);
else
printf("%lld is prime.\n", n);
return 0;
}
cだとこんな感じでいいのかな?
3333333333333331くらいまで一瞬でできる
#include <stdio.h>
int main(void) {
long long d, n;
printf("Enter a number: ");
scanf("%lld", &n);
for (d = 2; d * d <= n; d++) {
if (n % d == 0)
break;
}
if (d * d <= n)
printf("%lld is divisible by %lld\n", n, d);
else
printf("%lld is prime.\n", n);
return 0;
}
877デフォルトの名無しさん
2025/11/25(火) 16:00:02.31ID:COUmbZtB お題:ulp()の実装
Pythonのmath.ulp()に相当する関数の実装
特殊値(非数や無限大や非正規化数)の考慮は任意
引数がゼロの場合はDBL_MINやDBL_TRUE_MINに相当する値を
返すこと(プラットホーム依存)
発展的なお題:
共用体やfrexp()やldexp()を使わずに実装
Pythonのmath.ulp()に相当する関数の実装
特殊値(非数や無限大や非正規化数)の考慮は任意
引数がゼロの場合はDBL_MINやDBL_TRUE_MINに相当する値を
返すこと(プラットホーム依存)
発展的なお題:
共用体やfrexp()やldexp()を使わずに実装
878デフォルトの名無しさん
2025/12/06(土) 16:35:13.06ID:LjhUSqqq お題:ページャーがある。範囲表示に使う配列を出力せよ。現在のページ番号はp,総ページ数はn、切り取る範囲はrとする。
例
p=1, n=10, r=5
[1,2,3,4,5]
p=3, n=10, r=5
[1,2,3,4,5]
p=5, n=10, r=5
[3,4,5,6,7]
p=8, n=10, r=5
[6,7,8,9,10]
p=10, n=10, r=5
[6,7,8,9,10]
例
p=1, n=10, r=5
[1,2,3,4,5]
p=3, n=10, r=5
[1,2,3,4,5]
p=5, n=10, r=5
[3,4,5,6,7]
p=8, n=10, r=5
[6,7,8,9,10]
p=10, n=10, r=5
[6,7,8,9,10]
879デフォルトの名無しさん
2025/12/06(土) 19:35:04.35ID:cqDpuJikレスを投稿する
ニュース
- 中国外務省「日本への渡航を控えて」→高市内閣の支持率はとくに下がらず…なぜ日本国民がこれほど「高市内閣」を応援するのか★5 [♪♪♪★]
- 【芸能】笑い飯・哲夫 『THE W』の審査員「次からもう断ろうかな…」 粗品とのコメント回数の差にあ然 カンペで指示が出ている [冬月記者★]
- 【赤坂“サウナ火災”30代夫婦死亡】サウナストーンでドア割ろうとした可能性 非常ボタン作動しなかったか ★6 [ぐれ★]
- 渡邊渚、入院から2年半の心境明かす「いつまでもPTSDをネタにして生きるなと言われ、詐病だ、嘘つきだと言われ…」「搾取されたくない」 [Ailuropoda melanoleuca★]
- 【芸能】須田亜香里、結婚相手に求める年収は『2000万円』 「どっちかが病気しても安心」「都内で車を持ってる方は安定した収入ある」 [冬月記者★]
- 所得増税、27年1月に開始 防衛財源確保で―政府・与党 [蚤の市★]
- (´・ω・`)朝までおはなちちよぉー?
- 俺以外の人類いらないんだが
- (´・ω・`)ねこさんとオフトゥンの中に居るけど、今日のねこさんは起きてる
- 【悲報】フィンランド女議員「吊り目ポーズやめろ?『キャンセルカルチャー』にはもうウンザリ……(吊り目ポーズでパシャッ」 [839150984]
- コーヒーは苦くて飲めないけど匂いは好きだから毎日コーヒー入れてる
- お前らいじめすぎた
