• Предмет: Информатика
  • Автор: stepanovccc
  • Вопрос задан 2 года назад

Запишите на языке Pascal логическое выражение, имеющее значение true при выполнении указанного условия и false в противном случае. Результат вычисления выражения присвойте логической переменной `F`.
1) `a` делится на все числа меньше `7`.
2) `(x, y)` находится внутри единичной окружности с центром в `0`, а `z` целое число.
3) В трёхзначном числе есть две одинаковые цифры.
4) Точки `(x1, y1)`, `(x2, y2)`, `(x3, y3)` лежат на одной прямой.
5) `x` или трёхзначное чётное число или четырёхзначное нечётное.

Ответы

Ответ дал: zhoramalushevpegkpk
3

Ответ:

{#1 Деление на числа меньше 7}

begin

var F: boolean;

var a: integer; read(a);

 for var x := 7 downto 1 do

 begin

   F := (a mod x = 0) ? true : false;

   if F <> true then break;

 end;

end.

{#2 Находится ли точка внутри окружности}

begin

 var F: boolean;

 var z: cardinal;

 var x,y: double; read(x,y,z);

  x := (x<1)? x*-1:x;

  y := (y<1)? y*-1:y;

  if (x<z) and (y<z) then  

 F := true;

end.

{#3 В трехзначном числе есть три одинаковые цифры}

begin

 var F: boolean;

 var n: integer; read(n);

 var s := n.ToString;

 if (s[1] = s[2])  

    or (s[2] = s[3])  

     or (s[1] = s[3]) then

 F := true;

end.

{#4 Точки лежат на одной прямой}

begin

 var F: boolean;

 var x1,y1,x2,y2,x3,y3: integer;

 read (x1,y1,x2,y2,x3,y3);

 if (x2 - x1)*(y3 - y1) - (x3 - x1)*(y2 - y1) = 0 then

 F := true;

end.

{#5 Х или трёхзначное чётное число или четырёхзначное нечётное}

begin

var F: boolean;

var x:integer; read(x);

var s:=x.ToString;

if ((length(s) = 3) and (x mod 2 = 0)) or ((length(s) = 4) and (x mod 2 <> 0)) then

F := true;

end.

Приложения:

zhoramalushevpegkpk: После введения переменных поставил чтение, если значения будут даны - не забудьте его убрать)
stepanovccc: спасибо!
Вас заинтересует