[過去ログ] Qiita 4 - キータぞ、来たぞ、キータだぞー (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
361(2): デフォルトの名無しさん [sage] 2024/03/05(火) 11:10:48.88 ID:kMFA7wVm(1/2) AAS
>>355355(1): デフォルトの名無しさん [sage] 2024/03/05(火) 00:40:04.95 ID:ayHwglDl(1) AAS
関数内部の単なる数値演算に保守性もクソもないぜ
そんなところの保守性にこだわるやつは仕事できないやつ
それよりも複数のデータや複数の関数に関わるところの保守性をしっかりやればいい
> 関数内部の単なる数値演算に保守性もクソもないぜ
>>315315(12): デフォルトの名無しさん [sage] 2024/03/03(日) 21:47:18.39 ID:B4rwo5Er(1) AAS
閏年の仕様が変わったら判定関数だけ置き換えればいいのだから
判定関数の中身なんて何でもいいのよ
割り算(剰余算)と分岐はCPUにとって非常に遅いから避けるとするならば例えばこんな感じ
fn is_leap_year(year: u64) -> bool {
let q100 = (year * 42949673) >> 32;
((q100 & 3 == 0) | (q100 * 100 != year)) & (year & 3 == 0)
}
のクソコード見てから言え
362: デフォルトの名無しさん [] 2024/03/05(火) 11:33:45.43 ID:ihc4PKcq(1) AAS
>>361
どう見ても同一人物だろw
アホか
363(1): デフォルトの名無しさん [] 2024/03/05(火) 11:52:26.48 ID:9nHue/Qo(1) AAS
>>361
>>147147(7): デフォルトの名無しさん [] 2024/02/17(土) 14:28:35.26 ID:M+9VD8BN(1/8) AAS
> A: 4の倍数の年は、うるう年
> B: ただし、100の倍数の年は、うるう年ではない(平年)
> C: ただし、400の倍数の年は、うるう年
> D: ただし30の倍数の年は、うるう年
> E: ただし、30と4の倍数の年はうるう年ではない
> F: D, Eは2025年より適用する
をC++で書いてg++でコンパイルしてみた。
外部リンク:godbolt.org
アセンブリ言語読めないけど色分けでC++とアセンブリ言語の対応を教えてくれるので助かる。Eの判定部分に対応するアセンブリ言語が出力されてないな。g++に無駄な判定であると判断されたか。
試しに、重複してる4の倍数判定を
E: ただし、30と7の倍数の年はうるう年ではない
に変えてみると
外部リンク:godbolt.org
今度はEの判定部分に対応するアセンブリ言語は出力されるようだ。g++がashworthより賢いことは分かった。
のクソコード見てから言え!
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.041s