Результат в Pascal (y)
|
Результат в Math Cad (y)
|
х
|
у
|
х
|
у
|
1,0
|
0,62
|
1,0
|
0,62
|
1,3
|
0,50
|
1,3
|
0,50
|
1,6
|
0,41
|
1,6
|
0,41
|
1,9
|
0,33
|
1,9
|
0,33
|
2,2
|
0,26
|
2,2
|
0,26
|
2,5
|
0, 19
|
2,5
|
0, 19
|
2,8
|
0,12
|
2,8
|
0,12
|
3,1
|
0,03
|
3,1
|
0,03
|
Контрольные вопросы к заданиям 1, 2, 3
1. Структура программы в Turbo Pascal.
Программа на языке Turbo Pascal состоит из заголовка
программы, раздела описаний и раздела операторов.
Структура программы в общем виде:
Program Имя программы;
{заголовок программы}
uses {объявление используемых
модулей};
{Раздел описаний (деклараций) }
label {описание меток};
const {описание констант};
type {описание типов);
{Описание подпрограмм}
procedure {описание процедур};
function {описание функций};
begin
{Раздел операторов};
end.
Заголовок программы не обязателен и может
отсутствовать. Порядок размещения разделов описаний произвольный.
2. Что такое идентификатор?
Для именования различных программных объектов служат языковые
конструкции, называемые идентификаторами. Идентификатор определяется как
последовательность букв, цифр и символов подчеркивания, начинающаяся с буквы. Идентификатор
не может содержать пробелов.
3. Понятие переменной в Turbo Pascal.
Переменная - это ячейка оперативной памяти, которая может
хранить данные какого-то одно типа.
Чем переменная отличается от константы?
Константа - это объект, значение которого известно
еще до начала работы программы.
Константы необходимы для оформления наглядных программ,
незаменимы при использовании в тексте программы многократно повторяемых
значений, удобны в случае необходимости изменения этих значений сразу во всей программе.
Значение переменной определяется в процессе выполнения
программы и может многократно меняться.
4. Найти в программах решенных задач
декларативную часть. Для чего нужны разделы описаний констант, переменных. Что определяет
тип переменной?
Декларативная часть во всех программах находится между
директивой uses и первым begin.
Раздел описания констант содержит описания всех констант
используемых в программе. Начинается со слова const. Далее указывается имя
константы, знак равенства и значение константы.
Раздел описания переменных сообщает компилятору о том, какие
переменные и какого типа будут использованы в программе. Начинается со слова var.
Компилятор резервирует для каждой переменой участок памяти в
соответствии с указанным типом. Тип каждой переменной определяет диапазон её
значений. В зависимости от типа под переменную отводится необходимое количество
байт. Тип определяет также множество допустимых операций.
5. Операторы. Оператор IF. Оператор FOR. Оператор
присваивания.
В Turbo Pascal управляющая структура языка, проверяющая
выполнение некоторого условия и позволяющая в случае выполнения или
невыполнения этого условия произвести ветвление алгоритма, реализуется с
помощью условного оператора IF.
Условный оператор IF имеет две формы представления:
1. Полная
if условиеоператороператор;
2. Неполная
if условиеоператор;
Условный оператор работает следующим образом:
. Сначала вычисляется значение условия - это может
быть любое выражение, возвращающее значение типа boolean.
2. Затем, если в результате получена "истина"
(true), то выполняется
оператор, стоящий после ключевого слова then, а если "ложь"
(false) - без дополнительных
проверок выполняется оператор, стоящий после ключевого слова else. Если же
else-ветвь отсутствует, то не выполняется ничего.
По синтаксису языка после слов then и else может стоять только
один оператор. В случае, если необходимо использовать несколько операторов,
последние заключаются в операторные скобки begin. end.
Оператор цикла For применяется в тех
случаях, когда заранее известно число повторений цикла. Оператор цикла с
параметром имеет вид:
For параметр: =A to B do
begin
{тело цикла}
end;
Параметр цикла - переменная порядкового
типа (целого, логического, символьного, перечисляемого типа или тип-диапазон).
Параметр цикла не может быть вещественного типа. Значение параметра
автоматически изменяется на следующее значение. Например, если параметр цикла
целого типа, то он увеличивается на 1.
A - это начальное значение
параметра цикла, В - конечное значение параметра цикла.
Если в теле цикла содержится один
оператор, то begin и end можно не ставить.
Алгоритм работы оператора цикла FOR:
. Вычисляются и запоминаются начальное и конечное
значения параметра цикла
2. Параметру цикла присваивается начальное
значение
. Выполняются операторы тела цикла
4. Значение параметра цикла увеличивается на единицу.
Если новое значение параметра цикла меньше или равно конечному значению,
выполняется тело цикла.
. И так до тех пор, пока параметр цикла меньше или
равен конечному значению. В противном случае происходит выход из цикла.
Оператор присваивания
имеет вид:
Имя переменной: =
Выражение;
С помощью оператора присваивания
переменной, стоящей в левой части оператора присваивается значение выражения,
стоящего в правой части оператора присваивания. В правой части присваивания
может находиться переменная, константа, арифметическое выражение или
вызов функции.
6. Процедуры ввода - вывода.
программа функция аргумент идентификатор
Процедуры вывода на экран - write () и writeln (). В скобках
указывается список фактических параметров данной процедуры через запятую. Если
в качестве фактических параметров используется строка, заключенная в апострофы,
то на экран будет выводиться все, что находится внутри апострофов в том виде, в
котором это записано в программе. Если в качестве фактических параметров
используется переменная, то на экран выведется значение данной переменной. При
выводе значений переменных можно задавать формат выводимых значений. Для
переменных целого типа формат - это целое число, определяющее количество
позиций, которое будет занимать значение на экране. Для переменных
вещественного типа формат - это два числа, разделенных двоеточием. Первое
задает количество позиций, которое будет занимать значение на экране, второе -
количество знаков после запятой. Например, writeln ('y=', y: 5: 3);
Процедуры ввода (чтение с клавиатуры) - read () и readln (). В скобках
указывается через запятую список переменных. При выполнении оператора ввода
компьютер ждет ввода с клавиатуры какого-либо значения. Пользователь должен
ввести с клавиатуры значение и нажать Enter, после чего это значение присвоится переменной,
указанной в операторе ввода. Например, readln (x);
Задание
№4
1. Постановка задачи.
Дан одномерный массив, состоящий из 6 элементов вещественного
типа. Вычислить количество положительных элементов массива.
Дадим имя массиву - А.
А={2.1, - 3.5, 2.8, - 4.3, 7.1, 0.5}
2. Таблица идентификаторов
обозначение в
задании
|
идентификатор
|
назначение
|
A
|
A
|
Имя массива
|
i
|
i
|
Индекс
элементов массива, счетчик цикла
|
n
|
n
|
Количество
элементов массива
|
|
s
|
. Текст программы CRT; {подключение модуля CRT}
const n=6; {объявление константы n=6}
var A: array [1. n] of real; {объявление массива А, состоящего из n
элементов вещественного типа}
s, i: byte; {объявление переменных s и i целого типа}
begin{начало основной программы}
clrscr; {процедура clrscr очищает экран}
writeln ('Введите элементы массива');i: =1 to n
do('A [', i, '] ='); (A [i]); {ввод элементов массива}
end;
s: =0;
{вычисление количества положительных элементов массива}
for i: =1 to n do
{если элемент массива >0, то увеличиваем s на 1}
if A [i] >0 then s: =s+1;
{Если s>0, то выводим значение s, иначе выводим сообщение
‘В массиве нет положительных элементов’}
if s>0 then
writeln ('Количество положительных элементов массива: ',
s)
else writeln (‘В массиве нет положительных элементов’);
readln;.
. Контрольный расчет
Результат в Turbo Pascal: Количество положительных элементов массива: 4
Контрольные вопросы к заданиям 4
. Определение массива.
Массив - совокупность фиксированного количества
пронумерованных однотипных элементов, имеющих общее имя.
2. Что такое переменная с индексом?
Каждый элемент массива имеет свой порядковый номер (индекс).
Например, A
[1] или A
[i].
3. Какова связь индексирования элементов
массива с параметром цикла For?
Обработка элементов массива производится в
цикле. Причем параметр цикла используется для индексирования элементов массива.
Например,
вывод элементов массива:
for i: =1 to n do('A [', i, '] =', A [i]);
4. Способы описания
массивов. Какой из способов описания массивов может быть использован при
передаче массивов в процедуры и функции через список формальных параметров.
Для описания массивов можно использовать два способа:
1) type myarray=array [1.5] of integer;
A: myarray;
В разделе Type определен один конкретный тип. Имя этого типа myarray. Далее в разделе var этот тип применен для
объявления массива A.
Тот же самый массив можно объявить так:
2) var A: array [1.5] of integer;
При передаче процедурам и функциям массивов через списки
формальных параметров используется только первый способ.
4. Использование оператора цикла For для ввода - вывода и
обработки элементов массива.
Так как ввод-вывод элементов массива и их обработка основаны
на последовательном переборе всех его элементов, количество которых известно
заранее, то при программировании для организации перебора используется оператор
цикла FOR.
Пример: ввод элементов массива:
for i: =1 to n do
readln (A [i]);
Пример: вывод элементов массива:
for i: =1 to n do('A [', i, '] =', A [i]);