Разъяснения по наиболее часто встречающимся ошибкам
ДЕПАРТАМЕНТ ОБРАЗОВАНИЯ ГОРОДА МОСКВЫ
ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ПРОФЕССИОНАЛЬНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
«кОЛЛЕДЖ АВТОМАТИЗАЦИИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ №20»
УО «МОССОВЕТ»
Работа в среде PascalABC . NET
Методические указания к выполнению лабораторных работ по дисциплине «Информатика» для обучающихся 1–го курса по направлениям: 54.02.08 Техника и искусство фотографии, 54.01.20 «Графический дизайнер»
Составитель: Нурмухамедова А.Р.
Москва, 2019
ЛАБОРАТОРНО-ПРАКТИЧЕСКОЕ ЗАНЯТИЕ №15
Составление простейших программ на языке Паскаль. Линейные алгоритмы
Цель задания: Получить представление о структуре программы на языке Паскаль, научиться использовать стандартные функции языка Паскаль для записи математических выражений.
ТЕОРИЯ
Понятие о типах данных
Любые данные в программе на языке Паскаль перед своим первым использованием обязательно должны быть объявлены. Объявление состоит в присваивании данным имен и указании их особой характеристики – типа данных.
Тип данных указывает на то, как данные должны быть организованы для хранения в памяти компьютера, а также определяет правила их обработки. Паскаль относится к языкам со строгой типизацией. Это означает, что тип данным присваивается обязательно и не может быть впоследствии изменен.
Приведенная классификация типов данных в PascalABC.NET не является исчерпывающей. Отдельные типы данных могут компоноваться в группы подобно тому, как это указано для порядковых типов.
Тип данных называется структурированным, если в одной переменной этого типа может содержаться множество значений. Таковы массивы, множества, строки и т.д.
Особым типом данных является последовательность, которая по существу хранит алгоритм последовательного получения данных.

.
Все типы, кроме типов указателей, являются производными от типа Object. Каждый тип в PascalABC.NET имеет отображение на тип .NET Framework. Тип указателя принадлежит к неуправляемому коду и моделируется типом void*.
Следует понимать, что приведенная классификация является достаточно условной. Несмотря на то, что PascalABC.NET по возможности сохраняет поведение типов, которые пришли из языка Object Pascal (Delphi), имеется ряд особенностей реализации, связанных как с платформой .NET, так и с самим PascalABC.NET.
ПРАКТИКА (Задание 6)
Пример №1.
Составить программу на языке Паскаль и вычислить значение y:

а=0,3; b=-3.7; с=0,84; х=-5,4
Последовательность работы
1. Прежде чем приступить к программированию, выражение правой части уравнения нужно представить в виде последовательности вычислительных операций, ограниченных скобками, с использованием формул преобразований и стандартных функций языка Паскаль:
2. Составляем программу на языке Паскаль, задавая исходные данные в разделе описания констант (const):
Program lab_1;
Const a=0.3; b=-3.7; c=0.84; x=-5.4;
Var y:real;
Begin
y:=exp(x*ln(a))+(ln(abs(b))+3.4*exp(a*x))/(sqr(sin(c)/cos(c))*sqrt(abs(b)));
Writeln('y=',y:10:3);
end.
3. Входим в среду PascalABC.NET, используя иконку на рабочем столе компьютера
4. В верхнем окне браузера набирается текст программы на языке Паскаль:

5. Необходимо сохранить текст программы, для этого воспользуемся иконкой 
Появится окно, в поле Имя файла которого вместо
следует написать имя, под которым программа будет храниться в каталоге, например lab (имя составляется из букв латинского алфавита, цифр и некоторых допустимых символов, не должно превышать 8 позиций):
После этого указанное имя появится на вкладке рабочего окна.

6. Воспользовавшись иконкой
, выполняем программу.
7. При возникновении ошибок, в Окне вывода будет появляться подсказка. Следует отлаживать программу (исправлять ошибки), пока в Окне вывода не появится результат. Каждый раз после исправления ошибки следует сохранять последнюю версию, воспользовавшись иконкой
и выполнять программу, активизируя иконку 
Разъяснения по наиболее часто встречающимся ошибкам

После заголовка программы Program lab_1 должен стоять символ ‘;’. Аналогичная ошибка может возникать при отсутствии символа ‘;’ после любого другого оператора программы. Красной строкой выделен оператор, перед которым отсутствует разделитель ‘;’, в конце предыдущего оператора следует этот символ поставить.

Имя ‘xx’ не описано ни в разделе описания констант (Const), ни в разделе описания переменных (Var). В данном случае, в разделе Const описана переменная ‘x’ (x=-5.4;), а в операторе вычисления ‘y’ используется нигде не описанная величина ‘xx’. Следует исправить ‘xx’ на ‘x’. Данная ошибка может возникать, как в случае неверного написания имени в теле программы, так и в случае отсутствия описания этого имени в разделе описаний.

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

В данном случае, не хватает закрывающей скобки ‘)’. Это указано в нижнем окне браузера. Оператор, в который нужно внести исправления, выделен в верхнем окне красной строкой. Необходимо внимательно проверить написание оператора и указать скобку в соответствии с последовательностью выполнения вычислительных операций.

Возникновение данной ошибки связано с недостаточным количеством открывающих скобок ‘)’. Следует внимательно проверить написание оператора, выделенного красной строкой, и указать скобку в соответствии с последовательностью выполнения вычислительных операций.

Отсутствует символ ‘.’ В конце программы.
8. Если не удалось завершить отладку программы за один прием, следует записать последнюю версию на диск, используя иконку
, и в следующий раз продолжить отладку, предварительно войдя в среду PascalABC.NET и воспользовавшись иконкой
. При этом появится окно:

Следует выделить в каталоге имя отлаживаемого файла (lab) и активизировать клавишу Открыть, а затем продолжить отладку.
Когда программа будет отлажена и в окне вывода появится результат:

ПРАКТИКА (Задание 6)
Изучите пример, демонстрирующий использование вещественных переменных:
// Использование вещественных переменных begin // Объявление переменной с одновременным присваиванием значения var a:real := 10.1; // Вывод значения переменной Writeln('a = ', a); // Присваивание переменной нового значения a := 5; // Увеличение значения переменной a += 0.6; // Вывод значения переменной Writeln('a = ', a);end.ПРАКТИКА (Задание 7)
Объявите вещественную переменную a со значением 1.5. Увеличьте ее в три раза и выведите новое значение. Объявите переменную b и присвойте ей удвоенное значение переменной a, выведите ее значение. Обнулите значение переменной a и вновь выведите ее значение. Вычислите сумму значений переменных a и b.
ПРАКТИКА (Задание 8)
5. Рассмотрите примеры с вычислением периметра квадрата и периметра и длины гипотенузы прямоугольного треугольника:
// Вычисление периметра квадрата по заданной стороне begin Writeln('Введите длину стороны квадрата:'); // Объявление переменной для хранения длины стороны var a: real; // Ввод длины стороны Read(a); // Вычисление периметра var P: real := 4 * a; Writeln('Периметр P = ', P);end.// Вычисление гипотенузы и периметра прямоугольного треугольника по заданным катетам begin Writeln('Введите длины катетов (два числа, разделенные пробелом):'); // Объявление переменных для хранения катетов var a, b: real; Read(a, b); // Тип переменной c определяется автоматически, как результат вычислений // sqrt - функция вычисления квадратного корня var c := sqrt(a*a + b*b); Writeln('Гипотенуза c = ', c); // Вычисление периметра треугольника var P := a + b + c; Writeln('Периметр P = ', P);end.ПРАКТИКА (Задание 9)
Напишите программу, вычисляющую периметр и площадь прямоугольника по заданным длинам сторон.
Дата добавления: 2019-02-26; просмотров: 140; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!
