Ребята,помогите. Срочно нужна помощь. Проверить является ли число нечётным, при этом...

0 голосов
65 просмотров

Ребята,помогите. Срочно нужна помощь. Проверить является ли число нечётным, при этом условие проверки x mod 2 = 0 не использовать! (программа на Паскале). Как тогда????


спросил от (17 баллов) в категории Информатика

2 Ответы

0 голосов
ответил от Начинающий (246 баллов)
 
Лучший ответ

USES CRT;
VAR x:integer;

BEGIN
CLRSCR;
Writeln('‚Введите число ');
Readln(x);
if x/2 = Int(x/2) then Writeln('Четное')
                  else Writeln('Не четное');

READLN;
END.

оставил комментарий от (17 баллов)

Что означет int?

оставил комментарий от Начинающий (246 баллов)

Функция которая округляет число до целого

оставил комментарий от Отличник (5.1k баллов)

выделение целой части, правда результат будет вещественный

оставил комментарий от Отличник (5.1k баллов)

не округляет!

оставил комментарий от Отличник (5.1k баллов)

отсекает дробную

оставил комментарий от Отличник (5.1k баллов)

а округлением занимается Round

оставил комментарий от Начинающий (246 баллов)

да отсекает)

оставил комментарий от Отличник (5.1k баллов)

только в этом коде очень спорный момент есть - в сравнении вещественных чисел

оставил комментарий от Отличник (5.1k баллов)

а т.к. вещественные числа имеют машинное округление, то не всегда 2 будет равно 2 в вещественном представлении

0 голосов
ответил от Отличник (5.1k баллов)

Можно и проще...
Var X : Integer;
Begin
  Readln(X);
  While X>=2 do X:=X-2;
  If X=0 then Writeln('Чётное') else Writeln('Нечётное');
end.

...