ВВЕРХ
ВНИЗ
  • Home
  • Boolean
  • Boolean 12 - 15

Является ли число положительным?

На этой странице мы решаем задачи Boolean12 - Boolean15 из задачника Абрамяна, где рассматривается проверка трех чисел: положительные или отрицательные.

Boolean12. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Каждое из чисел A, B, C положительное».

Код Pascal
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
var
  A, B, C: integer;

begin
  writeln('Введите целые числа:');
  write('A = ');
  readln(A);
  write('B = ');
  readln(B);
  write('C = ');
  readln(C);
  writeln;
  { Поскольку условия A>0, B>0 и C>0 должны выполнятся 
  одновременно, то объединяем их оператором and: }
  writeln('Каждое из чисел положительное? ', 
    (A > 0)and(B > 0)and(C > 0)); { <-- Выводим значение }
  readln
end.

Boolean13. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Хотя бы одно из чисел A, B, C положительное».

Код Pascal
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
var
  A, B, C: integer;

begin
  writeln('Введите целые числа A, B, C:');
  readln(A, B, C); { <-- Вводим три целые числа A, B, C }
  writeln;
  { Поскольку среди условий A>0, B>0 и C>0 должно выполнятся 
  хотя бы одно, то объединяем их оператором or (логическое 
  "или"). Если получим результат True, то среди введенных чисел
  есть положительное, в противном случае мы получим False: }
  writeln('Хотя бы одно из чисел A, B, C положительное? ',
    (A > 0)or(B > 0)or(C > 0));
  readln
end.

Boolean14. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно одно из чисел A, B, C положительное».

Код Pascal
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
var
  A, B, C: integer; { <-- Целые числа для ввода }
  f, g, h: boolean; { <-- Логические переменные }

begin
  writeln('Введите целые числа A, B, C:');
  readln(A, B, C); { <-- Вводим три целые числа A, B, C }
  { Составляем три выражения, каждое из которых ознает,
  что только одно из чисел положительное: }
  f := (A > 0)and(B <= 0)and(C <= 0); { <== «только A > 0» }
  g := (B > 0)and(A <= 0)and(C <= 0); { <== «только B > 0» }
  h := (C > 0)and(A <= 0)and(B <= 0); { <== «только C > 0» }
  writeln;
  { Поскольку среди условий f, g и h может выполнятся только
  одно, то объединяем их оператором xor ("исключающее или"): }
  writeln('Ровно одно из чисел положительное? ', f xor g xor h);
  readln
end.

Boolean15. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно два из чисел A, B, C являются положительными».

Код Pascal
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
var
  A, B, C: integer;
  f, g, h: boolean;

begin
  writeln('Введите целые числа A, B, C:');
  readln(A, B, C);
  f := (A > 0)and(B > 0)and(C <= 0); { <== A>0, B>0 и C<0 }
  g := (B > 0)and(C > 0)and(A <= 0); { <== B>0, C>0 и A<0 }
  h := (C > 0)and(A > 0)and(B <= 0); { <== C>0, A>0 и B<0 }
  writeln;
  { Поскольку среди условий f, g и h может выполнятся только 
  одно, то объединяем их оператором xor ("исключающее или"): }
  writeln('Ровно два из чисел положительные? ', f xor g xor h);
  readln
end.

Как в и в задаче Boolean14, так и в Boolean15 вместо оператора xor с тем же успехом можно использовать оператор or, поскольку из трех выражений есть одно истиное.




Яндекс.Метрика