Другие языки программирования и технологии

помогите пожалуйста с кодами программ в паскале

программа №1
program z2;
var a,b:integer;
Begin
write ('введите значение a= ');
read(a);
write ('введите значение b= ');
read (b);
if (a<b)>b) then (b:=a);
end.
В восьмой строке ошибка - неверное выражение. А задача была следующая :даны две переменные целого типа : А и В. Если их значения не равны, то присвоить каждой переменной максимальное из этих значений, а если равны, то присвоить переменным нулевые значения.

программа №2
program z3;
var a,m: integer;
Begin
write ('введите номер единицы массы a= ');
read (a);
write ('введите номер единицы массы m= ');
read (m);
if a=2 then a:=a*1000000
else if a=3 then a:=a*1000
else if a=4 then a:=a/1000
else if a=5 then a:=a/100;
writeln (' ',a);
case a of
1: writeln ('килограмм');
2: writeln (' миллиграмм');
3: writeln ('грамм');
4: writeln (' тонна') ;
5: writeln ('центнер') ;
End.
Ошибка в 10 строке - попытка присвоить переменной типа integer выражение типа real. Задача: единицы массы пронумерованы следующим образом: 1-кг, 2-мг, 3-г, 4-т, 5-ц. Дан номер единицы массы и масса тела М в этих единицах. Вывести массу данного тела в кг.
1) Чтобы код нормально вставлялся, вставляй пробелы между знаками <, >, [, ].
var
    a, b: integer;
begin
    write ('введите значение a= ');
    read(a);
    write ('введите значение b= ');
    read (b);
    if a < b then
        b := a
    else if b < a then
        a := b
    else begin
        a := 0;
        b := 0;
    end;
    write('сейчас a = ', a, '; b = ', b);
end.

2) У тебя просят вывести массу в килограммах, а ты делаешь наоборот из кг переводишь в выбранную единицу. В результате деления у тебя получается значения с плавающей запятой, и его нельзя присвоить целочисленной переменной, поэтому и ошибка. Кроме того у тебя какой-то case недоделанный и полная путаница с использованием переменных.
var
    a: integer;
    m: real;
begin
    write('введите единицу (1-кг, 2-мг, 3-г, 4-т, 5-ц) : ');
    read (a);
    write ('введите массу: ');
    read (m);
    case a of
        1: writeln(m, ' кг');
        2: writeln(m / 1000000:0:6, ' кг');
        3: writeln(m / 1000:0:3, ' кг');
        4: writeln(m * 1000:0:0, ' кг');
        5: writeln(m * 100:0:0, ' кг');
        else writeln('неверно задана единица измерения');
    end;
end.
МШ
Мишаня Шубцов
52 645
Лучший ответ
в первом скобки нет, правильно так if ((a<b)>b) then (b:=a);
а вообще условие другое должно быть
program z2;
var a,b:integer;
Begin
write ('введите значение a= ');
read(a);
write ('введите значение b= ');
read (b);
if a<>b then
if (a>b) then (b:=a)
else a:=b
else
a:=0;
b:=0;
end.
в последней не вижу ошибки, в 11 же не ругается?