воскресенье, 28 февраля 2021 г.

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

 Дата проведения занятия 1.03.21

Итак, переменная - это величина, которая  имеет ИМЯ, ТИП, ЗНАЧЕНИЕ
Теорию законспектировать дома

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: Дано двузначное число. Найти сумму и произведение его цифр.

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

Задание 0 - законспектировать теорию
Задание 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 или  Integer7 (Дано двузначное число. Найти сумму и произведение его цифр.)
  • Прислать учителю информатики до 13.03.21 до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания.
    Тема письма: 9 кл ДЗ к уроку Паскаль-2 <ваша фамилия>
  • К письму прикрепить по 2 файла для каждой решенной задачи: скриншот экрана с результатом выполнения программы и свой файл типа .pas,
  • Если что-то не получилось, в письме написать причину невыполнения задания
  • пятница, 19 февраля 2021 г.

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

     Даты проведения урока 20.02.21

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


      ЧАСТЬ 1. ПОВТОРЕНИЕ - ЭТО ЧАСТЬ ВАШЕГО ДОМАШНЕГО ЗАДАНИЯ

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

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


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





      ЧАСТЬ 2. ЭТАПЫ РЕШЕНИЯ ЗАДАЧИ НА КОМПЬЮТЕРЕ. ЭТАПЫ МОДЕЛИРОВАНИЯ


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

      ЧАСТЬ 3. СРЕДА 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 раза с разными данными, проанализируйте результат, покажите учителю.
      7. Составьте программы для заданий Begin5, Begin8, Begin10 и выполните их

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

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

      PS. Для тех, кто использует он-лайн среду https://www.ideone.com/  или   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.

      Установка PascalABC.NET

       

         В 3-ей четверти - программируем! 

      Пожалуйста,  установите  на вашем ПК среду программирования PascalABC.NET 

      Уважаемые родители! В  3 четверти ваши дети будут заниматься программированием! Для успешной учебы  им ОБЯЗАТЕЛЬНО нужно работать в среде PascalABC.NET  Пожалуйста, помогите им. Если что-то непонятно, пишите нам по электронной почте. Заранее спасибо!
      Итак, начинаем
      1. Если  PascalABC.NET уже установлен, переходите к пункту 4.
          Если нельзя установить  PascalABC.NET (например, у вас MAC OS), переходите к пункту 5
          Если не установлен, то зайдите на сайт PascalABC.NET
      2. Слева в меню выберите 2-ю строку - СКАЧАТЬ
      3. Если у вас первая установка - выбираете первый вариант скачивания, если обновление, то второй вариант
      4. После установки убедитесь, что система работоспособна.
      а) Для этого запустите систему (через меню Пуск или ярлык на рабочем столе)
      б) В открывшемся окне найдите строку меню (Файл  Правка  Вид ...  Помощь)
      в) Последовательно откройте пункты  Помощь, Изучаем PascalABC.NET, 01_First
      г)  В открывшемся окне выберите файл Calculations1.pas, откройте его
      д) Вы увидите текст программы-примера. Смело запускайте эту программу через меню:
      Программа -- Выполнить
      е) Программа должна выполниться и вывести результат вычислений
      ж) Копируете этот результат и вставляете в текст письма для учителя информатики. Тема письма: "Установка PascalABC.NET " Это письмо - ваш отчет об успешной установке PascalABC.NET на вашем ПК
      з) Отправляете письмо. Ура! Переходите к пункту 6
      5. Запустите он-лайн среду https://www.ideone.com/  или   http://rextester.com/l/pascal_online_compiler , запустите программу-приветствие, сделайте скриншот экрана, прикрепите его или вставьте в текст письма.  Тема письма: "Онлайн-среда для Паскаля " Это письмо - ваш отчет о проделанной работе
      6. Пришлите учителю информатики ваше письмо-отчет

       Желаем успеха и надеемся, что у вас все получится!

      воскресенье, 7 февраля 2021 г.

      Урок 17. Построение запросов без параметров

       Дата проведения занятия 8.02.21

      Пользователю любой информационной системы в первую очередь важно иметь возможность выбрать из БД ту информацию, которая ему нужна в данный момент. Для этого используются запросы.
      Запрос - это объект БД, которым мы пока не пользовались.

      Запрос - это обращение к СУБД для отбора записей или других операций с данными.

      Рассмотрим построение запросов на примере БД Школьная столовая

      Чтобы построить запрос, перейдем на вкладку Запросы, выберем в области Задачи вариант Создать запрос в режиме Дизайна. Перед нами откроется окно Конструктора запросов. Оно выглядит так, как показано на этом рисунке.




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


      На рисунке показан бланк, заполненный для формирования такого запроса:
      "Вывести перечень  блюд (Название, Примечание, Цена), которые дешевле 90 руб. Сортировка по полю Цена, по возрастанию "

      После того, как бланк запроса заполнен, следует сохранить запрос и затем запустить на выполнение. 
      Вот как выглядит результат работы этого запроса



      Прежде, чем начать составлять запросы, изучите алгоритм формирования запросов



      Домашняя работа.  Запросы к БД "Школьная столовая"
      Придумать и записать в тетради запросы к БД Школьная столовая. Образцы смотри в Практической работе.
      Запросы над таблицей Блюда - 3 
      Запросы над таблицей Заказы - 3
      Запросы над тремя таблицами Блюда, Заказы, Заказано - 4

      воскресенье, 17 января 2021 г.

      Урок 16. Многотабличные БД. Практическая работа

       Дата проведения занятия 18.01.21


      В качестве примера рассмотрим базу данных "Школьная столовая". В этой БД требуется хранить информацию о двух классах объектов: о блюдах, которые продаются в столовой, и заказах, которые поступают от классных руководителей на обеды (завтраки) для классов или заказов отдельных школьников. Рассмотрим схему связей этой БД


      БД состоит из трех таблиц: Блюда, Заказы, Заказано.
      В этой схеме таблицы БД связаны связями "один-ко-многим"
      Связь  "один-ко-многим" показывает, что одной записи в главной таблице соответствует много записей в подчиненной таблице.
      В паре таблиц Блюда - Заказано таблица Блюда - главная, Заказано - подчиненная.
      В паре таблиц Заказы - Заказано таблица Заказы - главная, Заказано - подчиненная.

      Практическая работа.  Разработка многотабличной БД "Школьная столовая".
      Практическая работа.   Часть 1


      Домашняя работа - продолжение.  Подготовка к заполнению БД "Школьная столовая"
      Придумать и записать в тетради данные для заполнения таблиц
           Для таблицы Блюда: название и цену не менее 10-ти блюд; в поле Примечание - можно указать "Новинка", "Фирменное блюдо" и т п
           Для таблицы Заказы: дата (предыдущий и текущий месяц), номер заказа не менее 10-ти заказов; в поле Примечание - можно указать фамилию заказчика и т п
           Для таблицы Заказано: написать состав не менее 20-ти заказов. Один заказ может состоять из одного блюда (Например, пицца) или нескольких блюд (Например, салат и булочка) и т п
      Понятно, что заказывать можно только то, что есть в меню, то есть в таблице Блюда

      Урок 15. Многотабличные БД

       Дата проведения занятия 11.01.21

      Почему бы не собрать все данные в одной таблице?
      У однотабличной модели есть недостатки:

      • дублирование данных
      • при изменении каких-то данных может потребоваться изменение нескольких записей
      • нет защиты от опечаток
      Однотабличная БД - это аналог картотеки, в которой все карточки имеют одинаковую структуру. А на практике в одной БД нужно хранить данные, относящиеся к объектам разных типов, которые связаны между собой. 
       
      Удобнее классифицировать сведения об объектах и создать несколько таблиц - для каждого класса. При создании многотабличной БД между таблицами устанавливаются связи. Связь устанавливается только между парой таблиц. Одна из таблиц такой пары называется главной таблицей, другая - подчиненной таблицей.
      При создании связи ключевое поле главной таблицы связывается с полем подчиненной таблицы, которое называется внешним ключом. 
      Посмотрим презентацию (слайды 1-10), в которой более подробно рассмотрены  многотабличные БД.

      В качестве примера рассмотрим базу данных "Школьная столовая". В этой БД требуется хранить информацию о двух классах объектов: о блюдах, которые продаются в столовой, и заказах, которые поступают от классных руководителей на обеды (завтраки) для классов или заказов отдельных школьников. Рассмотрим схему связей этой БД


      Каждое блюдо может быть включено в несколько заказов.
      Каждый заказ может состоять из одного или нескольких блюд.
      Чтобы упростить связи между таблицами Блюда и Заказы, вводится дополнительная таблица Заказано.
      Теперь БД состоит из трех таблиц.
      В этой схеме таблицы БД связаны связями "один-ко-многим"
      Связь  "один-ко-многим" показывает, что одной записи в главной таблице соответствует много записей в подчиненной таблице.
      В паре таблиц Блюда - Заказано таблица Блюда - главная, Заказано - подчиненная.
      В паре таблиц Заказы - Заказано таблица Заказы - главная, Заказано - подчиненная.

      Домашняя работа.  Разработка состава таблиц БД "Школьная столовая"
      Придумать и записать в тетради данные для заполнения таблиц
           Для таблицы Блюда: название и цену 5-ти блюд; в поле Примечание - можно указать "Новинка", "Фирменное блюдо" и т п
           Для таблицы Заказы: дата (предыдущий и текущий месяц), номер заказа для 5-ти заказов; в поле Примечание - можно указать фамилию заказчика и т п
           Для таблицы Заказано: написать состав 5-ти заказов. Один заказ может состоять из одного блюда (Например, пицца) или нескольких блюд (Например, салат и булочка) и т п
      Понятно, что заказывать можно только то, что есть в меню, то есть в таблице Блюда

      воскресенье, 13 декабря 2020 г.

      Урок 13. БД как модель предметной области. Создание однотабличной БД

       Дата проведения занятия 14.12.20

      Информационные системы и БД

      В настоящее время для хранения, поиска, выдачи информации по запросам пользователя используются различные информационные системы.
      Примеры информационных систем:

      • Справочная адресная служба большого города
      • Транспортная информационная система, обеспечивающая также и покупку железнодорожных и авиабилетов
          
      • Информационно-поисковая система правового характера

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

      В середине ХХ века  были предложены следующие принципы  проектирования табличных БД:
        ,
      • Каждая таблица описывает один класс объектов;
      • Порядок расположения полей в таблице не имеет значения;
      • Все значения одного поля относятся к одному типу данных;
      • В таблице нет двух одинаковых записей;
      • Порядок расположения  записей в таблице не имеет значения.

      Поэтому можно дать следующее определение. 
      Реляционная БД - это БД, которую можно представить в виде набора таблиц с установленными между ними связями.

      Система управления БД (СУБД) - это программное обеспечение для создания баз данных, хранения и поиска в них необходимой информации. 

      Для проектирования БД средней сложности наиболее часто используются Microsoft Access, OpenOffice.org Base, LibreOffice Base.

      Основными объектами СУБД являются:
      • Таблицы - это основной тип объектов. В таблицах хранятся данные.  
      • Формы - это вспомогательные объекты. Они обеспечивают удобную работу с данными в таблице.  
      • Запросы - это команды и результаты обращения пользователя к СУБД для поиска данных, сортировки, добавления, и удаления и обновления записей.
      • Отчеты - это документы, сформированные на основе таблиц и запросов и предназначенные для вывода на печать.

      Реляционные БД

       Реляционная БД может состоять из одной или нескольких взаимосвязанных таблиц.
      Строка таблицы называется записью, столбец - полем.
      Запись содержит информацию об одном объекте (Например, об одной книге в библиотеке)
      Поле содержит информацию о значениях только одной характеристики объекта (Например, фамилия автора)
      Поле БД имеет имя, тип, длину.
      Тип поля определяется типом данных, которые в нем хранятся.
      Поле или совокупность полей, значения которых в разных записях не повторяется (являются уникальными), называют ключом таблицы БД.

      Типы данных БД

      Основные типы полей:
      • числовой - для полей, содержащих числовую информацию. Длина поля - стандартная
      • текстовый - для полей, содержащих произвольные последовательности символов. Длина поля - это максимальное количество символов, которые можно записать в это поле
      • логический - для полей, данные которых могут принимать только 2 значения: ДА/НЕТ или 1/0. Длина поля - стандартная
      • дата - для полей, содержащих календарные даты. Длина поля - стандартная
        Прочитайте и выполните предложенное задание на разработку БД
        Практическая работа. Задание на разработку однотабличной БД

        Домашнее задание - в стиле перевернутого урока

        1. Повторить основные понятия БД (читай теорию выше)
        2. Сделать конспект