問題タブ [htdp]

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.

0 投票する
4 に答える
10408 参照

user-interface - Lisp を使用して GUI を作成する方法: DrScheme または Common Lisp

または、GUI を作成するために必要な基本的な作業。GUI の基本的なコンポーネントは知っていますが、どこから始めればよいでしょうか。私はただの独学者で、本の最後にある「プログラムの設計方法」(HtDP) を読んでいますが、著者は、プログラマーになるには GUI と CGI コンピューター ネットワークの知識が必要であると示唆しています。最後の 2 つの情報は簡単に見つけることができます。しかし、GUI の作成方法について説明している本はほとんどないようです。おそらく、コンピューター プログラムを設計するプロセスでは、ほとんどの人が気にしないほど「低すぎる」と思います。

0 投票する
1 に答える
1984 参照

scheme - 関数本体で2つの関数呼び出しを行うことができないのはなぜですか?

そこで、プログラムの設計方法第2版の最初の章を読みます。私はかなり良い進歩を遂げたと思います。しかし、グリッドに別のグラフィックを追加するための「提案」があります。試行するたびにエラーが発生します。この時点で、私は立ち往生しています。以下はコードとエラーです。

注:ROCKETイメージは第1章にあります。コピーしてIDEに貼り付けました。

注:「提案」は次のとおりです。ロケットがシーンの下部より10ピクセル高い平らな岩盤に着陸するように、プログラムをどのように変更しますか?景色も忘れずに変えてください。

HTDP第1章

動作するコードは次のとおりです。

動作しないコードは次のとおりです。

そして、私が得るエラーは次のとおりです。

定義:関数本体に1つの式のみが必要ですが、余分な部分が1つ見つかりました

0 投票する
2 に答える
825 参照

scheme - HtDW は HtDP とどのように相関しますか?

そのため、How to Design Worlds (HtDW) と呼ばれる How to Design Programs (HtDP) のコンパニオン PDF があります。そして、HtDWの読み取りを開始できるようにするには、HtDPをどれだけ読み取る/知る必要があるのでしょうか? この 2 冊の章は何らかの形で関連していますか?

0 投票する
2 に答える
395 参照

syntax - なぜこの合法的な(ラケット)スキームなのですか?

私はhtdpを調べていて、これを最初のどこかで見つけました:-

次の文が違法な定義である理由を説明してください:1。(define(f'x)x)

ただし、ラケットでは正常に機能します。

明らかに、私は何かが欠けています...正確には何ですか?

0 投票する
2 に答える
491 参照

emacs - Scribble または HTDP サンプル コード例を模倣するための Racket Emacs モード?

「プログラムの設計方法」全体で、コード サンプルの構文の強調表示と色分けが非常に気に入っています。例えば:

http://www.htdp.org/2003-09-26/Book/curriculum-ZH-9.html#node_sec_6.5

ソースコードを編集するための Emacs メジャーモードの出発点として、このようなものを持っている人はいますか?

0 投票する
1 に答える
1919 参照

image - ラケットで画像サイズを変更する方法

を使用してゲームを作成してracketおり、背景 bitmap画像が必要です。しかし、選択した画像が大きすぎます。サイズを変更するにはどうすればよいですか?私が持っているもの:

0 投票する
4 に答える
547 参照

scheme - これを末尾再帰関数に変えることはできますか?

HtDPを通過すると、次の問題に遭遇しました。関数乗算を設計します。自然数 n を消費し、* を使用せずに任意の数 x で乗算します。

これは私が思いついたものです:

動作しますが、最善の解決策ではないと考えています。私の理解に基づいて、これは for ループとして解決できるため、末尾再帰にする必要があります。

0 投票する
2 に答える
198 参照

scheme - ビッグバン関数のwsは実際に何を表していますか?

最初のパラメーターは数値であり、世界の状態として記述されていることを私は知っています。しかし、それは私には漠然とした用語のように思えます。基本的に、この数字が実際に/実際に何を表しているのかわかりません。これまで見てきた2つの例は、「カウントダウンメカニズム」と「移動するピクセル数」です。正確には何をしているのですか?

私はHtDP(第2版)の第2章に取り組んでいます

0 投票する
1 に答える
585 参照

racket - 画像の行と列を作成するにはどうすればよいですか?

まず、HtDP 2nd Editionを使用しており、BSL言語パックを使用しています。

私は現在、エクササイズ 131を行っています。

その上、上にある場所の画像を見ていますが、これを行う方法について目立ったものはありません。これらの関数は、画像のリストではなく、個々の画像を受け取ります。例: (besides (list rect1 rect2 rect3)) とは対照的に (besides rect1 rect2 rect3)。さらに、関数の定義方法を見ると、関数自体が独立しているため、画像が重複しているように見えます。基本的に、私が話している重複は、各行の最初の画像にあります。

私は答えを探しているわけではありません (ただし、あなたが見つけた場合はそれを受け取ります) が、ヒント、サイン、正しい方向への神の介入.

0 投票する
2 に答える
654 参照

scheme - ラケットでこの補助機能を改善するにはどうすればよいですか?

私はHtDPの第4章でBSL言語を使用して作業しています。

私が取り組んでいた問題は次のとおりです。

演習136:メインを実行し、スペースバーを押して(ショットを発射)、しばらく待つと、ショットがキャンバスから消えます。ただし、ワールドキャンバスをシャットダウンすると、この目に見えないショットがまだ含まれているワールドになります。

代替のtock関数を設計します。これは、ショットをクロックティックごとに1ピクセル移動するだけでなく、座標がキャンバスの上に配置されているショットを削除します。ヒント:再帰的なcond句の補助関数の設計を検討することをお勧めします。

私が思いついた解決策は以下のとおりです(スポイラーで)。しかし、私は何か冗長なことをしているように感じます。基本的に、補助関数の私の適用は完全に正しくありません。

更新:(
これは以前よりもはるかにクリーンです)

追加されたテスト:
私はまだテストに取り組んでいます。

ワールド関数が追加されたテスト: