Помогите пожалуйста составить алгоритм. который проверяет, является введенное число четным или нечетным. Не могу понять как записать, что остаток от деления на 2 должен быть 0. Составить нужно на алгоритмическом языке, я просто только начинаю учить.
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
#!/usr/bin/python # -*- coding: cp1251 -*- print «a = ?», ; a = input() aFoo = abs( a ) while aFoo > 1: aFoo = aFoo — 2 print a, «is», if aFoo == 1: print «odd» else: print «even» #
Регистрация: 09.10.2011
Сообщений: 4
На Паскале:
var
x:integer;
Begin
Writeln(‘Введите число’);
Readln(x);
If x mod 2 = 0 then // Если остаток от деления на 2 равен 0 (четное)
Writeln(x,’ — это четное число’)
else
writeln(x,’ — это нечетное число’);
end.
Регистрация: 10.10.2011
Сообщений: 2
Вывести нечетное число
Из двух чисел с разной четностью вывести на экран нечетное число.
Пользователь вводит четное и нечетное число. Последовательность их ввода может быть любой. Таким образом, неизвестно какая из двух переменных ( a или b ) содержит нечетное число. Чтобы выяснить это, используется конструкция условного ветвления (if-else), а также операция нахождения остатка от целочисленного деления (mod).
for if else чётные и нечётные числа Остаток от деления
Если результат нахождения остатка от деления значения переменной a на 2 неравен ( <> ) нулю, значит эта переменная содержит нечетное число. Иначе нечетное число находится в переменной b , и тогда его следует вывести на экран.
Программа на языке Паскаль:
var a, b: integer; begin writeln(‘Введите одно четное и одно нечетное число’); readln(a, b); if a mod 2 <> 0 then writeln(a, ‘ — нечетное число’) else writeln(b, ‘ — нечетное число’); end.
Примеры работы программы:
Введите одно четное и одно нечетное число 4 5 5 — нечетное число
Введите одно четное и одно нечетное число 5 4 5 — нечетное число
В данном случае предполагается, что пользователь осуществляет ввод правильно, то есть всегда вводит одно четное и одно нечетное число.
Если же ввод был некорректный (два четных или два нечетных числа), то программа будет работать неправильно. В случае двух четных чисел программа выведет второе. В случае двух нечетных — первое введенное. Чтобы избежать подобных недоразумений, программу можно усовершенствовать следующим образом:
var a, b: integer; begin writeln(‘Введите одно четное и одно нечетное число’); readln(a, b); if (a mod 2 = 0) and (b mod 2 <> 0) then writeln(b,’ — нечетное число’) else if (a mod 2 <> 0) and (b mod 2 = 0) then writeln(a,’ — нечетное число’) else writeln(‘Некорректный ввод’); end.
В данном случае в заголовках условного оператора проверяются оба числа: одно — на четность, другое — на нечетность. Если оба будут четные, или оба будут нечетные, то сработает тело вложенного оператора else.
Введите одно четное и одно нечетное число 3 5 Некорректный ввод
Введите одно четное и одно нечетное число 4 10 Некорректный ввод
Введите одно четное и одно нечетное число 8 13 13 — нечетное число
Источник: pas1.ru