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

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

Войти
Регистрация
Восстановить пароль
 
=IS=
0 / 0 / 0
Регистрация: 25.05.2010
Сообщений: 12
#1

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

23.05.2012, 10:57. Просмотров 1576. Ответов 2
Метки нет (Все метки)

Кому не сложно переведите пожалуйста программу в С++. Она готова и полностью рабочая.
вот на всякий случай сама задача:
Таблица футбольного чемпионата задана квадратной матрицей порядка 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.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2012, 10:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос перевод в C++ из Pascal (C++):

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

Перевод из Pascal в C++ - C++
В файле W задан массив из девяти элементов. В новом файле WW сформировать массив, в котором каждому элементу будет присвоено значение...

перевод с Pascal на C++ - C++
Const Max=1000; Eps=0.00001; Type Para=record X: integer;

Перевод с Pascal на Си++ - C++
Помогите, пожаалуйста перевести код программы с Паскаля на Си++. Очень прошу, помогите. Var S:String; W,Wrd:Array of String; ...

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

Перевод из Pascal в C++ - C++
Помогите перевести в С++. Вот код : program Adam; uses crt; var func,x,y,yp:array of real; proiz:array of real; ...

2
daslex
1271 / 515 / 106
Регистрация: 02.08.2011
Сообщений: 2,706
23.05.2012, 12:56 #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;
 
}
1
Миниатюры
перевод в C++ из Pascal  
Like_society
0 / 0 / 0
Регистрация: 19.01.2017
Сообщений: 167
25.01.2017, 13:20 #3
Задан массив А[1..5,1..5]. Получить из него новый массив путем деления элементов каждой из строк первого массива на элемент этой строки, что стоит по левой диагонали.
program a1;
uses crt;
var
a: array [1..8] of integer;
i,col: integer;
begin
clrscr;
randomize;
for i:=1 to 8 do
begin
a[i]:=random(21)-10;
write(a[i],' ');
if a[i]<0 then inc(col);
end;
writeln;
writeln('col<0=',col);
readkey;
end. Переведите пожалуйста в C++

Добавлено через 42 минуты
Задан массив А[1..5,1..5]. Получить из него новый массив путем деления элементов каждой из строк первого массива на элемент этой строки, что стоит по левой диагонали
uses crt;
type mas = array[1..100,1..100] of real;
var A,B: mas;
i,j: integer;
begin clrscr;
randomize;
writeln('ГЊГ*Г±Г±ГЁГў В№1: ');
for i:=1 to 5 do begin {ГѓГҐГ*åðèðóåì ïåðâûé Г¬Г*Г±Г±ГЁГў}
for j:=1 to 5 do begin
A[i,j]:=random(100);
write(A[i,j]:6:2);
end;
writeln;
end;
writeln; writeln('ГЊГ*Г±Г±ГЁГў В№2: ');
for i:=1 to 5 do begin {ÑÎçäГ*ГҐГ¬ âòîðîé Г¬Г*Г±Г±ГЁГў}
for j:=1 to 5 do begin
B[i,j]:=A[i,j]/A[i,i];
write(B[i,j]:6:2);
end;
writeln;
end;
readkey end.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.01.2017, 13:20
Привет! Вот еще темы с ответами:

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

Перевод из Pascal в С++ - C++
Помогите пожалуйста перевести программу из Паскали в С++ var k,n: integer; d: char; procedure AddDigit(s: string); var ...

перевод из PASCAL в C++ - C++
Нужна программа для перевода из 2 в 10 систему счисления и обратно ... нашел на паскале но почти ничего не могу понять . объясните пжл как...

Перевод с Pascal на С++ - C++
Будьте добры, кто понимает, кому не сложно, очень нужна помощь в переводе. program z2; var a,b,s : integer; begin ...


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

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

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