Перевести из одних единиц измерения в другие в зависимости от выбора пользователя

Задача: 

В зависимости от того, в каких единицах измерения вводится значение, перевести его в другие единицы измерения.

В данном случае переводится объем информации (байты, килобайты, мегабайты и гигабайты).

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

Если пользователь ввел значение в байтах, то надо перевести его в килобайты, мегабайты и гигабайты. 1Кб = 1024 байта, 1Мб = 1024Кб = 1024 * 1024 байта и т. д. Значит надо постепенно делить на 1024.

Если введено значение в килобайтах, то оно переводится в байты путем умножения на 1024, а в мегабайты деления. И т. д.

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

var
    units: byte;
        qty: real;
 
begin
    writeln('1 - bytes'); writeln('2 - kilobytes');
    writeln('3 - megabytes'); writeln('4 - gigabytes');
    write('Select: '); readln(units);
 
    if units = 1 then begin
                write('How many bytes: '); readln(qty);
                qty := qty / 1024;
                writeln('Kilobytes: ', qty:10:2);
                qty := qty / 1024;
                writeln('Megabytes: ', qty:10:2);
                qty := qty / 1024;
                writeln('Gigabytes: ', qty:10:2);
        end
        else 
                if units = 2 then begin
                        write('How many Kilobytes: '); readln(qty);
                        qty := qty * 1024;
                        writeln('Bytes: ', qty:10:2);
                        qty := qty / 1024 / 1024;
                        writeln('Megabytes: ', qty:10:2);
                        qty := qty / 1024;
                        writeln('Gigabytes: ', qty:10:2);
                end
                else 
                        if units = 3 then begin
                                write('How many Megabytes: '); readln(qty);
                                qty := qty * 1024 * 1024;
                                writeln('Bytes: ', qty:10:2);
                                qty := qty / 1024;
                                writeln('Kilobytes: ', qty:10:2);
                                qty := qty / 1024 / 1024;
                                writeln('Gigabytes: ', qty:10:2);
                        end
                        else
                                if units = 4 then begin
                                        write('How many Gigabytes: '); readln(qty);
                                        qty := qty * 1024 * 1024 * 1024;
                                        writeln('Bytes: ', qty:10:2);
                                        qty := qty / 1024;
                                        writeln('Kilobytes: ', qty:10:2);
                                        qty := qty / 1024;
                                        writeln('Megabytes: ', qty:10:2);
                                end;
end.

Комментарии

проще!

Можно сделать гораздо проще