Форум программистов, компьютерный форум CyberForum.ru

перевод в C++ из Pascal - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
=IS=
0 / 0 / 0
Регистрация: 25.05.2010
Сообщений: 12
23.05.2012, 10:57     перевод в C++ из Pascal #1
Кому не сложно переведите пожалуйста программу в С++. Она готова и полностью рабочая.
вот на всякий случай сама задача:
Таблица футбольного чемпионата задана квадратной матрицей порядка n, в которой все элементы, принадлежащие главной диагонали, равны 0, а каждый элемент, не принадлежащий главной диагонали, равен 2, 1 или 0(числу очков, набранных в игре: 2- выигрыш, 1-ничья, 0-проигрыш). а)найти число команд,имеющих больше побед,чем поражений b)определить номера команд,прошедших чемпионат без поражений. c)выяснить,имеется ли хотя вы одна команда,выигравшая более половины игр.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
program tablica;
uses crt;
const n=3;
var
A:array[1..n,1..n] of integer;
i,j,win,lose,draw,k,t: integer;
{---------------------------------------------------------------------------}
procedure input;
BEGIN
  for i:=1 to n do
  begin
    for j:=1 to n do
     begin
      write ('A[',i,',',j,']=');
      readln(A[i,j]);
     end;
  end;
END;
{---------------------------------------------------------------------------}
procedure varA;
BEGIN
win:=0; lose:=0; draw:=0; k:=0;t:=0;
  begin
  for i:=1 to n do
    begin
    for j:=1 to n do
     begin
      if A[i,j]=2 then win:=win+1;
      if A[i,j]=1 then draw:=draw+1;
      if ((i<>j) and  (A[i,j]=0)) then lose:=lose+1;
     end;
    if win>lose then k:=k+1;{uslovie varianta a}
    if win>(n/2) then t:=t+1;{uslovie varianta c}
    writeln('komanda',i,'=',win,'/',draw,'/',lose);{vivod rezultatov komandi}
    if lose=0 then writeln('u komandi',' ',i,' ','net porazhenii'); {uslovie i vivod varianta b}
    win:=0; lose:=0; draw:=0; writeln(' ');
    end;
  end;
if k>0 then writeln('kol-vo komand win>lose -',k)
       else writeln('net komand win>(lose)');
if t>0 then writeln('kol-vo komand win>(n/2) -',t)
       else writeln('net komand win>(n/2)');
END;
{----------------------------------------------------------------------------}
BEGIN
clrscr;
input;
varA;
readln;
END.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2012, 10:57     перевод в C++ из Pascal
Посмотрите здесь:

C++ перевод с Pascal на C++
C++ Перевод с Pascal на C++
Перевод с pascal на c++ C++
Перевод из Pascal в C++ C++
C++ Перевод с pascal на c++
Перевод с Pascal на C++ C++
C++ Перевод c Pascal на С++
Перевод из Pascal в C++ C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
23.05.2012, 12:56     перевод в C++ из Pascal #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdlib.h>
#include <iostream.h>
   const int N=3;
   int A[N][N]={0,};
   int i,j,win,lose,draw,k,t;
 
   void input()
    {
      for (i=0;i<N;i++)
       for (int j=0;j<N;j++)
       {
    cout<<"A["<<i+1<<","<<j+1<<"]  ";
    cin>>A[i][j];
       }
    }
 
    void vara()
    {
      win=0;lose=0;draw=0;k=0; t=0;
       {
    for (i=0;i<N;i++)
     {
      for (j=0;j<N;j++)
       {
        if (A[i][j]==2) win=win+1;
        else if (A[i][j]==1) draw=draw+1;
        else if ((i!=j)&&(A[i][j]==0)) lose=lose+1;
       }
       if (win>lose) k=k+1;
       if (win>(N/2)) t=t+1;
        cout<<"komanda "<<i+1<<" = "<<win<<"/"<<draw<<"/"<<lose<<"\n";
       if (lose==0) cout<<"u komandi "<<i+1<<" net porazeniy"<<"\n";
        win=0;lose=0;draw=0;cout<<"\n";
     }
       }
       if (k>0) cout<<"kol-vo komand win>lose "<<k<<"\n";
       else cout<<"net komand win>lose";
       if (t>0) cout<<"kol-vo komand win>(n/2)  "<<t<<"\n";
       else cout<<"net komand win>(n/2)";
    }
 
void main()
{
 system("CLS");
  input();
  vara();
  cout<<"\n";
 system("PAUSE");
 return;
 
}
Миниатюры
перевод в C++ из Pascal  
Yandex
Объявления
23.05.2012, 12:56     перевод в C++ из Pascal
Ответ Создать тему
Опции темы

Текущее время: 21:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru