Помогите пожалуста кому нетрудно

Тема в разделе "Другие задачи", создана пользователем ScorpionL, 26 апр 2010.

  1. ScorpionL

    ScorpionL Гость

    Помогите пожалуста необходимо переделать прогаму из паскаля на С++. Вдолгу неостанусь. Вот код

    Код (Delphi):
    Procedure Effect( Var z:Vector; n:Integer );
    Const k :LongInt=0; {Количество перестановок}
    Var
    p,d :Vector;
    pm, dm,zpm : Integer;
    i,m,w : Integer;
    begin;
    for i:=1 to n do begin z[i]:=i; p[i]:=i; d[i]:=-1; end;
    d[1]:=0;
    m:=n+1;
    z[0]:=m; z[n+1]:=m;
    while m<>1 do begin
    { Печать перестановки }
    k:=k+1; Write(f,k,' ) `);
    for i:=l to n do Write(f,z[i],'
    `); WriteLn(f);
    m: =n;
    while z [p [m] +d [m] ] >m do begin
    d[m]:=-d[m]; m:=m-l; end;
    pm:=p[m]; dm:=pm+d[m]; w:=z[pm];
    z [pm] : =z [dm]; z[dm]:=w;
    zpm:=z[pm]; w:=p[zpm]; p[zpm]:=pm; p[m]:=w;
    end;
    end;{Effect}
    Var {Main}
    z :Vector;
    n :Integer; {Длина перестановки}
    Hour,Minute,Second,SeclOO :Word;
    rHour,rMinute,rSecond,rSec100 :Word;
    delta :LongInt;
    begin
    Assign(f,'Effect.in' );
    Reset(f); {Файл открыт для чтения}
    ReadLn(f,n); {Чтение длины перестановки}
    Close(f);
    Assign(f,'Effect.out' );
    Rewrite(f); {Файл открыт для записи}
    GetTime(Hour,Minute,Second,Sec100);
    Effect(z,n);
    GetTime(rHour,rMinute,rSecond,rSec100);
    delta:=rHour-Hour;
    delta:=delta*60+rMinute-Minute;
    delta:=delta*60+rSecond-Second;
    delta:=delta*100+rSec100-Sec100;
    WriteLn(f,'Время счета=',delta div 100,'.',
    delta mod 100,' сек');
    Close(f);
    end.
     
Загрузка...
Похожие Темы - Помогите пожалуста кому
  1. limbra
    Ответов:
    3
    Просмотров:
    43
  2. NylevoiChelovek
    Ответов:
    4
    Просмотров:
    93
  3. Ruska132
    Ответов:
    34
    Просмотров:
    255
  4. gURaBA_N
    Ответов:
    7
    Просмотров:
    141
  5. uxbmw3w
    Ответов:
    0
    Просмотров:
    60

Поделиться этой страницей