|
Как записываются логические выражения?
В записи логических выражений помимо арифметических операций сложения, вычитания, умножения, деления и возведения в степень используются операции отношения < (меньше), <= (меньше или равно), > (больше), >= (больше или равно), = (равно), <> (не равно), а также логические операции и, или, не.
Примеры записи логических выражений, истинных при выполнении указанных условий.
Условие
| Запись на школьном алгоритмическом языке
| Дробная часть вещественого числа a равна нулю
| int(a) = 0
| Целое число a — четное
| mod(a,2) = 0
| Целое число a — нечетное
| mod(a,2) = 1
| Целое число k кратно семи
| mod(a,7) = 0
| Каждое из чисел a,b положительно
| (a>0) и (b>0)
| Только одно из чисел a,b положительно
| ((a>0) и (b<=0)) или ((a<=0) и (b>0))
| Хотя бы одно из чисел a,b,c является отрицательным
| (a<0) или (b<0) или (c<0)
| Число x удовлетворяет условию a<x<b
| (x>a) и (x<b)
| Число x имеет значение в промежутке [1, 3]
| (x>=1) и (x<=3)
| Целые числа a и b имеют одинаковую четность
| ((mod(a,2)=0) и (mod(b,2)=0) или ((mod(a,2)=1) и (mod(b,2)=1))
| Точка с координатами (x,y) лежит в круге радиуса r с центром в точке (a,b)
| (x-a)**2+(y-b)**2<r*r
| Уравнение ax^2+bx+c=0 не имеет действительных корней
| b*b-4*a*c<0
| Точка (x,y) принадлежит первому или третьему квадранту
| ((x>0) и (y>0)) или ((x<0) и (y>0))
| Точка (x,y) принндлежит внешности единичного круга с центром в начале координат или его второй четверти
| (x*x+y*y>1) или ((x*x+y*y<=1) и (x<0) и (y>0))
| Целые числа a и b являются взаимнопротивоположными
| a = -b
| Целые числа a и b являются взаимнообратными
| a*b = 1
| Число a больше среднего арифметического чисел b,c,d
| a>(b+c+d)/3
| Число a не меньше среднего геометрического чисел b,c,d
| a>=(b+c+d)**(1/3)
| Хотя бы одна из логических переменных F1 и F2 имеет значение да
| F1 или F2
| Обе логические переменые F1 и F2 имеют значение да
| F1 и F2
| Обе логические переменые F1 и F2 имеют значение нет
| не F1 и не F2
| Логическая переменная F1 имеет значение да, а логическая переменная F2 имеет значение нет
| F1 и не F2
| Только одна из логических переменных F1 и F2 имеет значение да
| (F1 и не F2) или (F2 и не F1)
|
Упражнения
7.1. Запишите по правилам алгоритмического языка выражения:
a)
|
| e)
|
| б)
|
| ж)
|
| в)
|
| з)
|
| г)
|
| и)
|
| д)
|
| к)
|
| [ Ответ ]
7.2. Запишите в обычной математической форме арифметические выражения:
а) a/b**2; б) a+b/c+1; в) 1/a*b/c; г) a**b**c/2; д) (a**b)**c/2; е) a/b/c/d*p*q; ж) x**y**z/a/b; з) 4/3*3.14*r**3; и) b/sqrt(a*a+b); к) d*c/2/R+a**3;
| л) 5*arctg(x)-arctg(y)/4; м) lg(u*(1/3)+sqrt(v)+z); н) ln(y*(-sqrt(abs(x)))); о) abs(x**(y/x)-(y/x)**(1/3)); п) sqrt((x1-x2)**2+(y1-y2)**2); р) exp(abs(x-y))*(tg(z)**2+1)**x; c) lg(sqrt(exp(x-y))+x**abs(y)+z); т) sqrt(exp(a*x)*sin(x)**n)/cos(x)**2; у) sqrt(sin(arctg(u))**2+abs(cos(v))); ф) abs(cos(x)+cos(y))**(1+sin(y)**2);
| [ Ответ ]
7.3. Вычислите значения арифметических выражений при x=1: а) abs(x-3)/ln(exp(3))*2/lg(10000); Решение: abs(1-3)=2; ln(exp(3))=3; lg(10000)=4; 2/3*2/4=0.33; б) sign(sqrt(sqrt(x+15)))*2**2**2; в) int(-2.1)*int(-2.9)/int(2.9)+x; г) -sqrt(x+3)**2**(sign(x+0.5)*3)+tg(0); д) lg(x)+cos(x**2-1)*sqrt(x+8)-div(2,5); е) sign(x-2)*sqrt(int(4.3))/abs(min(2,-1)); ж) div(10,x+2)*mod(10,x+6)/max(10,x)*mod(2,5). [ Ответ ]
7.4. Запишите арифметические выражения, значениями которых являются: а) площадь треугольника со сторонами a, b, c (a, b, c >0) и полупериметром p; Ответ: sqrt(p*(p-a)*(p-b)*(p-c));
б) среднее арифметическое и среднее геометрическое чисел a, b, c, d; в) расстояние от точки с координатами (x,y) до точки (0,0); г) синус от x градусов; д) площадь поверхности куба (длина ребра равна а); е) радиус описанной сферы куба (длина ребра равна а); ж) координаты точки пересечения двух прямых, заданных уравнениями a1x+b1y+c1=0 и a2x+b2y+c2=0 (прямые не параллельны). [ Ответ ]
7.5. Вычислите значения логических выражений: а) x*x+y*y<=9 при x=1, y=-2 Ответ: да; б) b*b-4*a*c<0 при a=2, b=1, c=-2; в) (a>=1) и (a<=2) при a=1.5; г) (a<1) или (a>1.2) при a=1.5; д) (mod(a,7)=1) и (div(a,7)=1) при a=8; е) не ((a>b) и (a<9) или (а*а=4)) при a=5, b=4. [ Ответ ]
7.6. Запишите логические выражения, истинные только при выполнении указанных условий: а) x принадлежит отрезку [ a, b ] Ответ: (x>=a) и (x<=b); б) x лежит вне отрезка [ a, b ]; в) x принадлежит отрезку [ a, b ] или отрезку [ c, d ]; г) x лежит вне отрезков [ a, b ] и [ c, d ]; д) целое k является нечетным числом; е) целое k является трехзначным числом, кратным пяти; ж) элемент ai,j двумерного массива находится на пересечении нечетной строки и четного столбца; з) прямые a1x+b1y+c1=0 и a2x+b2y+c2=0 параллельны; и) из чисел a, b, c меньшим является с, а большим b; к) среди чисел a, b, c, d есть взаимно противоположные; л) среди целых чисел a, b, c есть хотя бы два четных; м) из отрезков с длинами a, b, c можно построить треугольник; н) треугольники со сторонами a1, b1, c1 и a2, b2, c2 подобны; о) точка с координатами (x,y) принадлежит внутренней области треугольника с вершинами A (0,5), B (5,0) и C (1,0); п) точка с координатами (x,y) принадлежит области, внешней по отношению к треугольнику с вершинами A (0,5), B (1,0) и C (5,0); р) четырехугольник со сторонами a, b, c и d является ромбом. [ Ответ ]
7.7. Начертите на плоскости (x,y) область, в которой и только в которой истинно указанное выражение. Границу, не принадлежащую этой области, изобразите пунктиром.
а) (x<=0) и (y>=0) Ответ:
| е) ((x-2)**2+y*y<=4) и (y>x/2) Ответ:
| б) (x>=0) или (y<=0) в) x+y>=0 г) (x+y>0) и (y<0) д) abs(x)+abs(y)>=1
| ж) (x*x+y*y<1) и (y>x*x); з) (y>=x) и (y+x>=0) и (y<=1); и) (abs(x)<=1) и (y<2); к) (x**2+y**2<4) и (x**2+y**2>1);
| [ Ответ ]
7.8. Запишите логическое выражение, которое принимает значение "истина" тогда и только тогда, когда точка с координатами (x, y) принадлежит заштрихованной области.
[ Ответ ]
7.9. Пусть a =3, b =5, c =7. Какие значения будут иметь эти переменные в результате выполнения последовательности операторов: а) a:=a+1; b:=a+b; c:=a+b; a:=sqrt(a) Решение: a =3+1=4, b =4+5=9, c =4+9=13, a = {корень из}4 =2. Ответ: а =2, b =9, c =13; б) с:=a*b+2; b:=b+1; a:=c-b**2; b:=b*a; в) b:=b+a; c:=c+b; b:=1/b*c; г) p:=c; c:=b; b:=a; a:=p; c:=a*b*c*p; д) c:=a**(b-3); b:=b-3; a:=(c+1)/2*b; c:=(a+b)*a; е) x:=a; a:=b; b:=c; c:=x; a:=sqrt(a+b+c+x-2); ж) b:=(a+c)**2; a:=lg(b**2)**2; c:=c*a*b. [ Ответ ]
7.10. Задайте с помощью операторов присваивания следующие действия: а) массив X=(x1, x2) преобразовать по правилу: в качестве x1 взять сумму, а в качестве х2 — произведение исходных компонент; Решение: c:=x[1]; x[1]:=x[1]+x[2]; x[2]:=c*x[2] б) поменять местами значения элементов массива X=(x1, x2); в) в массиве A(N) компоненту с номером i (1<i<N) заменить полусуммой исходных соседних с нею компонент, соседнюю справа компоненту заменить на нуль, а соседнюю слева компоненту увеличить на 0.5; г) u=max(x,y,z)+min(x-z,y+z,y,z); [ Ответ ]
7.11. Задайте с помощью команд если или выбор вычисления по формулам:
a)
|
| б)
|
| в)
| где
| г)
|
| д)
|
| е)
|
| ж)
|
| если точка лежит внутри круга радиусом r (r>0) с центром в точке (a,b) в противном случае
| [ Ответ ]
7.12. Постройте графики функций y(x), заданных командами если:
а)
если x<=-1 то y:=1/x**2 иначе если x<=2 то y:=x*x иначе y:=4 всевсе | в)
если x<-0.5 то y:=1/abs(x) иначе если x<1 то y:=2 иначе y:=1/(x-0.5) всевсе | Решение
| г)
если x<0 то y:=1 иначе если x<3.14 то y:=cos(x) иначе y:=-1 всевсе | б)
если x<-5 то y:=-5 иначе если x<0 то y:=x иначе если x<3 то y:=2*x иначе y:=6 все всевсе | д)
если abs(x)>2 то y:=x*x иначе если x<0 то y:=-2*x иначе если x>=1 то y:=4 иначе y:=4*x*x все всевсе | [ Ответ ]
7.13. Определите значение целочисленной переменной S после выполнения операторов:
а)
S:=128нц для i от 1 до 4 S:=div(S,2)кц | Решение
i
| S
|
|
|
| 128/2=64
|
| 64/2=32
|
| 32/2=16
|
| 16/2=8
| Ответ: S=8
| г)
S:=0нц для i от 1 до 2 нц для j от 2 до 3 S:=S+i+j кцкц | Решение
i
| j
| S
|
|
|
|
|
| 0+1+2=3
|
|
| 3+1+3=7
|
|
| 7+2+2=11
|
|
| 11+2+3=16
| Ответ: S=16
| б)
S:=1; a:=1нц для i от 1 до 3 S:=S+i*(i+1)*a a:=a+2кц | д)
нц для i от 1 до 3 S:=0 нц для j от 2 до 3 S:=S+i+j кц кц | в)
S:=1; a:=1нц для i от 1 до 3 S:=S+i нц для j oт 2 до 3 S:=S+j кцкц | е)
нц для i от 1 до 2 S:=0 нц для j oт 2 до 3 нц для k oт 1 до 2 S:=S+i+j+k кц кцкц | [ Ответ ]
7.14. Определите значение переменной S после выполнения операторов:
а)
i:=0; S:=0нц пока i<3 i:=i+1; S:=S+i*iкц | г)
S:=0; N:=125нц пока N>0 S:=S+mod(N,10) | S — сумма цифр N:=div(N,10) | числа Nкц | Решение
Условие i < 3
| i
| S
|
|
|
| 0 < 3? да
|
| 0+12=1
| 1 < 3? да
|
| 1+22=5
| 2 < 3? да
|
| 5+32=14
| 3 < 3? нет(кц)
|
|
| Ответ: S=14
| Решение
Условие N > 0
| S
| N
|
|
|
| 125 > 0? да
| 0+5=5
| 12
| 12 > 0? да
| 5+2=7
| 1
| 1 > 0? да
| 7+1=8
| 0
| 0 > 0? нет (кц)
|
|
| Ответ: S=8
| б)
S:=0; i:=1нц пока i>1 S:=S+1/i i:=i-1 кц | д)
а:=1; b:=1; S:=0;нц пока a<=5 a:=a+b; b:=b+a; S:=S+a+bкц | в)
S:=0; i:=1; j:=5нц пока i<j S:=S+i*j i:=i+1 j:=j-1кц | е)
a:=1; b:=1нц пока a+b<10 a:=a+1 b:=b+aкц S:=a+b | [ Ответ ]
7.15. Составте алгоритмы решения задач линейной структуры (условия этих задач заимствены из учебного пособия В.М. Заварыкина, В.Г. Житомирского и М.П. Лапчика "Основы информатики и вычислительной техники", 1989):
а) в треугольнике известны три стороны a, b и c; найти (в градусах) углы этого треугольника, используя формулы:
Пояснение. Обратите внимание на то, что стандартные тригонометрические функции arccos и arcsin возвращают вычисленное значение в радианной мере. Решение:
алг Углы треугольника(арг вещ a,b,c, рез вещ UgolA,UgolB,UgolC)нач вещ RadGr,UgolARad | RadGr — коэф. перевода угла из радианной меры в градусную | UgolARad — угол A (в радианах) RadGr:=180/3.14 UgolARad:=ArcCos((b*b+c*c-a*a)/(2*b*c)) UgolA:=UgolARad*RadGr UgolB:=ArcSin(b*sin(UgolARad)/a)*RadGr UgolC:=180-(UgolA+UgolB)кон б) в треугольнике известны две стороны a, b и угол C (в радианах) между ними; найти сторону c, углы A и B (в радианнах) и площадь треугольника, используя формулы:
с2 = a2 + b2 - 2ab cos C.
Пояснение. Сначала нужно найти сторону c, а затем остальные требуемые значения;
в) в треугольнике известны три стороны a, b и c; найти радиус описанной окружности и угол A (в градусах), используя формулы:
где
г) в правильной треугольной пирамиде известны сторона основания a и угол A (в градусах) наклона боковой грани к плоскости основания; найти объем и площадь полной поверхности пирамиды, используя формулы:
д) в усеченном конусе известны радиус оснований R и r и угол A (в радианах) наклона образующей к поверхности большого основания; найти объем и площадь боковой поверхности конуса, используя формулы:
e) в правильной четырехугольной пирамиде сторона основания равна a, а боковое ребро наклонено к плоскости основания под углом A; найти объем и площадь полной поверхности пирамиды и площадь сечения, проходящего через вершину пирамиды и диагональ основания d; использовать формулы:
[ Ответ ]
7.16. Составте алгоритм решения задач развлетвляющейся структуры:
а) определить, является ли треугольник с заданными сторонами a, b, c равнобедренным; Решение:
алг Треугольник(арг вещ a,b,c, рез лог Otvet) дано | a>0, b>0, c>0, a+b>c, a+c>b, b+c>a надо | Otvet = да, если треугольник равнобедренный | Otvet = нет, если треугольник не равноведренныйнач если (a=b) или (a=c) или (b=c) то Otvet:= да иначе Otvet:= нет всекон б) определить количество положительных чисел среди заданных чисел a, b и c;
в) меньшее из двух заданных неравных чисел увеличить вдвое, а большее оставить без изменения;
г) числа a и b — катеты одного прямоугольного треугольника, а c и d — другого; определить, являются ли эти треугольники подобными;
д) данны три точки на плоскости; определить, какая из них ближе к началу координат;
е) определить, принадлежит ли заданная точка (x,y) плоской фигуре, являющейся кольцом с центром в начале координат, с внутренним радиусом r1 и внешним радиусом r2;
ж) упорядочить по возрастанию последовательность трех чисел a, b и c. [ Ответ ]
Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|