Vol4enok123
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Ребята, помогите. пожалуйста, прогу с Паскаля на Си перевести! ОЧЕНЬ НУЖНО!! program top; var dt:array [1..16]of real; p,y,t,z:array[0..8,0..16] of real; i,j,n,L,k,f,m:integer; Rz:array [1..4,1..8,1..8]of real; Pmin,Pmax,dp,a: real; begin for i:=1 to 8 do begin for j:=1 to 8 do begin write(' p',i,j,'='); read(p[i,j]); end end; writeln ('Pmax=',Pmax); readln(Pmax); writeln ('Pmin=',Pmin); readln(Pmin); writeln ('L=',L); readln(L); dp:=(Pmax-Pmin)/L; for i:=1 to L do begin dt[i]:=4*(dp*i-dp*(i-1)) end; n:=1; for i:=1 to 4 do begin for j:=1 to 2*n do begin a:= j mod 2; if a=0 then y[i,j]:=0 else y[i,j]:=1; end; n:=n*2; end; n:=1; for k:=1 to 4 do begin for f:=1 to 16 do begin for i:=1 to 8 do begin for j:=1 to 8 do begin t[i,j]:=4*p[i,j]; if t[i,j]< dt[f]*f then m:=f div n; Rz[k,i,j]:=t[i,j]*y[k,m]; if (y[k,m]>0) or (y[k,m]<0) then Rz[k,i,j]:=1; end; end; end; n:=n*2; for i:=1 to 8 do begin for j:=1 to 8 do begin if j=8 then writeln(Rz[k,i,j]:1:0) else write(' ',Rz[k,i,j]:1:0); end; end; end; end. |