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

Найти в каждой строке матрицы наибольший элемент и записать его в одномерный массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Численные методы http://www.cyberforum.ru/cpp-beginners/thread439508.html
Здраствуйте форумчане! Если кому не сложно, не могли бы вы немного помочь с вышеуказанными заданиями, не пойму, как их делать... 1. Вычислить площадь фигуры ограниченной функциями {f}_{1}\left(x...
C++ Переделать программу. Эта программа определяет какие слова встречаються в строчке по одному разу.Надо определить какое слово будет встречаться в строчке чаще других. #include <iostream> #include <windows.h> using... http://www.cyberforum.ru/cpp-beginners/thread439491.html
Вывод двумерного массива через указатель C++
в пятой главе Прохоренка приведен такой фрагмент кода #include <iostream> using namespace std; int main() { const short ROWS = 4, COLS = 5; int arr = { {1,2,3,4,5}, {6,7,8,9,20},...
Работа с файлами C++
Дан файл расширения .txt, в котором имеется список вида: 1. Фамилия1 2. Фамилия2 Как произвести чтение из файла, для поиска нужной строки по ключу и сортировки(например,по алфавиту), с...
C++ O Visual C++ http://www.cyberforum.ru/cpp-beginners/thread439454.html
Здравствуйте, у меня проблема. Нужно сдать проект, в котором считывается с bunny.dat данные(например числа после from - положение камеры, после 3 - координаты треугольников) и из этих данных создает...
C++ В числе 5672 найти число тысяч, сотен, десятков и единиц 1) В числе 5672 найти число тысяч, сотен, десятков и единиц. Найти сумму и произведение цифр данного числа. 2) Дано пятизначное число. Найти число образов перестановкой первой и третей цифр... подробнее

Показать сообщение отдельно
HeqpuJIuM
0 / 0 / 0
Регистрация: 24.01.2012
Сообщений: 25

Найти в каждой строке матрицы наибольший элемент и записать его в одномерный массив - C++

02.02.2012, 09:20. Просмотров 481. Ответов 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
//Написать программу в 3 функциях:
//1 функция создаёт двумерный динамический массив и возвращает его через указатель.
//2 функция создаёт одномерный статический массив с размером по количесву строк в двумерном,
//  находит в каждой строке двумерного наибольший элемент и записывает его в одномерный.
//3 функция выводит оба массива на экран и освобождает память.
//P.S. Вызов функций производить через указатели.
#include <QtCore/QCoreApplication>
#include <iostream>
#include <cstdlib>
using namespace std;
int mass1();
int (*pm1)();
int mass2(int **mass, int n);
int (*pm2)(int **mass, int n);
void vivod(int **mass, int n);
void (*pv)(int **mass, int n);
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    pm1=&mass1;
    pm2=&mass2;
    pv=&vivod;
    pm1();
    pm2(**mass, n);
    pv(**mass, n);
    return a.exec();
}
int pm1();
{
    int n, x, i, j;
        cout <<"Vvedite poryadok matritsi: ";
        cin >>n;
    int **mass=new int*[n];
    for(x=0;x<n;x++)
        mass[x]=new int[n];
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        mass[i][j]=rand()%9;
    }
}
int pm2(int **mass, int n)
{
    int temp=0;
    int mass2[n];
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        if(mass[i][j]>temp)
            temp=mass[i][j];
        temp=0;
    }
Вот половину уже сделал, не могу понять, как сейчас также циклично присвоить это наибольшее значение одномерному массиву...

Добавлено через 18 минут
Только с указателями какой то косяк... никак не могу понять, как их надо правильно писать...

Добавлено через 2 часа 17 минут
Уже не надо,я смог сделать, теперь никак не могу разобраться с указателями, что именно неверно...

Вот новый код, не работают указатели...
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
//Написать программу в 3 функциях:
//1 функция создаёт двумерный динамический массив и возвращает его через указатель.
//2 функция создаёт одномерный статический массив с размером по количесву строк в двумерном,
//  находит в каждой строке двумерного наибольший элемент и записывает его в одномерный.
//3 функция выводит оба массива на экран и освобождает память.
//P.S. Вызов функций производить через указатели.
#include <QtCore/QCoreApplication>
#include <iostream>
#include <cstdlib>
using namespace std;
int mass1();
int mass2(int **mass, int n);
void vivod(int **mass, int n);
int (*pm1)();
int (*pm2)(int **mass, int n);
void (*pv)(int **mass, int n);
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    pm1=&mass1;
    pm2=&mass2;
    pv=&vivod;
    pm1();
    pm2(mass, n);
    pv(mass, n);
    return a.exec();
}
int pm1()
{
    int n, x, i, j;
        cout <<"Vvedite poryadok matritsi: ";
        cin >>n;
    int **mass=new int*[n];
    for(x=0;x<n;x++)
        mass[x]=new int[n];
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        mass[i][j]=rand()%20;
    }
    return **mass;
}
int pm2(int **mass, int n)
{
    int mass2[n];
    int max, i, j;
    for(i=0;i<n;i++)
    {
        max=mass[i][0];
        for(j=0;j<n;j++)
        {
            if(max<mass[i][j])
                max=mass[i][j];
            mass2[i]=max;
        }
    }
    for(i=0;i<n;i++)
        cout <<mass2[i] <<" ";
    return **mass;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru