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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
Мирзали
 Аватар для Мирзали
4 / 5 / 1
Регистрация: 20.11.2010
Сообщений: 353
#1

Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. - C++

21.07.2011, 00:17. Просмотров 1694. Ответов 12
Метки нет (Все метки)

Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.07.2011, 00:17     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
Посмотрите здесь:

Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца C++
C++ Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу
Массив: Построить из динамического одномерный массив,каждый элемент, которого равен сумме элементов одной строки исходной матрицы. C++
C++ Двумерный массив. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца
Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива C++
Сформировать массив С, каждый элемент которого равен максимальному значению соответствующих элементов массивов А и В C++
C++ Создать массив, каждый элемент которого равен среднему арифметическому соответствующей строки данной матрицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
21.07.2011, 05:22     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #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
#include <iostream>
#include <iomanip>
#include <stdlib.h>
 
int main()
{
    srand(time(NULL));
    int n, m;
    std::cin >> n >> m;
    int** arr = new int* [n];
    int* arr2 = new int [n];
    for (int i = 0; i < n; ++i)
    {
        arr[i] = new int [m];
        arr2[i] = 0;
        for (int j = 0; j < m; ++j)
        {
            arr[i][j] = rand() % 200 - 100;
            if (abs(arr[i][j]) > arr2[i])
                arr2[i] = abs(arr[i][j]);
            std::cout << std::setw(5) << arr[i][j];
        } 
        std::cout << std::endl;
    }
    std::cout << std::endl;
    for (int i = 0; i < n; ++i)
        std::cout << std::setw(5) << arr2[i];
    system("pause");
    return 0;
}
iama
 Аватар для iama
1249 / 974 / 48
Регистрация: 30.07.2010
Сообщений: 5,297
21.07.2011, 08:32     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #3
soon, раз матрица дана, то её нужно вводить, а не рандомить
soon
21.07.2011, 10:32
  #4

Не по теме:

iama, я так думаю, что даже с минимальными знаниями языка ТС сможет поправить под себя эту программу. Ведь если давать кристально чистое решение, вплоть до обработки всех исключений, то что останется делать ему самому? Только брать решение, и уносить отсюда ноги, не сказав спасибо. А так, возможно, топик стартеры будут думать, чему нибудь научатся, и снова вернутся на форум, уже чтобы помочь другим.
ps/ Кроме того, написать пару строчек кода быстрее, чем потом вводить массив при проверке.

iama
 Аватар для iama
1249 / 974 / 48
Регистрация: 30.07.2010
Сообщений: 5,297
21.07.2011, 12:01     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #5
soon, 80% посетителей форума не знают что такое int, а вы хотите чтобы они сами код правили
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
21.07.2011, 12:08     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #6
iama, Угнетающая статистика какая то. А откуда такие цифры, если не секрет?
soon, Нифига там новичек... больше чем полгода зареган, 300+ сообщений и видать все такие - "дайте программу". И Сдавать преподу бегом...
OstapBender
 Аватар для OstapBender
581 / 519 / 35
Регистрация: 22.03.2011
Сообщений: 1,585
21.07.2011, 12:24     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #7
Цитата Сообщение от zulkis Посмотреть сообщение
Угнетающая статистика какая то.
почему ? нам то какая разница?
An1ka
65 / 70 / 2
Регистрация: 30.06.2011
Сообщений: 176
21.07.2011, 12:25     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #8
Цитата Сообщение от iama Посмотреть сообщение
soon, 80% посетителей форума не знают что такое int, а вы хотите чтобы они сами код правили
Тогда прикажите использовать шаблоны ? Шаблоны в данном случаи еще меньший процент не знает...
soon
21.07.2011, 12:59
  #9

Не по теме:

Цитата Сообщение от iama Посмотреть сообщение
а вы хотите чтобы они сами код правили
Очень хочу. Полез в программирование - нужно включить мозги.
Цитата Сообщение от zulkis Посмотреть сообщение
soon, Нифига там новичек... больше чем полгода зареган, 300+ сообщений и видать все такие - "дайте программу". И Сдавать преподу бегом...
Об этом и речь. Сумеет поправить под себя, нет - его проблемы, я просто подсказал направление, пусть сам себя подпинывает.
Цитата Сообщение от iama Посмотреть сообщение
80% посетителей форума
Ну это уж вы загнули. Хотя возможно, если это поисковые боты

Konstantin_D
 Аватар для Konstantin_D
14 / 14 / 2
Регистрация: 21.07.2011
Сообщений: 89
21.07.2011, 13:27     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #10
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
#include<stdlib.h>
using namespace std;
 
int main()
{
    const int AR_SIZE = 5; //Размерность массивов
    int Arr1[2][AR_SIZE] = {{-2, -3, 4, 5, -6}, {1, 4, -3, 4, 7}}; //Массив с данными
 
    int Arr2[AR_SIZE]; //Создаем выходной массив
    for (int i=0; i<AR_SIZE; i++)
        Arr2[i] = (abs(Arr1[0][i]) > abs(Arr1[1][i])) ? Arr1[0][i] : Arr1[1][i];
 
    return 0;
}
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
21.07.2011, 13:41     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #11
Костя, задание читаем.
соответствующей строки
у вас - столбец
iama
21.07.2011, 17:48
  #12

Не по теме:

Цитата Сообщение от zulkis Посмотреть сообщение
iama, Угнетающая статистика какая то. А откуда такие цифры, если не секрет?
Про 95% не слышали? Эт я еще смягчил. Посчитайте долю студентов, которым нафиг знания не нужны, нужны только готовые задания, оно где-то так и выйдет.
Цитата Сообщение от An1ka Посмотреть сообщение
Тогда прикажите использовать шаблоны ? Шаблоны в данном случаи еще меньший процент не знает...
Вы меня неправильно поняли я имел в виду, что у большей части посетителей нет даже самых элементарных знаний
Цитата Сообщение от soon Посмотреть сообщение
Очень хочу. Полез в программирование - нужно включить мозги.
И я хочу. А они - не хотят.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2011, 18:16     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
Еще ссылки по теме:

C++ Заполнить каждый элемент массива наибольшим по модулю элементо соответствующей строки второго
Сформировать одномерный массив, каждый элемент которого равен сумме элементов исходной матрицы C++
C++ Сформировать массив, каждый элемент которого равен первому элементу соответствующего столбца матрицы
C++ Получить вектор B, каждый элемент которого равен среднему арифметическому соответствующей строки массива A
C++ Сформировать одномерный массив, каждый элемент которого равен сумме цифр элемента исходного массива

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

Или воспользуйтесь поиском по форуму:
easybudda
Эксперт С++
 Аватар для easybudda
9412 / 5435 / 917
Регистрация: 25.07.2009
Сообщений: 10,428
21.07.2011, 18:16     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива. #13

Не по теме:

iama, задание всё-таки на то, какой элемент в строке массива наибольший по модулю, а не на то, откуда он там взялся. У меня вот в примере матрица 7х10 - это мне 70 чисел придумывать? Да ну! Если не понимают, но интересно - спросят, а не спросят - значит и так сошло...
И давайте офтоп прекращать.


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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int * abs_max(const int * arr, size_t size){
    return ( size < 2 ) ? (int*)arr : ( abs(*arr) < abs(*(arr + size - 1)) ) ? abs_max(arr + 1, size - 1) : abs_max(arr, size - 1);
}
 
#define ROWS 7
#define COLUMNS 10
#define rnd(a, b) ((rand() % ((b) - (a) + 1)) + (a))
 
int main(void){
    int matrix[ROWS][COLUMNS], amelements[ROWS], i, j;
    
    srand(time(NULL));
    for ( i = 0; i < ROWS; ++i )
        for ( j = 0; j < COLUMNS; ++j )
            matrix[i][j] = rnd(-10, 10);
            
    for ( i = 0; i < ROWS; ++i )
        amelements[i] = *abs_max(matrix[i], COLUMNS);
    
    printf("Matrix:                                    ABS_MAX\n");
    for ( i = 0; i < ROWS; ++i ){
        for ( j = 0; j < COLUMNS; ++j )
            printf("%4d", matrix[i][j]);
        printf("%7d\n", amelements[i]);
    }
    
    return 0;
}
Yandex
Объявления
21.07.2011, 18:16     Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
Ответ Создать тему
Опции темы

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