Библиотека knigago >> Детская литература >> Детская образовательная литература >> Задачник по программированию( для школы )

W Cat - Задачник по программированию( для школы )

Задачник по программированию( для школы )
Книга - Задачник по программированию( для школы ).  W Cat  - прочитать полностью в библиотеке КнигаГо
Название:
Задачник по программированию( для школы )
W Cat

Жанр:

Детская образовательная литература, Самиздат, сетевая литература, Литература ХXI века (эпоха Глобализации экономики), Программирование: прочее

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

-

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Задачник по программированию( для школы )"

Задачи для школьника, должны быть веселы!
На наших занятиях, запрещена фраза "мы это не проходили" - если это надо для решения задачи - "пройди", источников море, учитель подскажет.
Не получается? Возможно, ты выбрал задачу не по силам, ничего - это тоже опыт, отложи, попробуй следующую. Мало решить задачу, придумай свою...
Ученик должен уметь: (поставить задачу + решить задачу + учиться) * n ...


Читаем онлайн "Задачник по программированию( для школы )". Главная страница.

Задачник по программированию для школы

Листая старую тетрадь...

Да, нравится мне эта песня, но сейчас, не об этом...

Итак, просматривая свои архивы, нашел свой задачник по программированию — ну, почему бы ни поделиться.

На момент написания, для решения задач планировалось использовать Turbo Pascal, время прошло, и эта программа значительно устарела, предлагаю заменить ее на PascalABC.NET – отличная штука, специально создана для обучения программированию, сочетает возможности старого Turbo Pascal и Delphi и много других вкусностей.



Вступление. (которое, можно пропустить)


Задачи здесь, разной сложности, ну, например, такая шутка:

«Все, внимание!!! Всякий кто решит данную задачу за 45 минут, получит годовую 5 не только по информатике, но и по математике. Записываем:

Доказать, что для любых не нулевых значений переменных a, b, c : integer не существует решения следующего уравнения, при n > 2.

an + bn = cn

- Что ты хочешь сказать, Вова?

… ... ...

- Хорошо, Вова, - молодец! За знание классики + 5.

- А почему не годовая?

- Но, ты же не привел доказательства...»



Часто у «продвинутых» учеников возникает вопрос:

- А чё мы должны учить этот древний, никому не нужный Pascal?

Ну, давайте, сравним простейший код:


C++

Pascal


#include <iostream>

#include <cstdlib>

using namespace std;

int main()

{

cout << <Hello, world!< << endl;

system(pause);

return 0;

}


begin

Writeln('Hello, World!');

end.



И дело не в том, что текст на C длиннее.

Учащийся должен понимать, что и как, делает программа.
Если объяснение программы на Паскале займет 2 минуты и можно идти дальше, то в случае С, вы убьете 45 минут на объяснение совершенно не нужной начинающему информации, и совершенно запутаете школьников, т.е - если вам надобно вызвать у учащихся отвращение к программированию то начинайте учить их с С++ или C#.

А после Паскаля, любой си образный язык пойдет «влегкую».

Объясните любопытному, что все процедурные языки, близнецы братья (но Паскаль проще!!!). Для профессионального программиста не составляет большой проблемы перейти с PHP на Java.



Но, как-то, расскажите, что есть не только процедурные языки. Например, о языке Prolog, или такие вкусности как Форт (англ. Forth) или Эйфория.



Но вернемся к нашим баранам (я не имел ввиду учащихся), как уже сказано, задачи разного уровня. Я сознательно не размечаю сложность, во-первых, это очень субъективно, во-вторых ученик должен учиться соизмерять свои возможности, и не отчаиваться если сейчас задача не по силам. Многие задачи не уложатся в один урок, а некоторые, могут развиваться от "простого к сложному".

Например:

(1)

Двоичный тренажер
а) Программа задумывает случайное число от 0 до 15 и выдает его в двоичном виде, пользователь должен ввести десятичный(или шестнадцатеричный) аналог.



Полезно решить эту задачу, сюда входят несколько подзадач:

' преобразование числа в двоичный вид

'' контроль введенных пользователем символов

''' разработка интерфейса программы (внешний вид, реакции на ошибки, поощрительные сообщения и т.п.)

Кроме того, такая программка полезна для игрового запоминания двоично-шестнадцатеричных чисел.



б) Программа должна анализировать время ожидания ответа пользователя, и выдавать оценку за выполнение, допустим, 20 заданий, учитывая число ошибок и суммарное время затраченного на ответы.



в) «Случайное число» человек и машина понимают по-разному, например:

2 2 2 2 2 2 2

с точки зрения машины это ряд равновероятных случайных чисел. Давайте составлять упрощенную, но с точки зрения человека «случайную» последовательность. Во-первых, отбросим варианты 0 и 1 как слишком простые (пользователя они будут только раздражать), затем, числа должны быть случайны, но не должны повторяться, до тех пор, пока не исчерпаются все цифры из заданного диапазона, а затем все начнется сначала.

Давайте, я расскажу, как решил эту задачу, во времена оны.

Задаем байтовый массив[размером в заданных диапазон]

начинается цикл 1.

заполняем массив нулями;



цикл 2. задумывание числа

программа задумывает число из заданного диапазона

если в соответствующей ячейке массива 0, то записываем туда 1 и завершаем цикл 2 задумывания числа, в ином случае повторяем цикл 2.



Если написать только вышесказанное, то получим бесконечный цикл!!! (что очень полезно для начинающего программиста) Посему введем

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.