問題タブ [clisp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
common-lisp - CLISPのネストされたリストとラムダ式でいくつかの問題が発生しました
CommonLispのネストされたリストは本当に私を混乱させた。ここに問題があります:
再帰を使用して
、最初の引数が2番目の引数(ネストされたリストである可能性があります)にある場合は(nested-list 'b '(a (b c) d))
戻り、それ以外の場合は戻ります。t
nil
試しfind
ましたが、最初の引数が。の場合にのみ機能します'(b c)
。ラムダ式に目を向けました。最初に2番目の引数をフラット化してから、を使用eq
して引数を比較します。
それから私は立ち往生しました。ラムダエクスペッションについて多くのことを読んだとしても、それでも私は混乱しました。必要なときにリコールする方法がわかりません。funcall関数は知っていましたが、取得できないことはご存知でしょう。Common Lispを5日間学んだばかりなので、ヒントを教えていただければ幸いです。どうもありがとう!
lisp - CommonLispのNthの問題
GPAを計算できる関数を書こうとしています。今では限られた計算(3つだけ)を行うことができますが、ループや再帰(サブジェクトの要件)を使用せずに、n番目の関数を消費する方法を使用せずにさらに計算する方法に固執しましたか?のように:(n番目のn)、もしそうなら、それは私がラムダ式を書く必要があることを意味しますか?初心者として、私は質問を明確に説明できないかもしれません、本当にいくつかの助けが必要です。
Glistは成績ポイントですClistは単位時間です。
GPA =(gradepoint * credithour + gradepoint * credithour)/(credithourの合計)like:(3 * 1 + 3 * 2 + 4 * 1)/(1 + 2 + 1)
これが私のコードです:
lisp - ネストされたリストの数字を記号に置き換える方法は?
細かく作らないといけないようです;;それは私の宿題です。あなたが書いたコードをコピーしたくありません。私は初心者です。私が学ぼうとしているのは、主題を単一の断片に分解する方法であり、問題を解決するためにどの関数を使用する必要があるかに焦点を当てています。これらの問題を自分で解決するのは少し難しいです。なぜなら、私は Lisp のまったくの初心者であり、実際にはプログラミングの方法についてまったくの初心者だからです。あなたが私を助けてくれることを願っています。
ここに問題があります:与えられた定数があります
各嵐は、名前と風速のリストで表されます。
風速は次のように分類されます。
39~74 → tropical
75~cat-1
95 → 96~110 → 111~130 cat-2
→ cat-3
131~155 → cat-4
156以上 →cat-5
ここで、2 つの関数を作成する必要があります。
storm-categories
次のようなカテゴリ名を生成する必要があります:(bob tropical)
,(chary cat-1)
, …storm-distribution
次のように、各カテゴリの嵐の数を生成する必要があります: ,(cat-1 1)
,(cat-2 0)
…
この問題を解決しようとする方法は次のとおりです。
ステートメントを使用
if
して、風速のタイプを判断します。(if (and (> x 39) (< x 73)) (print 'tropical)) (if (and (> x 74) (< x 95)) (print 'cat-1)) (if (and (>) x 96) (< x 110)) (print 'cat-2)) (if (および (> x 111) (< x 130)) (print'cat-3)) (if (および (> x 131) ( < x 155)) (print'cat-4)) (if (および (> x 156)) (print 'cat-5))
65
風速 ( など) を windtype ( など) にcat-1
置き換えます。(嵐の中の x のループ do (rplacd x 'windtype)
最初の関数の簡単なアイデアはありますが、実装方法はまだわかりません。私はまだ最初の機能で立ち往生しているので、配信機能には触れていません。
clisp - なぜquicklispは「root」権限が必要なのですか?
root ユーザーは、quicklisp を正常にインストールできます。ただし、一般ユーザーはできません。
何故かはわからない。ここにいる誰かが私に光を当てることができますか?
lisp - この質問(家系図)に関するヒントを教えてもらえますか?
それは私の宿題から来ています。家系図があります
a と b が最も古い。そして、すべての既婚者は、二人目は元の家族の一員ではありません。次に、配偶者、兄弟、子供、孫、両親、祖父母の関数を記述する必要があります。
私は以下のようにリストを書きました: ( (父母) chlid1 child2 child3)
兄弟機能に問題があります。これが私のコードです。
私はそれが間違っていることを知っていましたが、それを修正する方法がわかりません..また、他の機能についても助けが必要です。皆さんからヒントが得られることを願っています。
lisp - ソースファイルをClispに保存できますか?
私は初心者プログラマーで、「LandofLisp」という本を読んでいます。
私はREPLを使って本の例を入力しています。現在のプログラムを.lispファイルとして保存して、ロードして後で作業を続けることができるようにすることはできますか?テキストエディタで.lispファイルを作成してロードできることはわかっていますが、REPLをフルスクリーンモードで使用して例を実行することを楽しんでいます。
clisp - 関数で内部関数を定義する方法は?
(div618 1600 6000)
内部関数「価格」を使用できないのはなぜですか?
心から!
lisp - CLISP で時間制限付きの実行メカニズムを実装する方法は?
私が念頭に置いているのは次のようなものです:
(long-calculation vars)
orに達したnil
場合の結果を返します。time-limit
haskell - Haskell の `\\` 関数を実装するには?
Haskell では、[1,2,3,4,5,6,7] \\ [4,5,6]
が返され[1,2,3,7]
ます。今度は、clisp を使用して同じ機能を実装したいと思います。今まで私はset-difference
作品を見つけました:
他の解決策はありますか?
lisp - clispのatoiの対応する標準機能は何ですか?
Visual Lisp では、 を使用(atoi "123")
して に変換"123"
できます123
。clisp には「atoi」のような関数がないようです。
どんな提案でも大歓迎です!
'(1 2 3 20 30)
に変換したいのですが"1 2 3 20 30"
、それを行う最善の方法は何ですか?
parse-interger
文字列を整数に変換でき、整数を文字列に変換する方法は? format
関数を使用する必要がありますか?
しかし、haskellのようにそれをcnovertする方法が"1 2 3"
わかりません:
心から!