1. Найдите значения выражений: а) (0 ИЛИ 1) И (0 ИЛИ 1) б) 0 ИЛИ 1 И 0 ИЛИ 1 в) 0 ИЛИ 1 И НЕ (0 ИЛИ 1) г) 1 ИЛИ 0 И 1 И 1 И 0 ИЛИ 1 д) ((1 ИЛИ 0) И (1 И 1)) е) (А ИЛИ 1) ИЛИ (В И 0) ж) ((А ИЛИ 0) ИЛИ В И 1) И 0
Прочитав текст, можно легко понять, что проще всего "зацепиться" за его фрагмент "я учился на 12 и 11". Кроме того, нигде не встречается цифр, больших двойки, следовательно основание системы р может быть 3 и более. Допустим, что система оценок была пятибалльной. Пусть p=3, тогда 12(3)=3+2=5, 11(3)=4 и это похоже на реальные числа. При р=4 получаем 12(4)=6 и это уже нарушает наше допущение о пятибалльной системе. Но посмотрим, что даст предположение р=3. 12(3) лет - это 5. 122 года - это 3²+2×3+2 = 17 лет - нормальный возраст для поступления в вуз. 21(3) год - это 3×2+1 = 7 лет - вполне допустимый срок для начала преподавания. 220(3) лет = 2×3²+2×3 = 24 года - путешествие было не коротким... 10011(3) лет = 3⁴+3+1 = 85 лет - вполне почтенный возраст.
В зависимости от версии компилятора языка Паскаль, вещественные числа по умолчанию выводятся в различном виде. Например, Турбо (Borland) Паскаль выводит их в "научном" представлении, т.е. в виде мантиссы, содержащей один разряд до запятой и десятичного порядка. PascalABC.Net, если может, выводит такие числа в виде привычной десятичной дроби. В приведенном ниже примере значение 4.03099999999977E+0001 читается следующим образом: . Для того, чтобы получать вывод в "привычном" виде, можно использовать форматирование. Для этого, в операторе вывода после значения переменной указывается конструкция вида m:n, где m- общее количество позиций, отводимое под запись числа (если 0 - то количество позиций определяется автоматически так, чтобы число поместилось), а n- количество позиций, отводимое под дробную часть. Такая запись может применяться как для общего описателя типа вещественных чисел real, так и для конкретного (например, double - чисел "двойной точности", т.е. восьмибайтных). В примере хорошо видно, как использование двойной точности отражается на выводе результата в "научном" формате .
Пример на Турбо Паскаль {$G+,N+} uses Crt;
procedure Sum1(a,b,c,d:real;var r:real); begin r:=a+b+c+d end;
procedure Sum2(a,b,c,d:double;var r:double); begin r:=a+b+c+d end;
var e,f,g,h,res1:real; p,q,r,s,res2:double; begin ClrScr; Write('e f g h= '); Read(e,f,g,h); Sum1(e,f,g,h,res1); Writeln('res1= ',res1,' = ',res1:0:2); Write('p q r s= '); Read(p,q,r,s); Sum2(p,q,r,s,res2); Writeln('res2= ',res2,' = ',res2:0:2); ReadKey end.
Тестовое решение: e f g h= 12.74 24.17 -5.6 9 res1= 4.03099999999977E+0001 = 40.31 p q r s= 12.74 24.17 -5.6 9 res2= 4.03100000000000E+0001 = 40.31
в а б
Объяснение: