Напишите программу, которая переводит переданное её целое число (возможно, отрицательное) в заданную систему счисления с любым основанием от 2 до 9. используйте процедуру. входные данные : 25 3 выход: 221 входные: -38 9 выходные: -42
Function Dec2n(dec,n:integer):string; var d:byte; ch:char; s,sgn:string; begin s:=''; if dec<0 then begin sgn:='-'; dec:=-dec end else sgn:=''; while dec>0 do begin d:=dec mod n; ch:=Chr(Ord('0')+d); s:=ch+s; dec:=dec div n end; Dec2n:=sgn+s end;
var m,n:integer; begin Write('Введитt целое десятичное число и основание для перевода (2-9): '); Read(m,n); Writeln(Dec2n(m,n)) end.
Для решения всех задач используется формула S = v*t, где S - объем файла, v - скорость передачи файла, t - время передачи. 1. 4 Мбайта = 4*1024 Кбайт = 4096 Кбайт S1 = v*t1, S2 = v*t2 S2 = (S1/t1)*t2 = (4096/100)*75 = 3072 Кбайт
var
d:byte;
ch:char;
s,sgn:string;
begin
s:='';
if dec<0 then begin sgn:='-'; dec:=-dec end
else sgn:='';
while dec>0 do
begin
d:=dec mod n;
ch:=Chr(Ord('0')+d);
s:=ch+s;
dec:=dec div n
end;
Dec2n:=sgn+s
end;
var
m,n:integer;
begin
Write('Введитt целое десятичное число и основание для перевода (2-9): ');
Read(m,n);
Writeln(Dec2n(m,n))
end.
Тестовое решение
25 3
221
-38 9
-42