Задачник по программированию( для школы ) | страница 5



Попробую подробнее...

Вот такая программа:

>uses GraphABC;

>const

> Max = 600;

>var

> Mas : array[0..max] of integer;

> n : integer;

>begin

>for var i:=1 to 200000 do

>begin

> n := Random(Max+1);

> inc(Mas[n]);

> SetPixel(25+n,Window.Height - Mas[n],clRandom);

>end;

>end.

Нарисует график:

Как видите, "машинная" случайность имеет "плоское" распределение. Ваша задача - сделать программу выдающую "нормальное" распределение случайности, это может выглядеть, примерно так:

Как сказал бы Кролик Винни-Пуху "Случайности могут быть разные".

Такие не простые, "простые" числа

1. Выяснить: для чего нужны простые числа, методы их определения. (Уверяю вас, они очень и очень ценны...)

(15)

2. Написать программу для нахождения простых чисел

Счастливый билет

Объясните учащимся, что в древности в автобусах покупали билеты, и на каждом билете был шестизначный номер. И в течении скучной поездки школьники искали счастливые билеты, т. е. сумма первых трех чисел в номере должна быть равна сумме оставшихся (некоторые чудаки съедали их перед экзаменом :).

(16)

Задача: подсчитать число счастливых билетов, в дальнейшем можно выяснить вероятность приобретения «счастья».

Как-то эту задачу на уроке решали двое учеников, и результат получился существенно разный, но был конец урока, и проверять алгоритмы было лень.. А ученики... сейчас, оба, и он и она, профессиональные программисты, и надеюсь, счастливы в браке.


Лирическое отступление

Большинство задач в данном сборнике рассчитано на работу в текстовом режиме. У «знатоков» закономерно возникнет вопрос:

- Зачем нам учиться программировать в устаревшем текстовом режиме.

- Ну, во-первых, мы движемся от простого… далее… сейчас наверно кто-то пишет ПО для утюга или фена, а скоро надо будет писать для зубочистки, это конечно хорошо, программистам есть работа, но учтите, аппаратные возможности таких устройств очень ограничены. Т.е. винды в кастрюлю никто засовывать не станет, и программировать на низком уровне надо будет еще много лет. Освойтесь с основами программирования в Паскале, а дальше Ассемлбер, Java, Си - да мало ли, что еще возникнет.

А, чтобы напомнить возможности текстового режима, смотрите:


Игры с графикой.

Один «информатик» способен поставить столько задач, что не справятся 10 мудрецов из 10а.

The Adventure of the Dancing Men

(17)

В начале, все просто,… а потом ООП.

Рисуем человечка.

Человечек должен иметь двигающиеся конечности. Для начала перемещаем конечности мышкой:

Перемещение мышки в направлении r - конечность сгибается в локте (колене), перемещение в направлении φ – вращение конечности вокруг точки О.