Написать программу в паскале,чтобы переводила из бит в байты в мбайты кбайты,вообще из бит-кбайт в кбайты-бит и наоборот.напимер ввожу 2 мбайт,хочу перевести в кбайты.

pavlov0202 pavlov0202    3   03.08.2019 05:00    7

Ответы
усенок усенок  30.09.2020 07:03
Var a:integer;
begin
write('a = ');
readln(a);
writeln('Укажите направление перевода:');
writeln('1 - бит -> байт, Кбайт, Мбайт');
writeln('2 - байт -> бит, Кбайт, Мбайт');
writeln('3 - Кбайт -> бит, байт, Мбайт');
writeln('4 - Мбайт -> бит, байт, Кбайт');
readln(n);
case n of
 1: writeln(a,' бит = ',a/8,' байт, ',a/8/1024,' Кбайт, ',a/8/1024/1024,' Мбайт');
 2: writeln(a,' байт = ',a*8,' бит, ',a/1024,' Кбайт, ',a/1024/1024,' Мбайт');
 3: writeln(a,' Кбайт = ',a*8*1024,' бит, ',a*1024,' байт, ',a/1024,' Мбайт');
 4: writeln(a,' Мбайт = ',a*8*1024*1024,' бит, ',a*1024*1024,' байт, ',a*1024,' Кбайт');
 else writeln('Неверный номер');
 end;
end.

Пример:
a = 2048
Укажите направление перевода:
1 - бит -> байт, Кбайт, Мбайт
2 - байт -> бит, Кбайт, Мбайт
3 - Кбайт -> бит, байт, Мбайт
4 - Мбайт -> бит, байт, Кбайт
3
2048 Кбайт = 16777216 бит, 2097152 байт, 2 Мбайт
ПОКАЗАТЬ ОТВЕТЫ
mksmsslvp0b481 mksmsslvp0b481  30.09.2020 07:03
Var n_for_1, n_for_2 : integer;
 number : real;
// 1 страница программы
procedure FirstListOfMenu;
begin
writeln('1. Перевод из битов...');
writeln('2. Перевод из байтов...');
writeln('3. Перевод из килобайтов...');
writeln('4. Перевод из мегабайтов...');
writeln('5. Перевод из гигабайтов...');
write('Ввод >> ');
end;
// 2 страница программы
procedure SecondListOfMenu;
begin
writeln('1_...в биты.');
writeln('2_...в байты.');
writeln('3_...в килобайты');
writeln('4_...в мегабайты');
writeln('5_...в гигабайты');
write('Ввод >> ');
end;// переводprocedure Translate(a, b : integer; value : real);
begin
 case a of
  1 : begin
   case b of
    1 : write('Вы переводите из битов в биты!');
    2 : write(value : 0 : 2, ' bit = ', (value / 8) : 0 : 10, 'byte.');
    3 : write(value : 0 : 2, ' bit = ', (value / 8 / 1024) : 0 : 10, 'kByte');
    4 : write(value : 0 : 2, ' bit = ', (value / 8 / 1024 / 1024) : 0 : 10, 'mByte');
    5 : write(value : 0 : 2, ' bit = ', (value / 8 / 1024 / 1024 / 1024) : 0 : 10, 'gByte');
    else write('Выбран неверный режим!');
   end;
   end;
  2 : begin
   case b of
    1 : write(value : 0 : 2, ' byte = ', (value * 8) : 0 : 10, 'bit.');
    2 : write('Вы переводите из байтов в байты!');
    3 : write(value : 0 : 2, ' byte = ', (value / 1024) : 0 : 10, 'kByte');
    4 : write(value : 0 : 2, ' byte = ', (value / 1024 / 1024) : 0 : 10, 'mByte');
    5 : write(value : 0 : 2, ' byte = ', (value / 1024 / 1024 / 1024) : 0 : 10, 'gByte');
    else write('Выбран неверный режим!');
   end;
   end;
  3 : begin
   case b of
    1 : write(value : 0 : 2, ' kbyte = ', (value * 8 * 1024) : 0 : 10, 'bit.');
    2 : write(value : 0 : 2, ' kbyte = ', (value * 1024) : 0 : 10, 'byte');
    3 : write('Вы переводите из килобайтов в килобайты!');
    4 : write(value : 0 : 2, ' kbyte = ', (value / 1024) : 0 : 10, 'mByte');
    5 : write(value : 0 : 2, ' kbyte = ', (value / 1024 / 1024) : 0 : 10, 'gByte');
    else write('Выбран неверный режим!');
   end;
   end;
  4 : begin
   case b of
    1 : write(value : 0 : 2, ' mbyte = ', (value * 8 * 1024 * 1024) : 0 : 10, 'bit.');
    2 : write(value : 0 : 2, ' mbyte = ', (value * 1024 * 1024) : 0 : 10, 'byte');
    3 : write(value : 0 : 2, ' mbyte = ', (value * 1024) : 0 : 10, 'kbyte');
    4 : write('Вы переводите из мегабайтов в мегабайты!');
    5 : write(value : 0 : 2, ' mbyte = ', (value / 1024) : 0 : 10, 'gByte');
    else write('Выбран неверный режим!');
   end;
   end;
  5 : begin
   case b of
    1 : write(value : 0 : 2, ' gbyte = ', (value * 8 * 1024 * 1024 * 1024) : 0 : 10, 'bit.');
    2 : write(value : 0 : 2, ' gbyte = ', (value * 1024 * 1024 * 1024) : 0 : 10, 'byte');
    3 : write(value : 0 : 2, ' gbyte = ', (value * 1024 * 1024) : 0 : 10, 'kbyte');
    4 : write(value : 0 : 2, ' gbyte = ', (value * 1024) : 0 : 10, 'gByte'); 
    5 : write('Вы переводите из гигабайтов в гигабайты!');
    else write('Выбран неверный режим!');
   end;
   end;
 end;
end;// тело главной функцииbegin
FirstListOfMenu;
readln(n_for_1);
SecondListOfMenu;
readln(n_for_2);writeln;
write('Введите число для перевода >> ');
readln(number);writeln;
Translate(n_for_1, n_for_2, number);end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика