質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
LISP

LISPはプログラミング言語の一種であり、関数型言語に分類されています。 特徴として、括弧を多様する独特の構文を持ちます。

Q&A

2回答

854閲覧

Lisp プログラムの質問です。

addsa

総合スコア0

LISP

LISPはプログラミング言語の一種であり、関数型言語に分類されています。 特徴として、括弧を多様する独特の構文を持ちます。

0グッド

0クリップ

投稿2021/05/23 04:28

Lisp プログラムの質問です。 (1) 6歳から14歳の子は3000円を,15歳から21歳の子は5000円 をもらえて,これ以外の年齢の人はもらえないと決まって いるとする.年齢 xを引数として, x歳の子がもらえるお年玉の額を返す関数.ifを組み合わせて作る.
実行例 > (otoshidama 3) 0

(otoshidama 10) 3000
(otoshidama 18) 5000
(otoshidama 30) 0

(2)リストy が(品目1 金額1 ... 品目 n 金額n) の形式になっている時,品目xの金額pをみつけて, pが予算z以内ならzからpを引いた金額を返す. pが予算zを超えていれば, yosan-overを返す.品目xがリストになければ,not-found を返す.
実行例

(setq y0 '(ateishoku 450 bteishoku 400 cteishoku 380)) (ATEISHOKU 450 BTEISHOKU 400 CTEISHOKU 380)
(kaimono 'bteishoku y0 1000) 600
(kaimono 'ateishoku y0 400) YOSAN-OVER
(kaimono 'tendon y0 1000) NOT-FOUND

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

課題かなんかであるなら、ご自分で考えるべきものです。
わからないことがあるなら、赤の他人にではなく講師にお尋ねください

#その講師がここを見てなければいいのですがw

投稿2021/05/23 05:11

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

全部教えては意味が無いので、ヒントだけ書いておきます。

(1) の不完全な答え

lisp

1* (defun otoshidama (age) 2 (if (and (>= age 6) (<= age 14)) 3000 0)) 3WARNING: redefining COMMON-LISP-USER::OTOSHIDAMA in DEFUN 4OTOSHIDAMA 5* (otoshidama 7) 63000 7* (otoshidama 20) 80 9

あとは自分で考えてください。

(2)のヒント

lisp

1* (setq y0 '(ateishoku 450 bteishoku 400 cteishoku 380)) 2* (print (car y0)) 3 4ATEISHOKU 5ATEISHOKU 6* (print (cdr y0)) 7 8(450 BTEISHOKU 400 CTEISHOKU 380) 9(450 BTEISHOKU 400 CTEISHOKU 380)

あとは自分で考えてください。

投稿2021/05/23 12:16

ppaul

総合スコア24670

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問