Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2015, 14:16   #1
АришаЯ
Пользователь
 
Регистрация: 16.05.2015
Сообщений: 11
По умолчанию скорректировать

помогите пожалуйста:
Код:
Program perevod;
Uses crt;
Const Hex:string='ABCDEF';
Var
    Init,PartOS,Null,BInit,Way:string;
    i,j,k,Diff,H:integer;
    fl:boolean;
    Act:byte;
    F:text;
procedure toBin(Dxn:integer; var Oxn:string);
var o,Rs:integer;
    StrI:array[0..255]of integer;
begin
  Oxn:='';
  for o:=0 to 255 do StrI[o]:=0;
  o:=0;
  if(Dxn<0)then Oxn:='-';
  Dxn:=abs(Dxn);
  repeat
    Rs:=Dxn mod 2;
    Dxn:=Dxn div 2;
    StrI[o]:=Rs;
    inc(o);
  until(Dxn=0);
  for Rs:=o-1 downto 0 do
    Oxn:=Oxn+Char(48+StrI[Rs]);
end;
procedure toDec(Inp:string; var Dec:integer);
var n,P,err:integer;
    fl:boolean;
    Uns:string;
begin
  Uns:='';
  Dec:=0;
  fl:=false;
  if(Inp[1]='-')then
  begin
    Delete(Inp,1,1);
    fl:=true;
  end;
  for n:=length(Inp) downto 1 do Uns:=Uns+Inp[n];
  for n:=0 to length(Uns)-1 do
  begin
    Val(Uns[n+1],P,Err);
    if(err<>0)then P:=9+Pos(Uns[n+1],Hex);
    Dec:=Dec+P*round(exp(n*ln(16)));
  end;
  if(fl)then Dec:=Dec*(-1);
end;
procedure toDop(Inp:string; var Dop:integer);
  var n,P,err:integer;
      fl:boolean;
  Uns:string;
   begin
       Uns:='';
       Dop:=0;
       fl:=false;
       if(Inp[1]='-')then
           begin
              Delete(Inp,1,1);
               fl:=true;
           end;
       for n:=length(Inp) downto 1 do Uns:=Uns+Inp[n];
       for n:=0 to length(Uns)-1 do
           begin
              Val(Uns[n+1],P,Err);
               if(err<>0)then P:=9+Pos(Uns[n+1],Hex);
              Dop:=Dec+P*round(exp(n*ln(16)));
           end;
       if(fl)then Dop:=Dop*(-1);
   end;
begin
  clrscr;
  writeln('Enter way to file:');
  readln(Way);
  assign(F,Way);
  reset(F);
  Read(F,Init);
  writeln('Enter the action:');
  readln(Act);
  for i:=1 to length(Init) do if(Init[i]=',')then Init[i]:=' ';
  k:=1;
  for i:=k to length(Init) do
  begin
  j:=0;
  Diff:=0;
  BInit:='';
  if(Init[i]<>' ')then
    begin
      for j:=i to length(Init) do
      begin
        if(((Init[j]=' ')and(Init[j+1]<>' '))or(j+1>length(Init)))and(i>=k)then
        begin
          k:=j;
          if(j+1>length(Init))then k:=k+1;
          PartOS:=Copy(Init,i,k-i);
          ToDec(PartOS,H);
          case Act of
            1: Str(H,BInit);
            2: ToBin(H,BInit);
            3: ToTWC(H,BInit);
          end;
          Null:=Null+PartOS+'='+BInit+' ';
          H:=0;
          break;
        end;
      end;
    end;
  end;
  writeln(Null);
  Append(F);
  writeln(F,' ');
  write(F,Null);
  Close(F);
  readkey;
end.

Последний раз редактировалось Poma][a; 30.05.2015 в 14:20.
АришаЯ вне форума Ответить с цитированием
Старый 30.05.2015, 14:36   #2
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,680
По умолчанию

А подробнее, что нужно?
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно скорректировать код CSS, чтобы кнопка корректно отображалась в браузере SAFARI ? pnzh385 HTML и CSS 4 16.04.2015 23:16
Помогите скорректировать код Alexey Ivanovich Общие вопросы C/C++ 1 29.01.2015 14:08
Как скорректировать положение картинок в разных браузерах? Mike_Mike HTML и CSS 3 18.09.2013 16:55
Скорректировать код окраски повторяющих значений в листе.. Slavatron1984 Microsoft Office Excel 2 19.12.2011 17:06
ПОМОГИТЕ СКОРРЕКТИРОВАТЬ ФОРМУЛУ alexunknown Microsoft Office Excel 3 24.12.2009 17:49