私はパスカルを子供に教えるよう頼まれました。Pascal を見たことがなかったにも関わらず、チュートリアルを取得することができました。今では彼に教えるのに十分な知識があります。
単純なアルゴリズムを含むいくつかの基本的な演習を誰かが私に指摘できるかどうかを確認するために、皆さんに手紙を書いています。次のようなものです:この配列を並べ替え、平均を見つけるなど...
それはどんな言語でもかまいません。彼がうまくいくように、私はいくつかの演習を見つける必要があるだけです.
これは、フリーランスから新しいプログラミング言語を学ぶための15の演習のリストで、多くの言語で使用されている基本的なテクニックを拡張し、彼が学んでいる新しい言語の感触を彼に与えることができます
これについては、(ほとんど) 言語にとらわれない方法で説明します。if
彼に印刷ステートメントとフロー制御 (ステートメント、ループなど)を教えた後、for
ループなどで生成できる単純な ASCII アート パターンから始めることをお勧めしfor
ます。
たとえば、このように木の半分をどのように印刷しますか?
*
**
***
****
*****
******
さて、このように完全なツリーをどのように印刷しますか?
*
***
*****
*******
*********
***********
今度はロケット船を描いてみてください。;)
これらは視覚的であり、結果は魅力的であり、演習はループの重要性を伝え、冗長性を排除するため、ほとんどの子供にとって最適です.
並べ替えアルゴリズムについては、リンクを参照してください。これはウィキペディアの記事です。並べ替えアルゴリズムに関する一般的な情報ですが、以下に、すべてのタイプの個別のアルゴリズムと、疑似コード (および一部の言語) のアルゴリズムへのリンクがあります。
「平均を見つける」限り、「n」個の要素がある場合:
SUM=0.
DO i=1,n
SUM=SUM+element(i)
ENDDO
AVRG=SUM/n
また、学習目的と思考のために、Project Eulerは非常に優れています。
また、この質問を見てください: 楽しい/教育的なプログラミングの課題はどこにありますか? すべてをコピーして貼り付けたくはありませんでしたが、まさに探しているもの (プログラミングの演習) へのリンクがたくさんあります。そしてこれ: Algorithm Questions Website ,あなたのプログラミング演習は何ですか? . そこには彼が興味を持ちそうな何かがきっと見つかるはずです。
古典的なもの:
プログラムに乱数を選択させます。ゲームの目的は、消去法によってその数を見つけることです。ユーザーが低い数値を推測すると、プログラムは低すぎると言い、数値が高いと高すぎると言います。
「AI」(定義済みの動き) とテキスト グラフィックを使用した Tic tac toe ゲームは素晴らしいプロジェクトです。
それにいくつかの楽しみを追加します。始めるのに良いもの:
じゃんけんゲーム
ユーザーは P、R、または S を入力します
勝ち、負け、引き分けをプログラムが応答する
より高度な機能: 実績、勝率、連勝/連敗
双方向リンクリストで基本的な操作を行うことも古典的です。
C/C に似た言語を知っていれば、基本的には同じです。
あとはほぼ同じです。構文は少し異なりますが、それほど違いはありません。
彼らがどの Pascal を使用しているか、また彼らが何を教えてくれたかを知る必要があります。