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

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

Войти
Регистрация
Восстановить пароль
 
Пульман
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 40
#1

Найти сумму и число элементов каждого столбца двухмерного массива - C++

08.12.2013, 12:34. Просмотров 451. Ответов 4
Метки нет (Все метки)

Найти сумму и число элементов каждого столбца двухмерного массива удовлетворяющих следующим условиям: состоящая только из отрицательных и нулевых элементов;;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2013, 12:34
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти сумму и число элементов каждого столбца двухмерного массива (C++):

Найти сумму и число элементов каждого столбца двухмерного массива - C++
Найти сумму и число элементов каждого столбца двухмерного массива удовлетворяющих следующему условию элементы которого являются...

Определить сумму элементов каждого столбца левой половины и сумму элементов каждого четного столбца правой половины матрицы A - C++
Матрица A (M кратно 4) разделена по вертикали на две половины. Определить сумму элементов каждого столбца левой половины и сумму элементов...

Найти сумму и число положительных элементов каждого столбца матрицы - C++
Имя матрицы и размеры: A(10,15) действие:вычислить и запомнить сумму и число положительных элементов каждого столбца матрицы. результаты...

Вычислите и запомните сумму и число положительных элементов каждого столбца матрицы - C++
Дана целочисленная матрица A(N, M). Вычислите и запомните сумму и число положительных элементов каждого столбца матрицы. Результаты...

Найти сумму элементов каждого столбца двумерного массива - C++
как найти суму елементов каждого столбца двумерного массива(при условии что елементы не должны равняться 0)

Найти сумму элементов каждого парного столбца двумерного массива - C++ - C++
Найти сумму элементов каждого парного столбца двумерного массива - C++ Добавлено через 13 часов 26 минут #include "stdafx.h" ...

4
TwilightTwinkle
6 / 6 / 0
Регистрация: 27.11.2013
Сообщений: 26
08.12.2013, 12:48 #2
C++
1
2
3
4
5
6
7
8
void f(int size1, int size2, int* array, int* arrResult);{//результный массив должен быть проинициализирован нулями изначально
int sizeCop=size1;
while (size2>=0){
while (sizeCop>=0){
if (array[size1][size2]<=0){
ResultArr[size2]+=array[sizeCop][size2];}
--sizeCop;}
--size2; sizeCop=size1;}}
Надеюсь, что ничего, что запись в результном массиве будет зеркально отражена (последний элемент результатного массива=сумме первого столбца).
0
Пульман
0 / 0 / 0
Регистрация: 27.10.2013
Сообщений: 40
08.12.2013, 12:49  [ТС] #3
Ничего не понял(
0
lpvoid
322 / 305 / 17
Регистрация: 06.03.2013
Сообщений: 869
08.12.2013, 12:55 #4
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
#include <cstdio>
 
bool is_negative(int* r, int l) {
    for (int i = 0; i < l; i++)
        if (r[i] > 0) return false;
 
    return true;
}
 
bool is_null(int* r, int l) {
    for (int i = 0; i < l; i++)
        if (r[i] != 0) return false;
 
    return true;
}
 
int get_column_count(int* r, int l) {
    int a = 0;
    for (int i = 0; i < l; i++) 
        a++;
    return a;
}
 
int main() {
    int matrix[5][6] = {
        { 2, 4, 6, 8, 10, 14 },
        { 0, 0, 0, 0, 0, 0 },
        { 8, 9, 13, 14, -8, -3},
        { -7, -9, -30, -10, -19, -18},
        { 18, 20, 24, 56, 30, 20 }
    };
 
    for (int i = 0; i < 5; i++) {
        if (is_negative(matrix[i], 6) || is_null(matrix[i], 6)) {
            printf("Row %d has %d elements\n", i, get_column_count(matrix[i], 6));
            continue;
        }
    }
 
    std::getchar();
}
?
1
TwilightTwinkle
6 / 6 / 0
Регистрация: 27.11.2013
Сообщений: 26
08.12.2013, 12:57 #5
Цитата Сообщение от Пульман Посмотреть сообщение
Ничего не понял(
C++
1
2
3
4
5
6
7
8
9
10
void f(int size1, int size2, int* array, int* arrResult);{//результный массив должен быть проинициализирован нулями изначально
//size1 и size2 - это размерность массива, array - входной массив, где * - указатель на него, чтобы функции можно было его передать,
//arrResult - массив, в который будет записан результат, он одномерный.
int sizeCop=size1;//sizeCop - это копия кол-ва столбцов, т.к. надо будет возвращаться к исходному значению их кол-ва.
while (size2>=0){
while (sizeCop>=0){
if (array[size1][size2]<=0){
ResultArr[size2]+=array[sizeCop][size2];}//вот тут и пригодится изначальная инициализация всех элементов массива, если этого не сделать - то код в цикле будет длиннее и выполняться функция будет значительно дольше
--sizeCop;}
--size2; sizeCop=size1;}}
Понятненько? :3
1
08.12.2013, 12:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2013, 12:57
Привет! Вот еще темы с ответами:

Для каждого столбца двумерного массива найти и напечатать сумму элементов - C++
В массиве x, состоящий из 3х строк и 4х столбцов, ввести следующие данные: 5 -1 -4 2 -2 -5 3 6 4 5 0 -2 Отпечатать исходный массив...

Для каждого столбца двумерного массива подсчитать сумму четных положительных элементов - C++
III. Дан массив размером n×n, элементы которого целые числа. Замечание. Для хранения массив n×n использовать ступенчатый массив. Для...

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

Найти произведение цифр числа - C++
1. Найдите сумму положительных четных чисел меньших 100. 2. Дано целое число K. Найти произведение цифр числа К. 3. Найти сумму...


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

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

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