Решение квадратного уравнения. Оператор варианта. Вычисление площадей фигур. 10. Примерные задания к контрольной работе
Скачать 443 Kb.
|
ПРАКТИЧЕСКОЕ ЗАНЯТИЕ № 7ОПЕРАТОР УСЛОВНОГО ПЕРЕХОДА (продолжение) Если требуется после THEN или ELSE применить более одного оператора, то применяются ОПЕРАТОРНЫЕ СКОБКИ BEGIN..END Решение КВАДРАТНОГО УРАВНЕНИЯ Program Kwur; Uses crt; var a,b,c,x1,x2,d: real; Begin ClrScr; write('Введите коэффициенты a,b,c :'); readln(a,b,c); d:=b*b-4*a*c; if d<0 then writeln('Нет корней.') else begin if d=0 then begin x1:=-b/(2*a); x2:=x1 end else begin x1:=(-b+sqrt(d))/(2*a); x2:=(-b-sqrt(d))/(2*a) end; write(' x1=',x1:5:2,' x2=',x2:5:2) end; readkey; End. З А Д А Н И Я: 1. Решить следующие уравнения: а) 3х² + 6х - 8 = 0 б) х² - 2х - 1 = 0 в) 5х² - 4х + 3 = 0 г) 4х² + 4х - 1 = 0 д) 5х² - 5х + 2 = 0 2. Вставить в программу комментарии: а) полное название программы; б) автор программы и дату составления программы. 3. Сделать так, чтобы результат выводился на чистом экране с указанием значений коэффициентов. ПРАКТИЧЕСКОЕ ЗАНЯТИЕ № 8ОПЕРАТОР ВАРИАНТАОператор варианта является обобщением условного оператора: он дает возможность выполнить один из нескольких операторов в зависимости от значения некоторого выражения, называемого СЕЛЕКТОРОМ. CASE <селектор> OF { case (кейс) - выбор } <список меток1> : <оператор1>; { of (oф) - из } <список меток2> : <оператор2>; . . . . . . . : . . . . . .; <список метокN> : <операторN>; ELSE <оператор> END; селектор - выражение любого перечисляемого типа, кроме вещественного; integer, byte (-целые из [0;255]), char -символьный тип. оператор - любой оператор языка, в том числе и составной; список меток - список разделенных запятыми значений выражения 'селектор' или одно его значение; тип метки и селектора одинаков; Оператор варианта выбирает для исполнения тот ОПЕРАТОР, одна из меток которого равна текущему значению выражения СЕЛЕКТОР. Если ни одна из меток не равна текущему значению селектора, то никакие операторы не выполняются, либо выполняются операторы, следующие за зарезервированным словом ELSE ( если такое имеется ). Program Primer_Case1; Uses crt; var n:integer; Begin clrscr; write('Нажмите цифру 1..8'); readln(n); case n of 1,7: write('В а н я'); 2: write('В а с я'); 3: write('В а л я'); 4: write('В а р я'); 5: write('В а д я'); 6: write('в а з а') else write(' Нет такой метки') end; readkey; End. Program Primer_Case2; Uses crt; var n:char; { char - символьный тип ,занимает 1 байт памяти } Begin clrscr; write('Нажмите букву а..е'); readln(n); case n of 'a': write('Вы ввели символ а'); 'b': write('Вы ввели символ b'); 'c': write('Вы ввели символ c'); 'd': write('Вы ввели символ d') else write('Вы ввели символ, которого нет среди меток') end; readkey; End. З А Д А Н И Я: 1. Набрать приведенные выше программы и выполнить их. 2. Во второй программе после ПРАКТИЧЕСКОЕ ЗАНЯТИЕ № 9ОПЕРАТОР ВАРИАНТА (продолжение) Вычислить площади фигур, выбирая их из списка (меню) : Program PLFigur; Uses crt; var s,a,b,h,r:real; n:integer; Begin ClrScr; writeln(' П Л О Щ А Д И'); writeln(' ============='); writeln(' 1. Прямоугольника.'); writeln(' 2. Трапеции.'); writeln(' 3. Круга.'); writeln(' 4. Конец работы.'); writeln; write('Введите номер строки :'); readln(n); case n of 1: begin clrscr; write('Введите стороны прямоугольника a,b :'); readln(a,b); s:=a*b; write('Площадь прямоугольника S=',s) end; 2: begin clrscr; write('Введите основания и высоту трапеции a,b,h :'); readln(a,b,h); s:=(a+b)*h/2; write('Площадь трапеции S=',s) end; 3: begin clrscr; write('Введите радиус круга r='); readln(r); s:=pi*r*r; write('Площадь круга S=',s) end else write(' ***** Работа окончена *****'); end; readkey; End. З А Д А Н И Я: 1. Набрать программу и выполнить ее для четырех строк меню. 2. Самостоятельно дописать в программу вычисление площади треугольника. |