Упражнения
Примеры записи логических выражений, истинных при выполнении указанных условий.
Условие | Запись на школьном алгоритмическом языке |
Дробная часть вещественого числа 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) кц | Решение
Ответ: S=8 | г) S:=0нц для i от 1 до 2нц для j от 2 до 3 S:=S+i+jкц кц | Решение
Ответ: 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 кц | ||||||||||||||||||||||||||||||||||||
Решение
Ответ: S=14 | Решение
Ответ: 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; найти (в градусах) углы этого треугольника, используя формулы:
С=180o-(А+В). |
Пояснение. Обратите внимание на то, что стандартные тригонометрические функции arccos и arcsin возвращают вычисленное значение в радианной мере.
Решение:
б) в треугольнике известны две стороны a, b и угол C (в радианах) между ними; найти сторону c, углы A и B (в радианах) и площадь треугольника, используя формулы:
с2 = a2 + b2 - 2ab cos C.
Пояснение. Сначала нужно найти сторону c , а затем остальные требуемые значения;
в) в треугольнике известны три стороны a, b и c; найти радиус описанной окружности и угол A (в градусах), используя формулы:
где
г) в правильной треугольной пирамиде известны сторона основания a и угол A (в градусах) наклона боковой грани к плоскости основания; найти объем и площадь полной поверхности пирамиды, используя формулы:
V=Socн· H/2; | ||
где | ||
д) в усеченном конусе известны радиусы оснований R и r и угол A (в радианах) наклона образующей к поверхности большего основания; найти объем и площадь боковой поверхности конуса, используя формулы:
где | ||
e) в правильной четырехугольной пирамиде сторона основания равна a , а боковое ребро наклонено к плоскости основания под углом A ; найти объем и площадь полной поверхности пирамиды и площадь сечения, проходящего через вершину пирамиды и диагональ основания d ; использовать формулы:
[ Ответ ]
7.16. Составьте алгоритм решения задач развлетвляющейся структуры:
а) определить, является ли треугольник с заданными сторонами a, b, c равнобедренным;
Решение:
б) определить количество положительных чисел среди заданных чисел a, b и c;
в) меньшее из двух заданных неравных чисел увеличить вдвое, а большее оставить без изменения;
г) числа a и b — катеты одного прямоугольного треугольника, а c и d — другого; определить, являются ли эти треугольники подобными;
д) даны три точки на плоскости; определить, какая из них ближе к началу координат;
е) определить, принадлежит ли заданная точка (x, y) плоской фигуре, являющейся кольцом с центром в начале координат, с внутренним радиусом r1 и внешним радиусом r2 ;
ж) упорядочить по возрастанию последовательность трех чисел a, b и c.
[ Ответ ]