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

Переписать программу на С++ - C++

Восстановить пароль Регистрация
 
tulekov
0 / 0 / 0
Регистрация: 14.07.2011
Сообщений: 3
25.08.2011, 18:36     Переписать программу на С++ #1
перепишите пожалуйста на с++. очень надо

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
Program massiv;
Uses crt;
Const n=5; m=5;
Var a: array[1..n, 1..m] of integer;
i, j, k,min,max, l, s: integer;
Begin
Clrscr; randomize;
Writeln('исходный:'); begin
For i:=1 to n do
Begin
for j:=1 to m do begin
a[i,j]:=random(21)-5; write(a[i,j]:4); end;
writeln; End; Writeln;end;
for i:=1 to n do begin
if i mod 2=0 then for k:=1 to m do begin
min:=a[i,k];
for j:=k to m do
if a[i,j]<min then
begin min:=A[i,j]; l:=j;
S:=A[i,k];
A[i,k]:=min;
A[i,l]:=S end; end
else for k:=1 to m do begin
max:=a[i,k];
for j:=k to m do
if a[i,j]>max then
begin max:=A[i,j]; l:=j;
S:=A[i,k];
A[i,k]:=max;
A[i,l]:=S end; end;
end;
begin
writeln(результат:'); For i:=1 to n do Begin
for j:=1 to n do write(a[i,j]:4);
Writeln;
end; end;
readln;
End.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
25.08.2011, 21:54     Переписать программу на С++ #2
Лучше скажите, что программа делать должна.
Хотя вроде понял... Нужно отсортировать строки матрицы. Нечетные - по убыванию, четные - по возрастанию(или наоборот, точно не помню).

Добавлено через 16 минут
Примерно так:
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
#include <iostream>
#include <algorithm>
#include <functional>
#include <cstdlib>
#include <iomanip>
 
const int N = 5, M = 5, WIDTH = 3;
 
int main(){
    
    srand( time(0) );
    
    std::cout.width(3);
    
    int ** matrix = new int* [N];
    
    std::cout << "Before:\n";
    
    for (int i = 0; i < N; ++i)
    {
        matrix[i] = new int [M];
        for (int j = 0; j < M ; ++j)
            std::cout << std::setw(WIDTH) << (matrix[i][j] = - 50 + rand() % 100) << ' ';
        std::cout << std::endl;
    }
    
    std::cout << "After:\n";
    
    for (int i = 0, c = 0; i < N; ++i, ++c)
    {
        if (c % 2 != 0)
            std::sort(matrix[i], matrix[i] + M, std::less<int>() );
        else
            std::sort(matrix[i], matrix[i] + M, std::greater<int> () );
        
        for (int j = 0; j < M; ++j)
            std::cout << std::setw(WIDTH) << matrix[i][j] << ' ';
        std::cout << std::endl;
        
        delete[] matrix[i];
    }
    
    delete[] matrix;
}
Петррр
 Аватар для Петррр
5917 / 3354 / 333
Регистрация: 28.10.2010
Сообщений: 5,926
25.08.2011, 21:56     Переписать программу на С++ #3
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
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
 
int main()
{
    setlocale(LC_ALL, "");
    srand(time(0));
    system("cls");
    const int n = 5;
    const int m = 5;
    int a[n][m];
    int i, j, k, min, max, l, s;
    std::cout << "Исходный: \n";
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < m; j++)
        {
            a[i][j] = rand() % 21 - 5;
            std::cout << std::setw(4) << a[i][j];
        }
        std::cout << std::endl;
    }
    std::cout << std::endl;
    for(i = 0; i < n; i++)
    {
        if (i % 2 == 0)
            for(k = 0; k < m; k++)
            {
                min = a[i][k];
                for(j = k; j < m; j++)
                    if (a[i][j] < min)
                    {
                        min = a[i][j];
                        l = j;
                        s = a[i][k];
                        a[i][k] = min;
                        a[i][l] = s;
                    }
            }
        else
            for(k = 0; k < m; k++)
            {
                max = a[i][k];
                for(j = k; j < m; j++)
                    if (a[i][j] > max)
                    {
                        max = a[i][j];
                        l = j;
                        s = a[i][k];
                        a[i][k] = max;
                        a[i][l] = s;
                    }
            }
    }
    std::cout << "Результат: \n";
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < m; j++)
            std::cout << std::setw(4) << a[i][j];
        std::cout << std::endl;
    }
    system("pause");
}
Не успел.
tulekov
0 / 0 / 0
Регистрация: 14.07.2011
Сообщений: 3
27.08.2011, 21:47  [ТС]     Переписать программу на С++ #4
спасибо за помощь, но я уже (26 августа) сдал экзамен по программирования.
Yandex
Объявления
27.08.2011, 21:47     Переписать программу на С++
Ответ Создать тему
Опции темы

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