「オイラープロジェクトカンニング履歴」の編集履歴(バックアップ)一覧はこちら
オイラープロジェクトカンニング履歴 - (2012/08/27 (月) 10:34:56) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
*問い12
問題を解く方法がよくわからず掲示板で質問。
コードまで書いてもらうもコードの読解や原理がよくわからず考え中。
*問い25
フィナボッチ数が1000桁になるのは数列の何個目か?
単純に1000ケタを超えるまでフィナボッチ数列を計算して解こうと挑戦。
ほとんどコードを書いたことがないLispで解こうと考え、初心者レベルのコードを記述してみて実行時エラー。
掲示板でloop中の(が一つ多いでのでsetqのあたりが余分に関数と解釈されてると指摘を受けそれを修正してアセプト。
(defun getUP (n)
(if (= n 0)
1
(* 10 (getUP (1- n)))))
getUP
(defun calc ()
(let ((n1 1) (n2 1) (n3 0) (i 3) (up (getUP 999)))
(loop
(setq n3 (+ n1 n2))
(if (>= n3 up) (return i))
(setq n1 n2)
(setq n2 n3)
(incf i 1))))
calc
(calc)
4782
会津大学オンラインジャッジの問題とおなじくカンニングして解いたオイラープロジェクトの問題のリスト。
数学の問題集を扱ったサイトなので調べものして数学の知識を身につけながら解くのが正道な気がするが、一応出来るだけ自力で解きたいところ。
なのでカンニングして解いた問題のリストを掲載。
*問い12
問題を解く方法がよくわからず掲示板で質問。
コードまで書いてもらうもコードの読解や原理がよくわからず考え中。
*問い25
フィナボッチ数が1000桁になるのは数列の何個目か?
単純に1000ケタを超えるまでフィナボッチ数列を計算して解こうと挑戦。
ほとんどコードを書いたことがないLispで解こうと考え、初心者レベルのコードを記述してみて実行時エラー。
掲示板でloop中の(が一つ多いでのでsetqのあたりが余分に関数と解釈されてると指摘を受けそれを修正してアセプト。
(defun getUP (n)
(if (= n 0)
1
(* 10 (getUP (1- n)))))
getUP
(defun calc ()
(let ((n1 1) (n2 1) (n3 0) (i 3) (up (getUP 999)))
(loop
(setq n3 (+ n1 n2))
(if (>= n3 up) (return i))
(setq n1 n2)
(setq n2 n3)
(incf i 1))))
calc
(calc)
4782