Замечание!!! В ветвь then, также как и else, нельзя поместить несколько операторов. В каждой ветви может находиться либо одиночный оператор, либо составной. Не целесообразно брать в операторные скобки одиночные операторы (простой, условный, цикла, вызова подпрограммы и вызова подпрограммы), хотя это и не является ошибкой. Составной оператор обязательно включает в себя операторные скобки.
Вопрос 7
Пример конструкции “ЕСЛИ” с использованием составного оператора
Требуется составить алгоритм и программу нахождения корней квадратного уравнения ax2+bx+c=0 с произвольными коэффициентами a, b, c (a¹0), для фиксации результатов расчетов сделать копию пользовательского экрана.
1 Схема алгоритма решения задачи:
|
|
|
|
|
2 Текст программы на языке Паскаль:
program nk;
var
a,b,c,d,x1,x2:real;
begin
write('Введите значения переменных a,b,c: '); readln(a,b,c);
writeln('Исходные данные: a=',a:4:2,' b=', b:4:2,'c=':5,c:4:2);
write('Результат: ');
d:=sqr(b)-4*a*c;
if d<0
then writeln('действительных корней нет')
else begin
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
writeln('x1=',x1:4:2,'x2=':5,x2:4:2)
end;
readln;
end.
3 Для того чтобы сделать копию пользовательского экрана с результатами выполнения программы нужно одновременно нажать клавиши “Shift” и “PrtSc” .
Вопрос 7
Текст программы на языке Delphi (консольный режим)
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
a,b,c,d,x1,x2:real;
begin
write('Read a,b,c: '); readln(a,b,c);
writeln('Input data: a=',a:4:2,' b=', b:4:2,'c=':5,c:4:2);
write('Risult: ');
d:=sqr(b)-4*a*c;
if d<0
then writeln('Real root is not')
else begin
x1:=(-b+sqrt(d))/(2*a);
x2:=(-b-sqrt(d))/(2*a);
writeln('x1=',x1:4:2,'x2=':5,x2:4:2)
end;
readln;
end.
Вопрос 8
Варианты записи условий (логических выражений)
В конструкции “ЕСЛИ” записывается выражение, которое может принимать значение или “истина” или “ложь”. Эти выражения могут быть или простыми или составными. Простое выражение в общем случае имеет вид:
алгебраич. выражен.1 знак операц. сравнения алгебраич. выражен.2
Примеры простых условий: 1) y>=x+1; 2) D<0. Используются следующие знаки операции сравнения: 1) =; 2) <>; 3) <; 4) >; 5)>=; 6)<=.
Составные условия образуются из простых соединением их служебными словами языка Паскаль обозначающих соответственно имена логических операций “И”, “ИЛИ”, “НЕ”: AND, OR, NOT.
Пусть А, B некоторые логические выражения. Тогда можно записать:
|
2) (A) OR (B) (читается: А или В)- это условие истинно в том случае, если истинно хотя бы одно условие или условие А или условие В. Таким образом указанное условие ложно в случае, если ложно и условие и А и В. Условие (y>5)OR(x>3) истинно в случае, если истинно условие (y>5) или истинно условие (x>3) или оба условия.
3) NOT(A) (читается: не А) -это условие истинно в том случае, если условие А ложно. Это условие ложно, если условие А истинно.
Условие NOT(x>3) истинно в том случае, если условие x>3 ложно, т.е. если x£3.
Вопрос 9
Пример решения задачи с использованием конструкции “ЕСЛИ”, вложенной в другую конструкцию “ЕСЛИ”, отладочной печати и стандартного модуля “Printer”
Пусть требуется составить программу, позволяющую по заданному значению аргумента х найти значение у функции
Составим программу на языке Паскаль.
{...}
program funct;
Uses Printer;
var
x,y:real;
begin
write('Введите значения переменной x: '); readln(x);
writeln(lst,'Исходные данные: x=', x:4:2);
write('Отладочная печать: ');
if x<0
then begin
writeln('A');
y:=-x
end
else if (x>=0) and (x<5)
then begin
writeln('B');
y:=sqr(x)
end
{можно было вместо условия (x>=0)and(x<5) записать x<5)}
else begin
writeln('C');
y:=x
end;
writeln(lst,'Результат: ',y:4:2);
readln;
end.
При отладке данной программы рекомендуется использовать пять тестовых значений: три находящиеся внутри указанных диапазонов и два граничных значения. Например, следующие значения исходной переменной х: -4, 0, 3, 5, 6.
Вопрос 10
Использование отладчика при отладке указанной программы
Чтобы избежать необходимости включения в текст программы дополнительной отладочной печати можно использовать встроенный отладчик системы программирования. Для этого выполним следующие действия:
а) Разместим в окне просмотра (Watch) имена переменных, изменение значений которых в процессе пошагового выполнения программы мы будем просматривать. Для этого расположим в окне редактора под переменной х курсор и реализуем команду Debug/Add Watch (Control+F7).
б) Будем выполнять пошаговое выполнение программы нажатием на клавишу F7 или F8.
Вопрос 11
Конструкция типа ”ВЫБОР” (”ВАРИАНТ”)
1 Пример программирования на языке Паскаль с использованием конструкции ”ВЫБОР” .
{...}
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.