Домашние задания: Информатика

Срочно хелп по паскалю а то фигня выходит в условиях, сам новичок, разобраться не могу

program Hello;
var a,b:integer;
begin
readln(a);
readln(b);
if a mod 2 = 1 and b mod 2 = 1 then
writeln(a,b);
if a mod 2 = 1 and b mod 2 = 0 then
writeln(a);
if a mod 2 = 0 and b mod 2 = 1 then
writeln(b);
if a mod 2 = 0 and b mod 2 = 0 then
writeln('Нет нечётных чисел');
end.

Ошибка:
Free Pascal Compiler version 3.2.2+dfsg-9ubuntu1 [2022/04/11] for x86_64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling main.pas
main.pas(7,16) Error: Incompatible types: got "Boolean" expected "Int64"
main.pas(9,16) Error: Incompatible types: got "Boolean" expected "Int64"
main.pas(11,16) Error: Incompatible types: got "Boolean" expected "Int64"
main.pas(13,16) Error: Incompatible types: got "Boolean" expected "Int64"
main.pas(15,4) Fatal: There were 4 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppcx64 returned an error exitcode
1)Попробуй скобки в ифах расставить.

2)writeln(a,b); - так разве можно? (На паскале со школы не писал - не помню).

Для точного выявления места ошибки можешь редуцировать код. Например, оставить только первое условие и первый вывод, который в нём содержится. Потом удалить вывод и заменить какой-то болванкой (типа write('bolvanka');). Так понятно станет хоть, где ошибка. (Но лучше понимать, что пишет компилятор (меня тоже касается:) )
Сурен Акопов
Сурен Акопов
917
Лучший ответ
У программистов есть закон: "Красивые программы лучше работают"
Почему? Да потому, что в программе, составленной по правилам языка, меньше ошибок.

Вот образец программы (программа ищет нечетные числа среди введенных).

program Hello;
var a, b:integer;
begin
Writeln ( ' Ввод a и b: ' );
Write ( ' a = '); ReadLn(a);
Write ( ' b = '); ReadLn(b);
Writeln ( ' Вывод нечетных: ');
if (a mod 2 = 1) and (b mod 2 = 1) then Writeln( ' a = ', a, ' b = ',b);
if (a mod 2 = 1) and (b mod 2 = 0) then Writeln(' a = ',a);
if (a mod 2 = 0) and (b mod 2 = 1) then Writeln(' b = ',b);
if (a mod 2 = 0) and (b mod 2 = 0) then Writeln('Нет нечётных чисел');
end.