教孩子Pascal的简单问题

时间:2009-05-30 21:40:43

标签: algorithm pascal

我被要求为一个孩子辅导Pascal。尽管在我设法获得教程之前从未见过Pascal,但我现在已经足够教他了。

我写信给你们看看有没有人可以指出一些涉及简单算法的基本练习,例如:排序这个数组,找到平均数等等......

它可以是任何语言,我只需要找一些练习,这样他就可以锻炼身体。

9 个答案:

答案 0 :(得分:6)

以下是来自自由职业者的15 Exercises for Learning a new Programming Language列表,该列表扩展了许多语言中使用的基本技术,可以让他感受到他正在学习的新语言

答案 1 :(得分:5)

我将以(大多数)与语言无关的方式解决这个问题。在教他打印语句和流控制(if语句,for循环等)后,我的建议是从for生成的简单ASCII艺术模式开始循环等。

例如,你会如何打印一半树,就像这样?

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

好的,现在你将如何打印一个完整的树呢?

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

现在尝试画一艘火箭飞船。 ;)

这些对大多数孩子来说都很棒,因为它们是视觉的,结果很诱人,而且练习将赋予循环的重要性并消除冗余。

答案 2 :(得分:3)

对于sorting algorithms,请参阅链接。这是一篇维基百科的文章 - 关于排序算法的一些一般信息,但是在下面你可以单独链接到它们的每种类型,以及伪代码(和某些语言)中的算法。

就“找到平均值”而言,当你有“n”元素时:

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

此外,出于学习目的和思考Project Euler非常好。


另外,请看一下这个问题: Where can you find fun/educational programming challenges?我不想复制粘贴所有内容,但它有一堆链接,其中包含您正在寻找的内容(编程练习)。这个:Algorithm Questions WebsiteWhat are your programming exercises?。你可能会在那里找到你认为他会感兴趣的东西。

答案 3 :(得分:2)

经典之一:
让程序选择一个随机数,游戏的目的是通过消除来找到数字。如果用户猜到一个较低的数字,那么该程序就会说它太低了,如果它的含义太高就会说它太高了。

答案 4 :(得分:1)

带有“AI”的Tic tac toe游戏(即预定义动作)和文本图形是一个不错的项目。

答案 5 :(得分:1)

为它添加一些乐趣。一个很好的开始:

Paper-Rock-Scissor游戏

用户输入P,R或S

程序会回应您的胜利,失败或平局

更高级的功能:跟踪记录,赢得%,赢/连连续

答案 6 :(得分:0)

如果您知道任何类似C / C的语言,它基本上是相同的:

  • {}即将结束;
  • == is =
  • = is:=
  • 一个不返回任何内容的函数就是一个过程。
  • 返回某个东西的函数仍然是一个函数。
  • int是Integer。

其余几乎是一样的。语法略有不同,但差别不大。

你需要知道他们正在使用哪种Pascal,以及他们教给他们什么,以确保你不会浪费你/他/她的时间。

答案 7 :(得分:0)

在双向链表上进行基本操作也是经典之作。

答案 8 :(得分:0)

我从中学到的早期练习包括绘制Mandelbrot set(计算机现在要快得多,所以你不必立即担心优化)和实现像Game of Life这样的细胞自动机。 / p>

当然,如果这是学校课程的练习,那么这样的练习只有在测试可能会测试类似的知识/技能领域时才有用。