вторник, 25 февраля 2020 г.

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

В информатике отдельный информационный объект (число, символ, строка и др) называется величиной. Величины бывают постоянные (константы) и переменные.


Константой называется величина, значение которой указывается в тексте программы и это значение не меняется во время работы программы.


Переменной  называется величина, значение которой меняется во время работы программы.


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


Итак, переменная - это величина, которая имеет имятип и значение. Чтобы выделить место для хранения значения переменной, ее надо объявить в программе.
Смотрите презентацию Программирование на языке Паскаль, глава Введение

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

4. Присвоить значение переменной - значит записать новое значение в переменную. Знак присвоения :=
a:=6;   d:=a;  d:=d+a

5. Арифметические операции
Над числовыми данными выполняются следующие операции:
*  (умножение) для integer, real;
/   (деление) для integer, real;
div (получение целого частного) только  для integer;
mod (получение целого остатка деления) только  для integer.
+  (сложение) для integer, real;
-   (вычитание) для integer, real;
Подробнее про арифметические операции читать здесь

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

Операции с целыми числами Div и Mod

1. Представьте, что необходимо решить такую задачу:

Дано расстояние L в сантиметрах. Найти M количество полных метров в нем (1 метр = 100 см).

Попробуем использовать операцию деления нацело
M:= L div 100;
Например, 
M := 527 div 100;   // 5
M := 1274 div 100; // 12

2. Дано двузначное число A. Выделить младшую ed и старшую des цифры числа. 
Для выделения младшей цифры используем операцию mod, для выделения старшей - операцию div
ed := A mod 10; // единицы
des := A div 10; // десятки



Работа на ПК


I задание

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

II задание

1. Напишите программу Pas8_cl_06_name, которая вводит двузначное число A, выделяет из него младшую ed и старшую des цифры и выводит результат на экран.
Например, при вводе числа 75 программа выведет:
"В числе 75 десятков: 7, единиц : 5"
2. Сохраните программу под именем Pas8_cl_06_name.pas
3. Сделайте компиляцию. Если нет ошибок -  запустите на выполнение 3 раза с разными данными
4. Покажите учителю

III задание


Записать и отладить  2 программы:

Integer2Дана масса M в килограммах. Используя операцию деления нацело, найти количество полных тонн в ней (1 тонна = 1000 кг).
Integer7. Дано двузначное число. Найти сумму и произведение его цифр


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

  1. Написать в тетради программу вычисления площади прямоугольного треугольника S по двум катетам a, b. Значения a и b - это исходные данные, их требуется ввести, S - результат работы программы, его требуется вывести
  2. Набрать на ПК. Дать имя программе  pas8_hm_03_name (name - фамилия автора программы)
  3. Сохранить файл под именем pas8_hm_03_name.pas
  4. Запустить программу в среде PascalABC.Net
  5. Сделать сканирование экрана ( кнопка Print Screen)
  6. Прислать учителю информатики до 17.02.19 (воскресенье) до 22.00 по школьной эл почте письмо-отчет о выполнении домашнего задания.
    Тема письма: 8 кл ДЗ к уроку 21 Паскаль <ваша фамилия>
  7. К письму прикрепить 2 файла: скриншот экрана с результатом выполнения программы и свой файл типа .pas,
  8. Если что-то не получилось, в письме написать причину невыполнения задания
  9. В тетради решить примеры:
  10. 15 div 5=
    15 mod 5=
    421 mod 10=
    421 div 10=
    357 mod 100=
    357 div 100=
    357 div 10 mod 10=

среда, 19 февраля 2020 г.

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

Дата проведения занятия 19.02.2020
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. Изучите интерфейс приложения.
5. Наберите программу в поле редактирования, указав в приветствии свои имя и фамилию 

program pas8_cl_01; 
begin
  writeln ('Вас приветствует программа Васи Иванова');
  write ('строка 1 и про');    
  writeln ('должение строки 1');
  writeln ('строка 2');
end.
6. Сохраните текст программы на локальном компьютере в своей папке, во вложенной папке Pascal_name под именем Pas8_cl_01.pas
Учтите, что в имени программы могут использоваться только латинские буквы, цифры и знак подчеркивания (НЕ тире)
7. Сделайте компиляцию программы (Ctrl + F9).
8. Если нет синтаксических ошибок, то запустите программу (F9)
9. Проанализируйте полученный результат
10. Перепишите в тетрадь текст программы


Самостоятельная работа на ПК





        CWA1Begin6


 Написать программу, которая в поле вывода "рисует " домик из звездочек.
 Пример:
         *
     * * * *
  *  *  *  *  *
  *             *
  *             *
  *             *
  *  *  *  *  *


На дополнительную оценку:

CWA1Begin7

Вывести таблицу умножения в виде представленном на картинке:



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

Для выполнения домашнего задания:
  1. Написать и запустить программу в среде PascalABC.Net
  2. Сделать сканирование экрана ( кнопка Print Screen)
  3. Прислать учителю информатики по школьной эл почте письмо-отчет о выполнении домашнего задания.
    Тема письма: 8 кл ДЗ к уроку 3 Паскаль <ваша фамилия>
  4. К письму прикрепить скриншот экрана с результатом выполнения программы и свой файл типа .pas,
  5. Если что-то не получилось, в письме написать причину невыполнения задания.

I задача
1. Составьте программу, которая нарисует прямоугольный равнобедренный треугольник с катетами по 4 звездочки

2. Дать имя программе - Pas8_hm_02 (name - фамилия автора программы
3. Сохраните файл под именем Pas8_hm_01.pas

II задача
  1. Написать в тетради программу, которая выводит в поле вывода  звездочками * * * первую букву вашего имени или фамилии. Например: Ольга
     ***
    *    *
    *    *
     ***
  2. Дать имя программе - Pas8_hm_02 (name - фамилия автора программы)
  3. Сохранить файл под именем Pas8_hm_02.pas

среда, 12 февраля 2020 г.

Алгоритм и исполнитель

Дата проведения занятия 13.02.20
Алгоритм и Исполнитель алгоритма — это базовые понятия теории алгоритмов.
Алгоритм – это понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату.

Исполнитель алгоритма — это некоторый абстрактный или реальный (технический, биологический или биотехнический) объект, способный выполнить действия, предписываемые алгоритмом.


Различают формальных и неформальных исполнителей. Формальный исполнитель одну и ту же команду всегда выполняет одинаково. Неформальный исполнитель одну и ту же команду может выполнить по-разному.

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

Система команд исполнителя (СКИ) - это совокупность всех команд, которые может выполнить конкретный исполнитель.

Каждый алгоритм обладает следующими свойствами:
  1. Конечность (результативность) алгоритма означает, что за конечное число шагов должен быть получен результат;
  2. Дискретность алгоритма означает, что алгоритм должен быть разбит на последовательность выполняемых шагов;
  3. Понятность алгоритма означает, что алгоритм должен содержать только те команды, которые входят в его СКИ;
  4. Точность алгоритма означает, что каждая команда должна пониматься однозначно;
  5. Массовость алгоритма означает, что однажды составленный алгоритм должен подходить для решения подобных задач с разными исходными данными.
  6. Детерминированность (определенность). Алгоритм обладает свойством детерминированности, если для одних и тех же наборов исходных данных он будет выдавать один и тот же результат, т.е. результат однозначно определяется исходными данными.

Способы записи алгоритмов

Марков А.А. (1903 - 1979) установил, что алгоритмы должны содержать предписания двух видов:
1) функциональные операторы - предписания, направленные на непосредственное преобразование информации;

2) логические операторы - предписания, определяющие дальнейшее направление действий. 
Именно эти операторы положены в основу большинства способов записи алгоритмов   


Работа на уроке

Работа с уроком цифры:
Пройдите по ссылке и выполните задание.

Работа с блок-схемами:
  1. Нарисуйте в тетради блок-схему вычисления среднего арифметического двух чисел по формуле
    c = ( a + b)/ 2 . Значения a и b - это исходные данные, их требуется ввести,
    с - результат работы алгоритма, его требуется вывести
  2. Запустите  редактор блок-схем afce (ярлык на рабочем столе)
  3. Создайте в редакторе блок-схем afce блок-схему вычисления среднего арифметического двух чисел.
  4. Экспортируйте блок-схему в рисунок aver2.png, рисунок сохраните в своей локальной папке
  5. Создайте в редакторе блок-схем afce блок-схему вычисления площади прямоугольника S по двум сторонам a, b. Значения a и b - это исходные данные, их требуется ввести,
    S - результат работы алгоритма, его требуется вывести
  6. Экспортируйте блок-схему в рисунок Spp.png, рисунок сохраните в своей локальной папке
Домашнее задание на 19.02.20
  1. Посмотрите презентацию Способы записи алгоритмов. 
  2. Начертите в тетради блок-схему вычисления площади прямоугольного треугольника S по двум катетам a, b. Значения a и b - это исходные данные, их требуется ввести,
    S - результат работы алгоритма, его требуется вывести
  3. Начертите в тетради блок-схему решения уравнения ax + b = 0. Значения a и b - это исходные данные, их требуется ввести, x - результат работы алгоритма, его требуется вывести


среда, 5 февраля 2020 г.

Решение задач

Практическое задание:

1. Откройте файл и создайте копию этого файла. Поместите копию к себе в папку 8info и назовите "Очередь в сберкассе  - фамилия".
2. Прочитайте текст задачи и попробуйте самостоятельно заполнить исходные данные и формулы.
3. Покажите построенную модель учителю.
4. Ответьте на вопросы из задачника (стр. 72/74 IV этап Анализ результатов моделирования).
5*. Выполните задание учителя.

Олимпиада-2020