Задание 1.
Вариант П.
1. Операторы цикла позволяют многократно выполнять отдельный оператор или последовательность операторов, причет при этом нет необходимости записывать в тексте программы одинаковые операторы несколько раз.
Оператор цикла REPEAT организует выполнение цикла, состоящего из любого числа операторов, с неизвестным заранее числом повторений. Тело цикла выполняется хотя бы один раз. Выход из цикла осуществляется при истинности некоторого логического выражения. Структура этого оператора:
repeat
operator1;
operator2;
operator3;
. . .
operatorN
until S;
В этой структуре:
operator1..N - выполняемые операторы, составляющие тело цикла;
S - логическое выражение, истинность которого проверяется в конце каждой итерации.
Так как слова repeat и until являются своеобразными операторными скобками, точку с запятой перед словом until ставить необязательно.
Оператор цикла WHILE организует выполнение одного оператора неизвестное заранее число раз. Выход из цикла осуществляется, если некоторое логическое выражение окажется ложным. Так как истинность логического выражение проверяется в начале каждой итерации, тело цикла может не выполняться ни разу. Структура данного оператора цикла имеет вид:
while S do
operator;
В данной структуре:
S - логическое выражение, истинность которого проверяется в начале каждой итерации;
operator - выполняемы оператор цикла.
Между конструкциями REPEAT ... UNTIL и WHILE ... DO имеются три существенных отличия.
В конструкции WHILE ... DO проверка условия выхода выполняется в начале, а не в конце цикла, поэтому, если условие не удовлетворяется до начала выполнения цикла, то тело цикла игнорируется и выполняется оператор, стоящий сразу же после окончания тела цикла.
В конструкции WHILE ... DO условие выхода из цикла удовлетворяется, если выражение, определяющее условие выхода, ложно, а в конструкции REPEAT ... UNTIL — если это выражение истинно.
Между зарезервированными словами REPEAT и UNTIL может размещаться несколько инструкций, в то время как конструкция WHILE ... DO может содержать максимум одну инструкцию.
Примеры использования операторов цикла:
WHILE ... DO | REPEAT ... UNTIL |
1) нахождение суммы чисел от 1 до 50 ... sum:=0; i:=0; while i<50 do begin i:=i+1; sum: = sum + i; end; .... | 1) нахождение суммы чисел от 1 до 50 ... sum:=0; i:=0; repeat i:=i+1; sum: = sum + i; until i=50; ... |
... while not eof(f) do begin read (f,i); writeln (i); end; ... |
... repeat read (f,i); writeln (i); until eof(f); ... |
... i:=0; while c<>’*’ do begin i:= i+1; read (c[i]); end; ... |
... i:=0; repeat i:=i+1; read(c[i]); until c=’*’; ... |
2. В языке Паскаль ввод-вывод информации осуществляется через файловые переменные.
Перед тем, как осуществить ввод-вывод, файловая переменная должна быть связана с конкретным внешним файлом с помощью процедуры ASSIGN. Этим файлом может быть файл на магнитном диске, а также устройство вычислительного комплекса. Затем файл должен быть открыт для чтения и/или записи. После этого можно осуществлять организацию ввода-вывода.
После работы с файлом он, как правило, должен быть закрыт с помощью процедуры CLOSE. Это требование обязательно должно соблюдаться для файла, в который производилась запись.
Процедура ASSIGN (Var_file, Road): с помощью этой процедуры вы связываете файловую переменную Var_file с некоторым именем файла, которое хранится в переменной Road.
Var
Var_file: file of integer;
Road: string[14];
...
Road:=’Data.dat’;
Assign (Var_file, Road);
Вы не можете связывать некоторую файловую переменную с файлом посредством этой процедуры в том случае, если данный файл уже открыт.
Процедура Reset: данная процедура открывает существующий файл данных, имя которого перед этим было связано при помощи процедуры Assign с некоторой файловой переменной, указанной в процедуре Reset как параметр.
Assign (var_file, ‘Data.dat’);
Reset (Var_file);
Данная процедура содержит необязательный параметр Size целого типа, который используется только с файлами без типа и задает размер пересылаемого элемента информации в байтах. По умолчанию этот параметр равен 128. Файл текстового типа может быть открыт либо для чтения процедурой Reset, либо для записи процедурой Rewrite или Append.
Процедура Rewrite: создает новый файл и открывает его для записи или чтения. Если файл с таким именем уже существует, его содержимое стирается, а сам файл открывается заново.
Rewrite (Var_file);
открывает существующий файл, связанный с файловой переменной Var_file.
Процедура Close: закрывает ранее открытый файл, связанный с указанной переменной в качестве параметра файловой переменной.
Close (Var_file);
При попытке закрыть файл, который не был до этого открыт или который уже закрыт, возникает ошибочная ситуация.
Процедура Rename: позволяет переименовать существующий файл, связанный с указанной в качестве параметра файловой переменной. Данная процедура применяется только к закрытым файлам.
Assign (Var_file, ‘Data.dat’);
Rename (Var_file, ‘Text.dat’);
Процедура Erase: стирает существующий файл с диска. При этом файловая переменная должна быть предварительно связана с реально существующим файлом.
Assign (Var_file, ‘Data.dat’);
Erase (Var_file);
Функция EOF: используя данную логическую функцию, в процессе считывания информации Вы можете проверить, достигнут ли конец файла, т.е. находится ли указатель файла за последним элементом или нет.
While not EOF (Var_file) do
read (Var_file, m[i]);
данный фрагмент программы иллюстрирует процесс чтения элементов массива из файла, связанного с переменной Var_file, до тех пор, пока не будет достигнут конец файла.
Функция IOResult: предназначена для поиска ошибок, возникающих при работе с файлами. Эта функция возвращает результат последней операции ввода-вывода, если автоматический контроль за ошибками, возникающими в процессе операций ввода-вывода, отключен с помощью директивы компилятора {$I-}. При безошибочном выполнении операций ввода-вывода данная функция возвращает ноль, если же ошибка имела место, то данная функция возвращает код ошибки.
{$I-}
Reset (‘C:data.dat’);
if IOResult <>0 then writeln (‘ Ошибка при открытии файла’);
{$I+}
Задание 2.
6.
uses crt;
var
z,m,n:real;
x,i:integer;
Begin
clrscr;
write ("Введите x:");
readln (x);
m:=1;
for i:=1 to x do
m:=m*3;
m:=1/m;
n:=sqrt(sqrt(abs(x)));
n:=x+n;
n:=sqrt(n);
z:=m*n;
writeln ("z=",z:8:4);
end.
Задание 3-а.
0.
uses crt;
var
ar:array[1..100] of integer;
i,am,num:integer;
Begin
num:=0;
clrscr;
write ("Введите размерность массива:");
readln (am);
writeln ("Введите массив:");
for i:=1 to am do readln (ar[i]);
clrscr;
i:=0;
for i:=1 to am do
if ar[i]<0 then num:=i;
for i:=1 to am do
write (ar[i]:3,";");
writeln;
if num<>0 then writeln ("Первый отрицательный элемент:",num);
end.
Задание 4.
6.
uses crt;
type tpat=record
name:string[50];
diag:string;
num,temp:integer;
sost:string;
end;
var
pat:tpat;
f:file of tpat;
t:text;
i:integer;
ch:char;
Begin
clrscr;
assign (f,"1.dat");
assign (t,"1.txt");
rewrite (f);
rewrite (t);
while ch<>"*" do
begin
write ("Введите фамилию пациента:");
readln (pat.name);
write ("Введите номер палаты:");
readln (pat.num);
write ("Введите температуру больного:");
readln (pat.temp);
write ("Введите диагноз:");
readln (pat.diag);
write ("Введите состояние больного:");
readln (pat.sost);
write (f,pat);
clrscr;
write ("Продолжить ввод? *-нет");
readln (ch);
end;
while not eof(f) do
begin
read (f,pat);
if pat.num=10 then writeln (t,pat.name,pat.diag,pat.sost,pat.temp);
end;
end.
1. Оператор газовой котельной экзаменационные билеты
2. Оператор газовой котельной билеты и ответы
3. Оператор котельной билеты с ответами
4. Программа обучения оператор газовых котельных
5. Оператор газовой котельной обучение
6. Вопросы к экзамену оператор котельной в
9. Билеты для операторов газовой котельной
10. Ответы на билеты для оператора газовой котельной
11. Ответы на билеты оператора газовой котельной
12. Билеты для подготовки операторов котельных
13. Билеты для оператора котельных установок
14. Курсы операторов газовых мини котельных
15. Билеты операторов котельной