2009-05-30 12 views
2

私は子供にパスカルを教えるように求められてきました。私がチュートリアルを手に入れる前にPascalを見たことはありませんでしたが、今私は彼に教えるのに十分な知識があります。パスカルを子供に教えるための簡単な質問

は、これは、任意の言語にすることができ...など、この配列をソートし、平均値を見つける:

私は、誰もが簡単なアルゴリズムのようなものを必要とするいくつかの基本的な演習を私を指摘することができるかどうかを確認するために君たちを書いています、私はちょうど彼が働くことができるようにいくつかの練習を見つける必要があります。

+2

この子供は何歳ですか?年齢によっては、特定の種類の運動がより適切かもしれません。 – hbw

+1

彼は17です。高校を卒業する途中で – Sergio

+0

私はldigasから答えをupvoted。ソートアルゴリズムは、アルゴリズム的思考と言語の技術的詳細の両方を公開するため、私の好きな話題です。ソートは高校時代の正しいレベルだと思います。 –

答えて

6

ここでは多くの言語で使用される基本的な技術を拡張し、彼に彼は私が(ほとんど)、言語でこれに対処するつもりです

+0

いいね、ありがとう – Sergio

5

を学んだ新しいlanaguageの感触を与えることができますフリーランスから15 Exercises for Learning a new Programming Languageのリストです不自然なファッション。彼に印刷文とフロー制御(ifステートメント、forループなど)を教えた後、私は、forループなどで生成できる単純なASCIIアートパターンから始めたいと考えています。

たとえば、このようにツリーの半分をどのように印刷しますか?

* 
** 
*** 
**** 
***** 
****** 

さてさて、今どのようにこのように、フルツリーを印刷するのでしょうか?

 * 
    *** 
    ***** 
    ******* 
********* 
*********** 

今、ロケット船を描こうとしてください。 ;)

これらは、視覚的であり、結果が魅力的で、演習ではループの重要性が分かり、冗長性がなくなるため、大部分の子供にとって最適です。

3

sorting algorithmsについてはリンクをご覧ください。これはウィキペディアの記事です - ソートアルゴリズムに関する少し一般的な情報ですが、下にはそれらのすべてのタイプへのリンクと擬似コード(およびいくつかの言語)のアルゴリズムがあります。

は限り、あなたが要素を持って「n」がきたときに、行く「平均は見つける」:学習目的とProject Eulerを考えるための

また
SUM=0. 
DO i=1,n 
SUM=SUM+element(i) 
ENDDO 
AVRG=SUM/n 

は、非常にいいです。


また、この質問を見てください: Where can you find fun/educational programming challenges?私はすべてをコピー&ペーストしたくなかったが、それはあなたが(プログラミングエキソサイズ)を探している正確に何のためのものとのリンクの束を持っています。これはAlgorithm Questions Website,What are your programming exercises?です。おそらく、彼がそこに興味を持っていると思う何かを見つけるでしょう。

+0

+1プロジェクトオイラー –

+0

リンクの良い混合。確かに、様々なレベルの学生のためにそれらの中に見いだされる有用なものがあります。 –

2

古典的なもの:
プログラムが乱数を選択するようにしましょう。ゲームの目的は、削除によって数値を見つけることです。ユーザーが低い数値を推測すると、プログラムは低すぎると言い、高ければ高すぎると言います。

1

"AI"(これはあらかじめ定義された動き)とテキストグラフィックスを使ったチックタックトーゲームは素敵なプロジェクトです。

1

もう少しお楽しみください。で開始するには良い1:

紙-ROCK-シザーゲーム

ユーザーはP、Rに入る、またはS

プログラムが失われる、または

より高度な機能を結び、あなたが勝つことに応答し:%を獲得し、レコードを追跡、あなたはそれが基本的に同じだ任意のC/Cに似た言語を知っている場合/損失ストリーク

0

に勝つ:

  • {}は開始日です。
  • ==は= =
  • です:=
  • 何も手続きではありません返す関数。
  • 何かを返す関数はまだ関数です。
  • intは整数です。

残りはほぼ同じです。構文は少し異なりますが、それほど違いはありません。

あなたは自分の時間を無駄にしていないことを彼らが教えてくれたパスカルを知る必要があります。

0

二重リンクされたリストで基本操作を行うことも古典的です。

0

Mandelbrot set(コンピューターはますます高速化していますので、すぐに最適化について心配する必要はありません)とGame of Lifeのようなセルオートマトンを実装することから学んだ初期の演習です。

もちろん、これが学校のコースの練習である場合、このような演習は、テストが同様の知識/スキルの領域をテストする可能性が高い場合にのみ役立ちます。