Основы программирования на языке Паскаль
2. Прямоугольник, ограниченный осями OX, OY и прямыми x=4, y=2.
3. Прямоугольник, ограниченный осями OX, ОУ и прямыми x=-2, y=-4.
4. Внутренняя часть сектора, ограниченного положительной частью оси OX, отрицательной OY и окружностью с центром в начале координат и радиусом, равным 3.
5. Внутренняя часть квадрата, ограниченного прямыми линиями x=2, x=3, y=-3, y=-4.
6. Область, л
ежащая внутри окружности с центром x=5, y=-3 и
радиусом= 1,5.
Программа:
Program Prim6;
Label N,K,L;
Var x,y:real; f:char;
BEGIN N: writeln('введите координаты точки');
readln(x); writeln('x=',x);
readln(y); writeln('y=',y);
if (x<=0) and (y>=0) and (sqr(x)+sqr(y)<=4) {1-яобласть}
or (x>=0) and (x<4) and (y>=0) and (y<=2) {2- яобласть}
or (x<=0) and (x>=-2) and (y<=0) and (y>=-4) {3- яобласть}
or (x>=0) and (y<=0) and (sqr(x)+sqr(y)<=9) {4- яобласть}
or (x>=2) and (x<=3) and (y<=-3) and (y>=-4) {5- яобласть}
or (sqr(x-5)+sqr(y+3)<=2.25) {6- я область}
then writeln('точка с координатами х=',x,' y=',y, 'принадлежит области')
else writeln('точка с координатами х=',x,' y=',y, 'не принадлежит оласти);
L: writeln('будем ли ещё вводить координаты точки?, Y, N'); readln(f);
if (f='Y') or (f='y') then goto N else
if (f='N') or (f='n') then goto K else
writeln('неправильно нажали клавишу, попробуйте ещё раз'); goto L;
K: readln; End.
Замечание: для того, чтобы построить область, необходим здравый смысл и элементарные знания аналитической геометрии. Так, х>=0 определяет область (рис. 3.4)
x>=0 and x<=4 определяет полосу (рис. 3.5)
Вспомнив, что уравнение окружности с центром в начале координат x2+y2=r2, имеем x2+y2£4 (рис. 3.6),
x £0 является полуплоскостью (рис. 3.7),
y ³0 определяет полуплоскость (рис. 3.8),
x £0 and y ³0 есть квадрант (рис. 3.9)
и, наконец,
x £0 and y ³0 and sqr(x)+sqr(y)£4 есть сегмент (рис. 3.10)
3.4. Оператор case (оператор выбора)
Общий вид:
Case выражение - селектор of
Список констант выбора 1: оператор 1;
Список констант выбора 2: оператор 2 ;
– – – – – – – – – – – – – – – – – – – – – – – – – –
Список констант выбора n оператор n;
else оператор end;
Здесь выражение-селектор есть выражение, которое после выполнения имеет любое скалярное значение, кроме вещественного (типы данных; разд. 2.6.), т.е. выражение-селектор может быть байтового, целого, логического, символьного, перечисляемого и интервального типов.
Список констант выбора состоит из перечня констант, разделенных запятыми, либо из констант, заданных интервалом, либо из комбинаций перечня констант и интервалов. Тип констант в списках Case должен соответствовать типу выражения селектор. Значения констант в списках не должны повторяться.
Работа оператора. вначале вычисляется выражение-селектор, затем полученное значение сравнивается с константами выбора, и, если значение выражения-селектора совпадает с какой-либо константой выбора, то выполняется оператор, стоящий после списка констант, в котором есть константа, совпадающая со значением выражения-селектора. если значение выражения-селектора не совпадает ни с одной из констант выбора, то выполняется оператор, следующий за else. Else может в Case отсутствовать, тогда в случае несовпадения констант оператор Case игнорируется.
Примеры:
1. Селектор целого типа, список констант представлены перечнем констант:
Program Prim7;Var i,z:integer;BEGIN writeln('введитецелое i'); readln(i);
Case i of
1,2,5: writeln('i=',i,' z=',i+10);
12,16: writeln('i=',i,' z=',i+100);
31,35,46: writeln('i=',i,' z=',i+1000);
elsewriteln('неправильно задано i'); end;
readln; END.
2. Селектор целого типа – список констант представлен диапазоном.
вводится целое i, определить, находится ли оно в диапазоне 1-10 или 11-100, или 101-1000, либо вне этих диапазонов.
Program Prim8;Var i:integer;BEGIN writeln('введитецелое i'); readln(i); Case i of
1 10: writeln(' число в диапазоне 1-10');
11 100: writeln(' число в диапазоне 11-100');
101 1000: writeln(' число в диапазоне 101-1000');
else writeln(' числовнедиапазона 1-1000'); end;
readln; END.
3. Селектор целого типа, список констант представлены перечнем констант и диапазоном:
Program Prim9; Var i:integer; x,m,a,b,c,d:real; BEGIN writeln('введитезначение i'); readln(i); writeln('введитезначения x,m,a,b,c,d');
readln(x,m,a,b,c,d);
Case i of
1,2,4,8,11 20,24,28,30: writeln('y=',(x+1)/(sqr(x)+2)-ln(m)+2*a/b);
31,45 55: writeln('y=',(sqr(a)+m)/sqrt(b+m)-3*a*b/c+d);
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности