Вывести нечетное число

Задача: 

Из двух чисел с разной четностью вывести на экран нечетное число.

Описание переменных: 

a, b - данные числа

Алгоритм решения задачи: 

Пользователь вводит четное и нечетное число. Последовательность их ввода может быть любой. Таким образом, неизвестно какая из двух переменных (a или b) содержит нечетное число. Чтобы выяснить это, используется конструкция условного ветвления (if-else), а также операция нахождения остатка от целочисленного деления (mod).

Если результат нахождения остатка от деления значения переменной a на 2 равен нулю, значит, эта переменная содержит четное число. Тогда нечетное число находится в переменной b и его следует вывести на экран. Если же результат нахождения остатка не равен нулю, значит, a содержит нечетное число. Оно выводится в ветке else.

Программа на языке Паскаль: 

var a, b: integer;
begin
	writeln('Введите одно четное и одно нечетное числа');
	readln(a, b);
	if a mod 2 = 0 then
		writeln(b,' - нечетное число')
	else
		writeln(a,' - нечетное число');
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
Некорректный ввод