четверг, 28 февраля 2019 г.

Урок 23. Паскаль. Цикл с условием WHILE

Дата проведения занятия 28.02.19, 1.03.19

Оператор WHILE - цикл с условием

Синтаксис (справка по Паскалю, цикл с условием)
Оператор цикла while имеет следующую форму:
while условие do
  
оператор
Условие представляет собой выражение логического типа, а оператор после do называется телом цикла. Перед каждой итерацией цикла условие вычисляется, и если оно истинно, то выполняется тело цикла, в противном случае происходит выход из цикла.
Если вместо одного оператора в теле цикла требуется выполнить несколько операторов, то используется блок команд begin...end.
Если условие всегда оказывается истинным, то может произойти зацикливание:
while 2>1 do
    write(1);

Чтобы прервать зациклившуюся программу, выполняющуюся из интегрированной среды в режиме связи с оболочкой, следует использовать комбинацию клавиш Ctrl-F2 или пункт меню Программа/Завершить
В качестве примера разберем алгоритм сложения нескольких чисел. Числа вводятся с клавиатуры. Алгоритм завершает работу, когда сумма чисел превышает 20.

Работа на ПК в классе:

Вариант 1: Выполнить While7, If11While11, сохранить в своей папке Pascal  на локальном диске 
Вариант 2: Выполнить While8, If10While11, сохранить в своей папке Pascal  на локальном диске
Вариант 3: Выполнить While9,  While11, While20, сохранить в своей папке Pascal  на локальном диске

Домашнее задание

Прислать учителю информатики до 5.03.19 до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Задание находится ЗДЕСЬ

среда, 20 февраля 2019 г.

Урок 22. Паскаль. Оператор ветвления

Дата проведения занятия 21.02.19
Оператор ветвления называется также условным оператором, оператором разветвления

Синтаксис (справка по Паскалю, условный оператор)
Оператор имеет полную форму и краткую форму

if  условие then оператор1 else оператор2 { полный оператор, разветвление}

if  условие then оператор { неполный оператор, обход}
Каждое ключевое слово else, для которого выбор соответствующего ему if неоднозначен, должно считаться относящимся к ближайшему if, для которого нет соответствующего ему else.
В случае конструкции вида
if условие1 then 
    if
 условие2 then оператор1
    else оператор2
else всегда относится к ближайшему предыдущему оператору if, для которого ветка else еще не указана.
Условный оператор работает как обычно: 
1.      Проверяется выражение, которое является условием.
2.      Если условие истинно (true), выполняется оператор1, иначе (false) — оператор2.
Операторы  оператор1 и оператор2 никогда не выполняются вместе — работает только один из них. После выполнения условного оператора управление передается на оператор, который следует за условным.
Вместо одного оператора оператор1 может использоваться блок команд begin...end.

Работа на ПК в классе:

Правила оформления программы
  1. Программу следует  начать с комментария, в котором содержится условие задачи и набор тестовых данных. Тестовые данные — это те данные, на которых надо проверять работу программы
  2. Программу следует отформатировать (кнопка 4 справа)
  3. Программу следует сопровождать комментариями по тексту
  4. Программу следует начать с приветствия
writeln ('Вас приветствует программа Петрова П');
Вариант 1: Выполнить  If3, If4, Integer7, сохранить в своей папке Pascal  на локальном диске  
Вариант 2: Выполнить  If2, If5, Integer8, сохранить в своей папке Pascal  на локальном диске 
Вариант 3: Выполнить  If6, If11, Integer12, сохранить в своей папке Pascal  на локальном диске
Дополнительно для всех вариантов: If29: блок-схема в  редакторе блок-схем afce  + программа

Домашнее задание

Прислать учителю информатики до 26.02.19  до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Тема письма: 9 кл ДЗ к уроку Паскаль-2  <ваша фамилия>  Задание находится ЗДЕСЬ


среда, 13 февраля 2019 г.

Урок 21. Типы данных. Арифметические операции

Дата проведения занятия 14.02.19
Итак, переменная - это величина, которая  имеет ИМЯ, ТИП, ЗНАЧЕНИЕ
1. Имя переменной
В именах МОЖНО использовать:
  • латинские буквы (A - Z), причем строчные и заглавные буквы в Паскале не различаются
  • цифры (0 - 9), имя не может начинаться с цифры
  • знак подчеркивания _
В именах НЕЛЬЗЯ использовать:
  • русские буквы
  • пробелы
  • скобки, знаки +, =, !, ? и др
2. Тип данных (тип переменной)
Основными числовыми типами данных в Паскале являются
  • integer (синонимом является longint) - целый 
  • real (синонимом является double) - вещественный
  • boolean - логический
 3. Переменную нужно объявить в программе для выделения под нее памяти 
var a, b, c: integer; // целые a, b, c
var d, f: real;          // вещественные d, f
var log: boolean;    // логический
4. Присвоить значение переменной - значит записать новое значение в переменную. Знак присвоения :=
a:=6;   d:=a; d:= d + 5;
5. Арифметические операции
Над числовыми данными выполняются следующие операции:
*  (умножение) для integer, real;
/   (деление) для integer, real;
div (получение целого частного) только  для integer;
mod (получение целого остатка деления) только  для integer.
+  (сложение) для integer, real;
-   (вычитание) для integer, real;
Подробнее про арифметические операции читать здесь

Порядок выполнения операций:
  • вычисление выражений в скобках 
  • умножение, деление, div, mod слева направо 
  • сложение и вычитание слева направо

Работа на ПК

Задание 1
1. Напишите в тетради программу Pas9_cl_05_name, которая вводит 2 целых числа x, y, последовательно считает:
  • сумму, выводит результат на экран
  • произведение, выводит результат на экран
  • среднее арифметическое x и y, выводит результат на экран
  • остаток от деления x на 2, выводит результат на экран
  • последнюю цифру y, выводит результат на экран
  • результат сравнения y > 10, выводит результат на экран
2. Наберите текст программы в окне Паскаля
3. Отформатируйте текст, нажав на 4-ую справа кнопку в меню окна PascalABC.NET
4. Сохраните текст программы на локальном компьютере в своей папке, во вложенной папке Pascal_name под именем Pas9_cl_05_name.pas
5. Сделайте компиляцию программы (Ctrl + F9).
6. Если нет синтаксических ошибок, то запустите программу (F9) 3 раза с разными данными
7. Проанализируйте полученный результат

Задание 2
Напишите программу Begin 32 - перевод градусов по С в градусы по F
Задание 3
Напишите программу Integer7: Дано двузначное число. Найти сумму и произведение его цифр.

Домашнее задание

Задание 1
Доделать программу Pas9_cl_05_name из классного Задания 1
Задание 2
  1. Написать в тетради программу вычисления площади прямоугольного треугольника S по двум катетам a, b. Значения a и b - это исходные данные, их требуется ввести, S - результат работы программы, его требуется вывести
  2. Набрать на ПК. Дать имя программе  pas9_hm_03_name (name - фамилия автора программы)
  3. Сохранить файл под именем Pas9_hm_03_name.pas
  4. Запустить программу в среде PascalABC.Net
  5. Сделать сканирование экрана ( кнопка Print Screen)

Задание 3
Написать программу Begin 35







  • Прислать учителю информатики до 19.02.19  до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания.
    Тема письма: 9 кл ДЗ к уроку Паскаль-1 <ваша фамилия>
  • К письму прикрепить по 2 файла для каждой решенной задачи: скриншот экрана с результатом выполнения программы и свой файл типа .pas,
  • Если что-то не получилось, в письме написать причину невыполнения задания
  • среда, 6 февраля 2019 г.

    Урок 20. Моделирование в среде программирования PascalABC.NET

    Даты проведения урока 7.02.19, 8.02.19
    15.02.1934 - день рождения Никлауса Вирта, автора Паскаля

    Часть 1. Прощание с электронными таблицами

    Ура, с электронными таблицами покончено!

    • Сначала наведите порядок на своем облачном диске: все файлы с домашними задачами, зачетная работа и тп должны быть перенесены в папку 9info-<ваша фамилия> !
    • А в вашем блоге сегодня, прямо сейчас, должно появиться сообщение с темой "Теперь я знаю, что такое электронная таблица".  В этом сообщении вы коротко расскажете о своих впечатлениях о работе с  электронными таблицами: что понравилось, что нет. 
    • Запуск блоггера: www.blogger.com
    • Сообщение создать, сохранить, опубликовать
    • Из сообщения должна быть сделана ссылка на электронную таблицу с диаграммой. Это может быть ваша зачетная работа или задача с диаграммами (task6-diagr). Ссылка должна открываться в новой вкладке!

    Часть 2. Повторение

    И теперь  у нас новая, очень интересная  тема - программирование в   среде PascalABC.NET!
    Ну, скажете вы, вот так новость! В прошлом году это (или почти это) уже было!
    Правильно, а новое - это хорошо забытое старое!
    Поэтому быстро вспоминаем и записываем в тетрадь

    Языки программирования - формальные языки, предназначенные для записи алгоритмов, исполнителем которых будет компьютер.
    Паскаль - один из универсальных языков программирования высокого уровня. Он поддерживает процедурный стиль программирования.
    Автор языка Паскаль - Никлаус Вирт (нем. Niklaus Wirth, род. 15 февраля 1934 года) — швейцарский учёный, специалист в области информатики, один из известнейших теоретиков в области разработки языков программирования, профессор компьютерных наук. Подробнее читайте в вашей любимой Википедии


    Алгоритм – это понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату.
    Программа - алгоритм, записанный на языке, понятном компьютеру.
    Исполнителем программы является компьютер.
    Алгоритмы описывают последовательность действий, которые производятся над некоторыми объектами.
    В информатике отдельный информационный объект (число, символ, строка и др) называется величиной. Величины бывают постоянные (константы) и переменные.
    Константой называется величина, значение которой указывается в тексте программы и это значение не меняется во время работы программы.
    Переменной  называется величина, значение которой меняется во время работы программы.
    А вот другое определение переменной. Переменная - это поименованная область оперативной памяти, в которой хранится значение переменной.
    Итак, переменная - это величина, которая имеет имя, тип и значение. Чтобы выделить место для хранения значения переменной, ее надо объявить в программе.





    Часть 3. Этапы решения задачи на компьютере. Этапы моделирования


    1 этап. Постановка задачи. Результат - словесная информационная модель
    2 этап. Формализация. Результат - математическая модель
    3 этап. Алгоритмизация. Результат  - алгоритм ( описание на алгоритмическом языке, в виде блок-схемы и т п)
    4 этап. Программирование. Результат  - Программа
    5 этап. Компьютерный эксперимент. Отладка, тестирование. Результат - уточнение модели. Возможен возврат к этапам 1 - 4.

    Часть 4. Среда PascalABC.NET

    PascalABC.NET — это:

    Язык программирования Pascal нового поколения, сочетающий простоту классического языка Паскаль, ряд современных расширений и огромные возможности платформы .NET.
    Бесплатная, простая и мощная среда разработки.

    Работа на ПК


    1. На локальном компьютере в своей папке создайте вложенную папку Pascal_name, где name - ваша фамилия латинскими буквами
    2. Найдите на рабочем столе ярлык PascalABC.NET, запустите приложение.
    3. Схематично зарисуйте в тетрадь расположение и назначение окон приложения. Вспомните детали интерфейса приложения.


    4. В окне ввода наберите текст программы вычисления куба целого числа
    Сохраните текст программы на локальном компьютере в своей папке, во вложенной папке Pascal_name под именем Pas9_0_cl.pas

    // Пример программы на Паскале. Вычисление куба целого числа r
    program Pas9_0_cl; // заголовок
    var r: integer; //  блок объявления переменных
    var r3: integer; // вспомогательная переменная
    begin
      write ('Введите r: ');
      readln (r);
      r3 := r * r * r;
      writeln (r, ' в степени 3 = ', r3);
    end.
    5. Сделайте компиляцию программы (Ctrl + F9).
    6. Если нет синтаксических ошибок, то запустите программу (F9) 3 раза с разными данными, проанализируйте результат, покажите учителю.
    2. Составьте программы для заданий Begin5, Begin8, Begin11 и выполните их

    Домашнее задание

    1. Проверить, что сообщение  в вашем блоге про электронные таблицы закончено.
    2. Считаем, что паскаль у всех установлен. Если еще нет - срочно установить!  Подробно об установке читать в сообщении Урок 17 от 17.01.19
    3. Сделать компиляцию (Ctrl + F9) примера CompilerError1.pas:
    Меню -- Помощь -- Изучаем PascalABC.NET -- 02_Errors -- CompilerError1.pas.
    Исправить ошибки, выполнить пример (F9)
    4. Аналогично сделать компиляцию и выполнение примеров CompilerError2.pas, CompilerError3.pas
    5. Прислать учителю информатики до 12.02.2019  до 23.00 по школьной эл почте письмо-отчет о выполнении домашнего задания. Тема письма:"9 кл ДЗ к уроку Паскаль1".  В письмо скопировать результат выполнения программ CompilerError1.pas, CompilerError2.pas, CompilerError3.pas.
    Если что-то не получилось, написать причину невыполнения задания.

    PS. Для тех, кто использует он-лайн среду http://rextester.com/l/pascal_online_compiler, привожу тексты заданий из пунктов 3-4:
    // CompilerError1.pas Исправьте ошибку компиляции.
    // Обратите внимание, что курсор позиционируется в конце слова, вызвавшего ошибку

    var i: integer
    begin
      i := 2;
      writeln(i);
    end.

    // CompilerError2.pas Исправьте ошибки компиляции. Опишите переменную r
    begin
      r := 2.5;
      witeln(r);
    end.

    //CompilerError3.pas Исправьте ошибку компиляции. Не всегда надо "верить" тексту ошибки
    var k: real;
    begin
      k := 2,5;
      writeln(r);
    end.