вторник, 17 декабря 2013 г.

Урок 13. Вызов подпрограмм с параметрами

Продолжаем работать с подпрограммами модуля CRT

Используя подпрограммы модуля CRT, напишите программы для следующих задач:
Задача 2. Вывести на экран цветное окно, в котором написан цветной текст, вводимый с клавиатуры.
Задача 3. Составить анкету (опросник) для сбора сведений. Собранные ответы вывести в табличном виде.
Темы анкет: 
а) День рождения школы Вопросы - 1) Имя, 2) класс, 3) сколько лет учишься в той школе, 4) отзыв о школе 
б) ДКР  Вопрос - 1) Сколько нулей в двоичной записи десятичного числа 1010?  
в) Любимые предметы Вопросы 1) Имя, 2) Какие предметы нравятся, 3) какие предметы не нравятся
Написанные программы сохранить в папке progr на локальном компьютере и загрузить на облачный диск в свою папку Программирование.

среда, 27 ноября 2013 г.

Урок 11. Переменные в подпрограммах. Параметры

В подпрограммах можно использовать переменные так же, как и в основной программе.
Как передать данные из основной программы в подпрограмму?
Один из способов -  использовать параметры подпрограммы.

Параметры подпрограммы

В заголовке подпрограммы можно описать переменные, которые будут использоваться внутри подпрограммы. Эти переменные называют параметрами.
 В заголовке можно перечислить несколько параметров. В этом случае они разделяются символом ; (точка с запятой).
Для вызова процедуры с параметром требуется указать данные, которые передаются подпрограмме для обработки, в соответствии со списком параметров. 
Примеры процедур с параметром:
Описание:
procedure PrintSquare(i: integer);  
begin writeln(i*i);end;
Тогда при вызове PrintSquare(5*a-b) значение 5*a-b будет вычислено и присвоено переменной i, после чего выполнится тело процедуры.
procedure Mult2(var a: integer);
begin
  a:=a*2;
end;
после вызова Mult(d) значение d увеличится в 2 раза.
Параметры, описываемые в заголовке подпрограммы, называют формальными.
Параметры, указываемые при вызове подпрограммы, называют фактическими. 
Типы переменных, которые используют как фактические параметры, должны совпадать с типами соответствующих формальных параметров.
Практическая работа
Домашнее задание
  1. Доделать классную работу.
  2. Написать программу для Задачи 2, предложенной на Рабочем листе Подпрограммы с параметрами. 
Свои программы загрузить в свою папку Программирование на облачным диске

среда, 20 ноября 2013 г.

Урок 10. Оформление и вызов подпрограмм. Модули подпрограмм

Как на языке Pascal оформляются подпрограммы?
Где располагаются описания подпрограмм?


Модули - библиотеки подпрограмм

В среду программирования PascalABC  включены  библиотеки  процедур для различных применений (смотрите справку среды PascalABC).
Более подробно читайте в документе

Практическая работа
  1. Задание на оформление процедур (по вариантам)
  2. В программе Sum-max-min оформить в виде подпрограммы алгоритм заполнения массива.
  3. Изменить программу Sum-max-min так, чтобы входных чисел было  а) 10, б) - указанное число n
Домашняя работа

  1. Изучить  справку к среде PascalABC - Содержание - Стандартные модули - Модуль CRT
  2. Изучить работу программы CRTColors.pas. Написать программ вывода в окно CRT рисунка

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

разными цветами

вторник, 12 ноября 2013 г.

Урок 9. Подпрограммы - процедуры и функции

С функциями и процедурами мы знакомились еще в Лого. Тогда мы говорили о вспомогательных алгоритмах.
В программировании часто бывает нужно одну и ту же группу команд повторять несколько раз. Если повторение происходит “на месте” — используют цикл (while, или for).
Если код (операторы) нужно повторять в разных местах программы — его оформляют в виде подпрограммы.
Подпрограмма — программа, которую можно вызывать из других программ, указав ее имя.
Подпрограмма реализует вспомогательный алгоритм.
Основная программа — программа, реализующая основной алгоритм решения задачи и содержащая в себе обращения к подпрограммам.
 Правила оформления подпрограммы на языке Pascal смотрите в документе, там же находится описание практической работы.

Практическая работа
Домашнее задание
  1. Уметь рисовать блок-схемы для процедур  max и  min
  2. В программу  Sum-max-min вставить операторы вывода  условия задачи и комментарии и проверить ее работу
  3. Изменить программу Sum-max-min так, чтобы входных чисел было
а) 10, б) указанное число n
и проверить работу программы
  1. Читать справку к среде PascalABC -
Содержание - Справочник по языку - Процедуры и функции - Описание процедур и функций

среда, 23 октября 2013 г.

Урок 8. Массивы. Зачетное задание

Зачет по теме "Обработка массивов"

Ваша работа должна быть представлена в виде проекта. В проект входят следующие работы:
  1. Решение 1-ой задачи*)
  2. Оформление проекта  на бумаге
  3. Взаимопроверка решения и оформления

Сроки выполнения:

проект - 31 октября
взаимопроверка - 14. ноября
Варианты задач для зачета разосланы по электронной почте и указаны в листе оценивания.
Тексты задач для зачета

Правила оформления по задачам

Требования к  проекту описаны в документе.
Правила оформления программы описаны в документе.

Взаимопроверка

В рамках зачета каждый учащийся должен проверить одну работу товарища по определенным критериям.
Правила взаимопроверки: каждый учащийся создает в своей папке Программирование копию документа Критерии-проверки и оценивает в нем свой проект  и проект указанного учителем учащегося.  
Примечание *) Учитывая большой объем работы и небольшое время, отведенное на зачет, сокращаю количество задач до одной - любой из указанных в письме (в листе оценивания) двух. 

вторник, 22 октября 2013 г.

Урок 7. Pascal. Массивы. Зачет

Обобщим тему "Обработка массивов"

Любая обработка массива связана с алгоритмической конструкцией ЦИКЛ. В языке Passcal есть 3 оператора, реализующих цикл:
Цикл с параметром: оператор For - скачайте и смотрите swf-ролик
Цикл с предусловием: оператор While  - скачайте и  смотрите swf-ролик 
Цикл с постусловием: оператор  repeat - можно разобрать самостоятельно
Поработайте со страницами  теста №№ 24 - 32. Справка по циклам находится на странице теста №23.
Нарисуйте в тетради блок-схемы для каждого разобранного в тесте примера.
Блок-схема в тетради - основание для оценки.

Зачет по теме "Обработка массивов"

В зачет входят следующие работы:
  1. Решение 2-х задач
  2. Оформление отчета по задачам в общем документе
  3. Взаимопроверка решения и отчета
Варианты задач для зачета разосланы по электронной почте и указаны в листе оценивания.
Правила оформления по задачам и взаимопроверки будут описаны в следующем посте.

вторник, 1 октября 2013 г.

Урок 5-6. Массивы. Поиск элемента с заданными свойствами


Массив  из символьных элементов

Массив состоит из однородных элементов одинакового типа.  В документе перечислены типы данных,  с которыми можно работать в среде Pascal.
С типами Целые,  Вещественные, Массивы мы уже работали.
Рассмотрим теперь тип Символы. в сравнении с типом Целые:
название типатип диапазон значенийРазмер в байтах
ЦелыеInteger-32768 .. 327672
СимволыCharrПолный набор ASCII символов1

Следующие стандартные функции предназначены для работы этим типом:
Стандартная функция Chr(Х) возвращает символ с числовым  кодом X.
Стандартная функция UpCase ( C ) преобразует символ C  из нижнего регистра в верхний, LowCase ( C ) преобразует символ C  из верхнего регистра в нижний.

Поиск элемента с заданными свойствами

Задачи на обработку массивов, в основном, заключаются в поиске элемента или элементов с заданными свойствами.
Алгоритмы поиска состоят из алгоритмических конструкций цикл (для организации просмотра элементов) и ветвления (для сравнения элемента с образцом).
В алгоритмах поиска есть 2 возможности окончания работы:
  • нашли элемент - поиск удачный (выводится номер элемента и/или сам элемент); 
  • необходимого элемента нет - поиск удачный (номер элемента - 0)
Алгоритмов, которые ведут к правильному результату, может быть много. В программировании принято выбирать лучший, но какой алгоритм считается более эффективным?
Признаки эффективности:
  • Сколько вычислительных ресурсов они требуют (время работы, память). 
  • Сложность  — количество элементарных действий в вычислительном процессе алгоритма
Обычно эффективность оценивается  Сложностью.


вторник, 17 сентября 2013 г.

Уроки 3 и 4. Структура данных - массив. Обработка массива

Итоги предыдущего урока

Классное задание выполнили практически все, но с замечаниями. Результаты смотрите в  листе оценивания. Однако, домашнее задание не выполнил никто :( Вы должны повторить, как оформляется цикл в программе. Скачайте видео о цикле с параметром и посмотрите его. Выполните задание Решение задач. Для повторения основных понятий языка Pascal скачайте тест и пройдите его.
Жду до конца недели. 

Уроки 3 и 4. Структура данных - массив. Обработка массива. Решение задач

Типы данных   Integer, Real, Char  называют простыми данными.
Это значит, что одному имени переменной соответствует одно значение, занимающее одну область памяти (ячейку) определенной длины.
Для хранения множества однородных данных применяют структурированные типы данных.
Структура представляет собой последовательность пронумерованных ячеек одинаковой длины, которая имеет одно имя. Каждая ячейка структуры имеет имя такого вида: <имя> [индекс].
Например:
mass [1] – 1-я ячейка в последовательности mass
Массив – ограниченная совокупность однородных величин.
Элементы массива (значения) располагаются в памяти непрерывным блоком и имеют одно и то же имя. Различают элементы по порядковому номеру (индексу).

Пример описания массива в программе :

 var mass : array [1..100] of real;

Более подробно о переменных разных типов и о массиве читайте в документе.

 (лабораторную работу и домашнее задание в этом документе не выполняйте)

Практические задания и домашнее задание на 26.09
Ниже даны ссылки на Рабочие листы с  заданиями и домашними заданиями. Каждый ученик получил электронное письмо, в котором указано, какое именно задание нужно выполнять.
Разбор задач
Решение задач
Задачи посложнее

среда, 11 сентября 2013 г.

Урок 2. Структура программы. Описание данных

Итоги
Подведем итоги работы в классе 5 сентября и дома.
Все вошли в среду PascalABC и написали одну или две простые программы, убедились, что они работают. Это хорошо.
Люда выполнила и расчетную программу и попыталась написать еще одну дома. Молодец!
Остальные, вероятно, не смогли попасть на этот блог :(

Если вы посмотрели видео Митч Резник о детях и программировании, то может быть поняли, почему мы занимаемся программированием.

 Работа на уроке на 12 сентября
Правила оформления программ (выполнять обязательно)!
  • В имени файла *.pas должен присутствовать идентификатор программы, например Pas1_1_cl_name.pas
  • В имени файла *.pas должна присутствовать фамилия ученика. Например, Pas1_1_cl_Petrov.pas
  • Программу следует начать с комментария, в котором содержится условие задачи и набор тестовых данных. Тестовые данные — это те данные, на которых надо проверять работу программы.
  • Программу следует сопровождать комментариями по тексту
  • Программу следует начать с приветствия: writeln('Вас приветствует программа Петрова П')
Структура программы: 
 Заголовок программы;
 Описание переменных, необходимых для работы программы;
   begin
      алгоритм обработки данных
   end.
Проверь себя

Описание переменных
var 
список1 переменных : тип1;
список2 переменных : тип2;
...
Задание Эссе
Задание на 12 сентября и домашнее задание на 19 сентября
Задание Решение задач

среда, 4 сентября 2013 г.

Урок 1. Попытаемся работать с блогом

Зачем изучать программирование? 
Обсудим, что дает учащимся изучение программирования?
В конце прошлого года мы занимались с алгоритмами для обработки величин.
Для описания алгоритма применяли язык блок-схем.
Исполнителем наших программ был компьютер. Для записи алгоритма на языке, понятном компьютеру, применяли язык Pascal.

Для работы откройте документ Урок 1.