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

Из кода Pascal в код C++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ C Паскаля перевести в С++ http://www.cyberforum.ru/cpp-beginners/thread1085794.html
Дана матрица размера M x N. Удалить столбец, содержащий максимальный элемент матрицы. program Matrix64; var K,maxI,maxJ,j,i,M,N,num:integer; a: array of real; temp:real; begin // Ввод данных ...
C++ В двумерном массиве найти среднее арифметическое первого столбца и количество элементов в каждом из следующих столбцов В двумерном массиве найти среднее арифметическое первого столбца и количество элементов в каждом из следующих столбцов, превышающих среднее арифметическое предыдущего столбца http://www.cyberforum.ru/cpp-beginners/thread1085792.html
Преобразование типов C++
Вот я создаю двумерный массив n=1; m=2; char **mas=new char *; mas=new char; после этого мне нужно увеличить размер строк в массиве на 1(т.е. n=2), использую функцию realloc, но она...
Вычислить сумму значений t. Вычислить значения t, соответствующие каждому значению х C++
Вычислить значения t, соответствующие каждому значению х (x_n\leq x\leq x_k) , шаг изменения x равен dx) по формуле t = (a+b)^2 \sqrt{a+x/b+x}*ln(a+x) . Вычислить сумму значений t, произведение...
C++ Задан двумерный массив N x N http://www.cyberforum.ru/cpp-beginners/thread1085757.html
Задан двумерный массив N x N. Разрешается произвольно переставлять элементы внутри любого столбца. Проверить можно ли выполнив конечное число перестановок в столбцах, расположить на побочной...
C++ Сформировать квадратную матрицу порядка n по заданному образцу Сформировать квадратную матрицу порядка n по заданному образцу n n-1 n-2 … 3 2 1 n-1 n-2 n-3 … 2 1 0 n-2 n-3 n-4 … 1 0 0 …………………………… 1 0 0 … 0 0 0 спасибо! подробнее

Показать сообщение отдельно
some_name
Вежливость-главное оружие
226 / 224 / 55
Регистрация: 19.02.2013
Сообщений: 1,441
31.01.2014, 00:28
Цитата Сообщение от Revolver19931 Посмотреть сообщение
Может сможешь помочь еще с этими темами?
Написать функцию, для поиска максимального элемента в указанной строке двумерного массива. Сдвинуть в двумерном массиве все строке циклически вправо н
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#include<iostream>
#include<iomanip>
 
using namespace std;
//создает матрицу размер size
int** matrix_constructor(int size)
{
    int** matrix_new = new int* [size]; 
    for (int i = 0; i < size; ++i) matrix_new[i] = new int[size];
    return matrix_new;
}
//удаляем матрицу
void matrix_destructor(int** matrix, int size)
{   
    for (int i = 0; i < size; ++i) delete[] matrix[i];
    delete[] matrix;  
}
//заполняет матрицу : если random_fill == true - случайно, иначе вводит ручками
void matrix_fill(int** matrix, int size, bool random_fill = true)
{
    if(random_fill) 
    {
        srand((unsigned)time(NULL));
        for (int i = 0; i < size; ++i)
            for (int j = 0; j < size; ++j)
            {
                int temp = matrix[i][j] = rand() % 80 + 10; 
                if(temp > 70) matrix[i][j] = 0;
                else matrix[i][j] = temp;
            }
    }
    else
    {
        for(int i = 0; i < size; ++i)
        {
            for(int j = 0; j < size; ++j)
            {
                cout<<"Enter {"<<i<<":"<<j<<"}"<<"element"; cin>>matrix[i][j];
            }
            cout<<endl;
        }
    }
}
//печатаем матрицу
void matrix_print(int** matrix, int size)
{
    for (int i = 0; i < size; ++i)
    {
        for (int j = 0; j < size; ++j) cout<<matrix[i][j]<<" ";     
        cout<<endl;
    }
    cout<<endl;
}
 
void matrix_copy(int** orignal, int** copy, int size)
{
    for (int i = 0; i < size; ++i)  
        for (int j = 0; j < size; ++j)
            copy[i][j] = orignal[i][j];
}
//первый пункт задания
void matrix_task1(int** matrix, int size)
{   
    cout<<"Task 1"<<endl;
 
    int** copy = matrix_constructor(size);//делаем копию
    matrix_copy(matrix, copy, size);//матрицы
 
    int number_row;
    cout<<"Enter number of row : "; cin>>number_row;
 
    int max = copy[number_row - 1][0];
    for (int i = 1; i < size; ++i)
        if(copy[number_row - 1][i] > max) 
            max = copy[number_row - 1][i];
 
    cout<<"Maximal number of "<<number_row<<" row "<<max<<endl;
    max = max % size;   
    cout<<"Offset on "<<max<<endl;
 
    for (int i = 0; i < size; ++i)
    {
        for (int j = 0; j < size - max; j++)
            copy[i][j + max] = copy[i][j];
        for (int j = 0; j < max; j++)
            copy[i][j] = 0;
    }
    matrix_print(copy, size);
    matrix_destructor(copy, size);
}
 
//второй пункт задания
void matrix_task2(int** matrix, int size)
{
    cout<<"Task 2"<<endl;
 
    int average = 0;
 
    for (int i = 0; i < size; ++i)
        average += matrix[i][0];
    average /= size;
 
    cout<<"Average "<<average<<endl;
 
    for (int i = 0; i < size; ++i)
    {
        int counter = 0;
        for (int j = 0; j < size; ++j)
            if(matrix[i][j] > average) ++counter;
        cout<<"Number of elements > average("<<average<<") : "<<counter<<endl;
    }
}
 
int main()
{
    int size;
    int** matrix;
 
    cout<<"Matrix size : "; cin>>size;
 
    matrix = matrix_constructor(size);
    matrix_fill(matrix, size);
    matrix_print(matrix, size);
    matrix_task1(matrix, size);   
    matrix_task2(matrix, size);   
    matrix_destructor(matrix, size);
 
    getchar(); getchar();
 
    return 0;
}


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