Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
jhonjhonson
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 2
#1

Перевод с Pascal на C++ - C++

07.10.2013, 10:17. Просмотров 252. Ответов 0
Метки нет (Все метки)

Помогите с программой нужно переделать ее на C ++ builder
Код
Program F_An;
 uses CRT;
 type complex = record re, im: real;
  end;
 type Opis_comp = record nam:char;a,b:integer; par: real;
  end;
 const n=2; Ninp=1; Nout=2; Nf=21; f1=0.01; f2=100;
   Zapis: array [1..2] of Opis_comp=
            ((nam: 'R'; a:1; b:2; par:1),
             (nam: 'C'; a:2; b:0; par:0.159));
 var i,j,k, m, a, b  : integer;
   f,df,w,Kvid,Kdb: real;
   Cres,t, z, y1: complex;
  Y:array [0..n,0..n+1] of complex;

    Procedure CAdd(C1, C2: complex; var Cres:complex);
      begin Cres.Re:= C1.Re+C2.Re; CRes.Im :=C1.Im+C2. Im
      end;

    Procedure CMinus(C1, C2: complex; var Cres:complex);
      begin Cres.Re:= C1.Re-C2.Re; CRes.Im :=C1.Im-C2. Im
      end;

    Procedure CMult(c1, c2: complex; var Cres:complex);
      begin Cres.re:= c1.Re*c2.Re-c1.im*c2.im;
                CRes.im:= c1.re*c2.im+c2.re*c1.im
      end;

    Procedure CDiv(c1, c2: complex; var Cres:complex);
      var q:real;
      begin q:=c2.re*c2.re+c2.im*c2.im;
        Cres.re:= (c1.Re*c2.Re+c1.im*c2.im)/q;
        Cres.im:= (c1.im*c2.re-c1.re*c2.im)/q;
      end;

  Begin
   ClrScr;
   df:=exp((ln(f2)-ln(f1))/(Nf-1));
   f:=f1;
   for m:=1 to Nf do
   begin
     w:=2*Pi*f;
     for i:=0 to n do

     
     for j:=0 to n+1 do
         with Y[i,j] do
           begin re:=0; im:=0
           end;
     for i:=1 to 2 do
       begin
         with Zapis[i], y1 do
           begin
             case nam of
               'R': begin re:=1/Par; im:=0
                    end;
               'C': begin re:=0; im:=w*Par
                    end;
             end; {case}
           CAdd  (Y[a,a], y1, Y[a,a]);
           CAdd  (Y[b,b], y1, Y[b,b]);
           Cminus(Y[a,b], y1, Y[a,b]);
           Cminus(Y[b,a], y1, Y[b,a]);
         end; {with}
       end; { for i }
    Y[Ninp, n+1].re:=1;
    for k:=1 to n-1 do
      for i:=k+1 to n do
        begin
           CDiv(Y[i,k], Y[k,k], z);
           for j:=1 to n+1 do
              begin CMult(z, Y[k, j], t); CMinus(Y[i, j], t, Y[i, j])
              end;
      end;{direct step}
    for i:=n downto 1 do {invers step}
       begin
         z:=Y[i,n+1];
         for j:=i+1 to n do
            begin CMult(Y[i, j], Y[j, n+1], t); CAdd(z, t, z)
           end; {sum  for j }
         CDiv(z, Y[i, i], Y[i, n+1]);
       end; { for i }
    Cdiv(Y[Nout, n+1], Y[Ninp, n+1], y1);
    Kvid:=sqrt(sqr(y1.re)+sqr(y1.im));
    Kdb:=20*ln(Kvid)/ln(10);
    writeln('f',m:2,'=',f:7:3,' kGc    K= ', Kvid:5:3,'    Kdb=',Kdb:3:0,' dB');
    f:=f*df
   end; {for m to Nf}
    readln
  end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2013, 10:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перевод с Pascal на C++ (C++):

Перевод с С++ на Pascal - C++
Спичечная модель Профессор Самоделкин решил изготовить объемную модель кубиков из спичек, используя спички для рёбер кубиков. Длина...

Перевод из Pascal в С++ - C++
Можно пожалуйста перевести в С++ и сделать ее рандомной. Еще у меня не получается вывести на печать номера столбцов в которых заданы...

Перевод из Pascal в C++ - C++
Пж помогите перевести Program SoulCub; Var A,B,C:Real; Begin WriteLn('Введите числa A,B и C: '); ReadLn(A,B,C); If...

Перевод с Pascal на C++ - C++
Код на паскале, помогите его переписать в С ++ . Очень нужно ребят . Последняя задача. const mi = 100; type matrix = array of...

Перевод из Pascal в C++ - C++
Перевод из Pascal в C++ Здравствуйте, помогите пожалуйста с переводом, сам нисколько не знаю паскаль, только в этом году начал...

Перевод с Pascal на C++ - C++
Пишу программу. Принципиальна скорость. Дальнейшие пути оптимизации не наблюдаются. Сообственно код: type Numb = array of int64; ...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2013, 10:17
Привет! Вот еще темы с ответами:

Перевод из Pascal в C++ - C++
Добрый день, дорогие форумчане) Буду благодарен за перевод) uses crt; const nmax = 20; type mtr = array of integer;

Перевод с pascal на c++ - C++
Вообще не знаю pasсal, нужен перевод. program aaa; Type mas=array of integer; Var a: array of integer; s, d:mas; {массив элементов...

Перевод из Pascal на C++ - C++
Народ! Помогите пожалуйста перевести код из Паскаля в C++ const w:array of real=(1.5,-1,0.5); type fly=class ...

перевод из Pascal в C++ - C++
Здравствуйте!Задача: Прямоугольный садовый участок шириной N и длиной M метров разбит на квадраты со стороной 1 метр. На этом участке...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru