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

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

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

Перевод из Паскаля в C++ - C++

11.05.2017, 19:47. Просмотров 145. Ответов 1
Метки нет (Все метки)

Здравствуйте! Помогите перевести код из Паскаля в 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
51
52
53
54
55
56
program m2;
uses crt;
var a:array[1..100,1..100]of Integer;
i,j,m,n,max,min,k,maxst,minst:Integer;
begin
repeat
ClrScr;
Write('Введите размеры матрицы(mxn):');
Readln(m,n);
until (m in [1..100]) and (n in [1..100]);
Randomize;
for i:=1 to m do 
for j:=1 to n do a[i,j]:=50-Random(101);
Writeln('Матрица,заполненная случайными числами:');
for i:=1 to m do
begin
for j:=1 to n do Write(a[i,j]:4);
Writeln;
end;
for j:=1 to n do
begin
k:=0;
for i:=1 to m do 
if a[i,j]<0 then inc(k);
if j=1 then
begin
max:=k;
min:=k;
minst:=1;
maxst:=1;
end else
if k>max then
begin 
max:=k;
maxst:=j;
end else
if k<min then
begin
min:=k;
minst:=j;
end;
end;
for i:=1 to m do
begin
k:=a[i,minst];
a[i,minst]:=a[i,maxst];
a[i,maxst]:=k;
end;
Writeln('Меняем местами столбцы с мин. и макс. количесвтом отрицательных элементов:');
for i:=1 to m do
begin
for j:=1 to n do Write(a[i,j]:4);
Writeln;
end;
Readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2017, 19:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Перевод из Паскаля в C++ (C++):

Перевод с Паскаля на С++ - C++
Кому не трудно. Помогите перевести пару задач несложных. 1 var a,b,c,tmp:real; begin write('Введите три числа A,B,C='); ...

Перевод из паскаля в с++ - C++
Помогите перевести type matrix = array of integer; var a:matrix; i,j,k:integer; begin k:=0; for i :=1 to...

Перевод с паскаля на С++ - C++
Даны два массива A и B одинакового размера N. Сформировать новый массив C того же размера, каждый элемент которого равен максимальному из...

перевод с паскаля на С++ - C++
Дан массив ненулевых целых чисел размера N. Проверить, образуют ли его элементы геометрическую прогрессию (см. задание 4). Если образуют,...

Перевод с Паскаля на си++ - C++
Помогите перевести на си++. uses crt; const gl=; var s:string; i:byte; begin clrscr; writeln('Введите текст из...

Перевод из Паскаля в C++ - C++
Пожалуйста помогите перевести одну функцию из Паскаля в C++. Буду очень признательна, так как очень плохо знаю Паскаль, а C++ тоже не очень...

1
GeFacle
Рэмбо комнатный
95 / 95 / 34
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
11.05.2017, 23:08 #2
Lurax, научитесь писать с отступами, пожалуйста, просто сплошной код не особо понятен
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
int main()
{
    srand(time(NULL));
    int arr[100][100],m,n,max,min,maxst,minst,k;
    cin >> m >> n;
    if (m>99 || m<0 || n>99 || n<0)
    {
        return 0;
    }
    cout << "Матрица,заполненная случайными числами:" << endl;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            arr[i][j]=rand()%50-101;
            cout << arr[i][j] << " ";
        }
        cout << endl;
    }
    for (int j=0; j<m; j++)
    {
        k=0;
        for (int i=0; i<n; i++)
        {
            if (arr[i][j]<0)
            {
                k++;
            }
            if (j==1)
            {
                max=k;
                min=k;
                minst=1;
                maxst=1;
            }
            else if (k>max)
            {
                max=k;
                maxst=j;
            }
            else if (k<min)
            {
                min=k;
                minst=j;
            }
        }
    }
    for (int i=0; i<n; i++)
    {
        k=arr[i][minst];
        arr[i][minst]=arr[i][maxst];
        arr[i][minst]=k;
    }
    cout << "Меняем местами столбцы с мин. и макс. количесвтом отрицательных элементов:" << endl;
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<m; j++)
        {
            cout << arr[i][j] << " ";
        }
        cout << endl;
    }
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2017, 23:08
Привет! Вот еще темы с ответами:

Перевод из паскаля в с ++ - C++
Ребят помогите перевести в с ++ var p:array of integer; c,c1:char; i,j,N,K:integer; name:string; time1,time2:integer; ...

Перевод из Паскаля на С++ - C++
Привет всем. Нужна помощь. У меня есть алгоритм на Паскале, а нужен на С++, поскольку Паскаль знаю плохо, прошу вас перевести данный код из...

Перевод с Паскаля в С++ - C++
var n: longint; max,x: byte; begin write('Введите число n: '); readln(n); max:=n mod 10; while n&gt;0 do begin ...

Перевод с Паскаля на C++ - C++
Здравствуйте. Помогите,пожалуйста,перевести код на С++. var z,x,v: text; st: string; begin ...


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

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

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