Krátká matematická myšlenka
(define (Pythagorova-věta a b c) ; a, b jsou odvěsny, c je přepona (= (* c c) (+ (* a a) (* b b)))) (define (vypočítej-přeponu-pro-odvěsny a b) (sqrt (+ (* a a) (* b b)))) (define (vypočítej-odvěsnu-pro-přeponu-a-odvěsnu c a) (sqrt (- (* c c) (* a a))))
kouzelná hůlka
O jakou myšlenku se jedná? Jak ji ověřit?
Jde o myšlenu
Pythagorovy věty
.
(define (ověř-platnost-Pythagorovy-věty-pro a b c) (string-append "Pro trojúhelník " (number->string a) " " (number->string b) " " (number->string c) " " "Pythagorova věta " (if (Pythagorova-věta a b c) "platí" "neplatí") ".")) (ověř-platnost-Pythagorovy-věty-pro 3 4 5) (ověř-platnost-Pythagorovy-věty-pro 1 2 3)
kouzelná hůlka
(define (přepona-pro-odvěsny a b) (string-append "Pro odvěsny " (number->string a) " a " (number->string b) " je přepona " (number->string (vypočítej-přeponu-pro-odvěsny a b)) ".")) (přepona-pro-odvěsny 3 4)
kouzelná hůlka
(define (odvěsna-pro-přeponu-a-odvěsnu c a) (string-append "Pro přeponu " (number->string c) " a odvěsnu " (number->string a) " je druhá odvěsna " (number->string (vypočítej-odvěsnu-pro-přeponu-a-odvěsnu c a)) ".")) (odvěsna-pro-přeponu-a-odvěsnu 5 4) (odvěsna-pro-přeponu-a-odvěsnu 5 3)
kouzelná hůlka
(let* ((první-odvěsna 3) (druhá-odvěsna 4) (přepona (vypočítej-přeponu-pro-odvěsny první-odvěsna druhá-odvěsna))) (ověř-platnost-Pythagorovy-věty-pro první-odvěsna druhá-odvěsna přepona)) (let* ((přepona 5) (první-odvěsna 3) (druhá-odvěsna (vypočítej-odvěsnu-pro-přeponu-a-odvěsnu přepona první-odvěsna))) (ověř-platnost-Pythagorovy-věty-pro první-odvěsna druhá-odvěsna přepona)) (let* ((přepona 5) (první-odvěsna 4) (druhá-odvěsna (vypočítej-odvěsnu-pro-přeponu-a-odvěsnu přepona první-odvěsna))) (ověř-platnost-Pythagorovy-věty-pro první-odvěsna druhá-odvěsna přepona))
kouzelná hůlka
CC BY-SA 4.0
neprogramator.cz