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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2011, 18:03   #1
Kimi_kun
Новичок
Джуниор
 
Регистрация: 21.12.2011
Сообщений: 1
По умолчанию Переписать программу с Pascal на С++.

Здравствуйте. Есть программка на паскале, помогите пожалуйста её переписать на С++. Заранее спасибо!

Код:
program MethodFR1;

uses CRT, DOS;

Var
Mon1, Sop1, X, Y, Yp, D, Dv, Ds : array[1..20] of real;
SumY, SumX, SumX2, SumXY, SumD2 : real;
r1, r2, S, S1, S2, r, SumY2, SumDv : real;
i, n : integer;
dex : text;
FileName : string;
Const t:array[1..10] of real=(12.7,4.3,3.18,2.78,2.57,2.45,2.36,2.31,2.26,2.23);

Begin
Writeln('Введите имя файла данных');
Read(FileName);
assign(dev,Filename);
reset(dev);
read(dev,n);
for i:=1 to n do begin
   read(dev,Mon1[i]);
end;
for i:=1 to n do begin
   read(dev,Sop1[i]);
end;
SumY:=0.0;
SumX:=0.0;
SumX2:=0.0;
SumY2:=0.0;
SumXY:=0.0;
SumD2:=0.0;
SumDv:=0.0;
for i:=1 to n do begin
   Y[i]:=(Mon1[i]/(1-Mon1[i]))*(((1-Sop1[i])/Sop1[i])-1);
   X[i];=-(Sqr(Mon1[i]/(1-Mon1[i]))*((1-Sop1[i])/Sop1[i]));
   SumX:=SumX+X[i];
   SumY:=SumY+Y[i];
   SumX2:=SumX2+Sqr(X[i]);
   SumY2:=SumY2+Sqr(Y[i]);
   SumXY:=SumXY+X[i]*Y[i];
end;
r1:=(n*SumXY-SumY*SumX)/(n*SumX2-Sqr(SumX));
r2:=(SumX2*SumY-SumXY*SumX)/(n*SumX2-Sqr(SumX));
for i:=1 to n do begin
   Yp[i]:=r1*X[i]+r2;
   D[i]:=Yp[i]-Y[i];
   SumD2:=SumD2+Sqr(D[i]);
Dv[i]:=(1-Mon1[i])-r2*Sqr(1-Sop1[i])+(1-Sop1[i])*Sop1[i];
Ds[i]:=(r2*Sqr(1-Sop1[i])+2*(1-Sop1[i])*Sop1[i]+r1*Sqr(Sop1[i]));
   Dv[i]:=Dv[i]/Ds[i];
   SumDv:=SumDv+Sqr(Dv[i]);
end;
S:=Sqrt(SumD2/(n-2));
S1:=Sqrt(n*Sqr(S)/(n*SumX2-Sqr(SumX)));
S2:=Sqrt(SumX2*Sqr(S)/(n*SumX2-Sqr(SumX)));
r:=r1*Sqrt((n*SumX2-Sqr(SumX))/(n*SumY2-Sqr(SumY)));
Writeln('Значения констант сополимеризации по методу FR1');
Writeln('r1=',r1:6:4,' +/- ',S1*t[n-1]:6:4);
Writeln('r2=',r2:6:4,' +/- ',S2*t[n-1]:6:4);
Writeln('Дисперсия: S=',S);
Writeln('Сумма вертикальных отклонений: Sv=', SumDv);
Writeln('Коэффициент корреляции: r=', r:6:4);
Close(dev)
end.
Kimi_kun вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переписать программу попроще fasty Помощь студентам 6 20.12.2011 22:54
переписать программу геннадий522 Visual C++ 2 18.12.2011 14:46
переписать программу d0nDi Общие вопросы Delphi 1 06.08.2011 22:55
Нужно переписать программу с pascal на С++ ALiKa ALiK Помощь студентам 2 02.05.2010 22:01
переписать программу с VB на delphi qpush Помощь студентам 1 21.04.2010 23:57