僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
3つの数から大きいのふたつを取り出してその
自乗同士を足すこと。
最初はそれを逐次解いてみたが、
最終値を比較したほうが
手っ取り早く思えた。
;;; 基本的な関数を定義 (define t2p (lambda (a b) (+ (* a a) (* b b)))) ;;; これも同様 (define larger (lambda (a b) (cond ((> a b) a) (else b)))) ;;;全体 (define newlarge (lambda (a b c) (cond ((>= (tp2 a b) (tp2 a c)) (larger (tp2 a b) (tp2 b c))) (else (larger (tp2 a c)(tp2 b c))) )))
(newlarge 8 9 10) gosh> 181 (newlarge 8 10 9) gosh> 181 (newlarge 9 8 10) gosh> 181 (newlarge 9 10 8) gosh> 181 (newlarge 10 8 9) gosh> 181 (newlarge 10 9 8) gosh> 181
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。