calc-square を定義
1辺の長さが a(cm)の正方形の面積を返す手続きを calc-squareというシンボルにバインドせよ
(define calc-square (lambda (a) (* a a)))
calc-cube-surface
を定義
1辺の長さが a(cm)の立方体の表面積を求める例を実行例として示せ
ただし calc-square を使うこと
(define calc-cube-surface (lambda (a) (* (calc-square a) 6)))
一辺の長さ1cm、3cm, 15cm の立方体の表面積を求める例を実行例として示せ
(calc-cube-surface 1)
(calc-cube-surface 3)
(calc-cube-surface 15)
calc-rectangular-area を定義
2辺の長さが a,b (cm)の長方形の面積を返す手続きを calc-rectangular-area として定義せよ
(define calc-rectangular-area (lambda (a b) (* a b)))
calc-rectangular-solid-surface-area
を定義
3辺の長さが a,b,c (cm)の直方体の表面積を返す手続きを
calc-rectangular-solid-surface-area として定義せよ
calc-rectangular-area を使うこと
(define calc-rectangular-solid-surface-area (lambda (a b c)
(* 2 (+ (calc-rectangular-area a b)
(calc-rectangular-area b c)
(calc-rectangular-area a c)))))
calc-rectangular-solid-surface-area
を定義
3辺の長さが a,b,c (cm)の直方体の表面積を返す手続きを
calc-rectangular-solid-surface-areaとして定義せよ
calc-rectangular-area を使うこと
前問と同じだけれど、注目する長方形が違う
(define calc-rectangular-solid-surface-area (lambda (a b c)
(+ (calc-rectangular-area (* a 2) b)
(calc-rectangular-area c (* 2 (+ a b))))))
他にもいろいろ考えられる
\[\pi\ を使って\]
半径 r (cm) の 円の周の長さを返す手続き
(use math.const) ;シンボル pi に値がバインドされる
(define calc-circle-perimeter (lambda (r)
(* 2 pi r))) ; なので 使える
; 他にも e とかバインドされているはず、gauche リファレンスで調べられる
\[\pi\ を使って\]
半径 r (cm) の 円の面積を返す手続き
(use math.const)
(define calc-circle-ara (lambda (r)
(* pi r r)))
\[\pi\ を使って\]
半径 r (cm) の 球の体積を返す手続き
(use math.const)
(define calc-sphere-volume (lambda (r)
(* 4/3 pi r r r)))
\[\pi\ を使って\]
半径 r (cm) の 球の表面積を返す手続き
(use math.const)
(define calc-sphere-surface-area (lambda (r)
(* 4 pi r r)))