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

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

Войти
Регистрация
Восстановить пароль
 
aleksandar
0 / 0 / 0
Регистрация: 08.11.2012
Сообщений: 35
#1

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

06.01.2013, 21:37. Просмотров 996. Ответов 13
Метки нет (Все метки)

Кто знает. Плиз. Дан двумерный массив целых чисел. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива(если такого элемента в столбце нет, то он равен нулю)

Добавлено через 2 минуты
Только надо c++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2013, 21:37     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива
Посмотрите здесь:

C++ Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца C++
C++ Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу
Массив: Построить из динамического одномерный массив,каждый элемент, которого равен сумме элементов одной строки исходной матрицы. C++
C++ Двумерный массив. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца
Получите новый массив, каждый элемент которого равен сумме соответствующего исходного элемента и его квадрата C++
C++ Получите новый массив, каждый элемент которого равен удвоенному числу соответствующего элемента исходного массива, если он больше числа A...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
AlvinMax
 Аватар для AlvinMax
0 / 0 / 0
Регистрация: 05.01.2013
Сообщений: 16
06.01.2013, 22:13     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #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
#include <iostream>
using namespace std;
int main(){
    int n;
    cin >> n;
    int a[100][100],i,j;
    for (i=1;i<=n;++i)
    for (j=1;j<=n;++j)
    cin >> a[i][j];
    int c,b[100]; c=0;
    for (j=1;j<=n;++j)
    {
    for (i=1;i<=n;++i)
    if (a[i][j]%2==0)
    {b[j]=a[i][j];++c;break;}
    if (c==0)
    b[j]=0;
    }
    for (i=1;i<=n;++i)
    cout << b[i] << ' ';
    cout << endl;
    system("pause");
}
Владслав
 Аватар для Владслав
-173 / 0 / 1
Регистрация: 02.12.2012
Сообщений: 27
06.01.2013, 22:27     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #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
#include<iostream>
#define N 3
 
using namespace std;
int main(){
    int m[N][N];
 
    int* n=(int*)malloc(N*sizeof(int));
 
    for(int i=0; i<N; i++){
        for(int k=0; k<N; k++){
            cin>>m[i][k];
        }
    }
 
    for(int k=0; k<N; k++){
        for(int i=0; i<N; i++){
            if(m[i][k]%2==0){
                n[k]=m[i][k];
                break;
            }
 
            if(m[i][k]!=0){
                    n[k]=0;
                    break;
                }
        }
    }
 
    for(int k=0; k<N; k++){
            cout<<n[k]<<" ";
    }
 
    return 0;
}
aleksandar
0 / 0 / 0
Регистрация: 08.11.2012
Сообщений: 35
06.01.2013, 23:13  [ТС]     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #4
А еще проще есть варианты может у кого? А то преподаватель прикапывается к таким выражениям %2==0, i<=n, говорит замените на более простые
Владслав
 Аватар для Владслав
-173 / 0 / 1
Регистрация: 02.12.2012
Сообщений: 27
06.01.2013, 23:23     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #5
Цитата Сообщение от aleksandar Посмотреть сообщение
А еще проще есть варианты может у кого? А то преподаватель прикапывается к таким выражениям %2==0, i<=n, говорит замените на более простые
Проще уже нечего нету. Чтобы преподаватель не прикапывался нужно знать что выполняют эти операции.
aleksandar
0 / 0 / 0
Регистрация: 08.11.2012
Сообщений: 35
06.01.2013, 23:28  [ТС]     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #6
А программа работает, все ок? В приложении
Владслав
 Аватар для Владслав
-173 / 0 / 1
Регистрация: 02.12.2012
Сообщений: 27
06.01.2013, 23:34     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #7
Цитата Сообщение от aleksandar Посмотреть сообщение
А программа работает, все ок? В приложении
Программа работает норм.
aleksandar
0 / 0 / 0
Регистрация: 08.11.2012
Сообщений: 35
06.01.2013, 23:49  [ТС]     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #8
Владислав, а что означают те символы?))) Если тебе не сложно объяснить
David Sylva
 Аватар для David Sylva
1284 / 946 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
07.01.2013, 00:13     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #9
Владслав почему вы в коде на С++ используете malloc а не new? И уж если вы выделяете память динамически, кто её будет освобождать?
Владслав
 Аватар для Владслав
-173 / 0 / 1
Регистрация: 02.12.2012
Сообщений: 27
07.01.2013, 00:49     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #10
Цитата Сообщение от David Sylva Посмотреть сообщение
Владслав почему вы в коде на С++ используете malloc а не new? И уж если вы выделяете память динамически, кто её будет освобождать?
malloc и new выполняют одинаковую функцию они выделяют память для нашего массива и мы можем использовать память как динамический, как статический или даже гибридный
David Sylva
 Аватар для David Sylva
1284 / 946 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
07.01.2013, 00:51     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #11
Владслав А почему память не освободил?
Владслав
 Аватар для Владслав
-173 / 0 / 1
Регистрация: 02.12.2012
Сообщений: 27
07.01.2013, 00:55     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #12
Цитата Сообщение от Владслав Посмотреть сообщение
Программа работает норм.
N%2 - остаток от деление на 2
== - символ равенства ( не путайте с присваиванием = )

Добавлено через 2 минуты
Цитата Сообщение от David Sylva Посмотреть сообщение
Владслав А почему память не освободил?
Я использовал в своем исходнике статический массив тому я его не освобождал.
David Sylva
 Аватар для David Sylva
1284 / 946 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
07.01.2013, 01:00     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #13

Не по теме:

Владслав не подумай, что я к тебе докапываюсь, просто с человек могут этот аспект спросить.



Добавлено через 48 секунд
я вот про это
Цитата Сообщение от Владслав Посмотреть сообщение
int* n=(int*)malloc(N*sizeof(int));
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2013, 01:17     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива
Еще ссылки по теме:

C++ Из массива (15 элементов) получите новый массив, каждый элемент которого равен сумме соответствующего исходного элемента и его квадрата
C++ Сформировать массив, каждый элемент которого равен суме элементов соответствующего столбца матрицы
Сформировать одномерный массив, каждый элемент которого равен сумме элементов исходной матрицы C++
C++ Сформировать массив, каждый элемент которого равен первому элементу соответствующего столбца матрицы
C++ Сформировать одномерный массив, каждый элемент которого равен сумме цифр элемента исходного массива

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

Или воспользуйтесь поиском по форуму:
Владслав
 Аватар для Владслав
-173 / 0 / 1
Регистрация: 02.12.2012
Сообщений: 27
07.01.2013, 01:17     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива #14
Цитата Сообщение от David Sylva Посмотреть сообщение

Не по теме:

Владслав не подумай, что я к тебе докапываюсь, просто с человек могут этот аспект спросить.



Добавлено через 48 секунд
я вот про это
А в этом месте, да я чуть ошибся нужно было освободить

Добавлено через 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
#include<iostream>
#define N 3
 
using namespace std;
int main(){
    int m[N][N];
 
    int* n=(int*)malloc(N*sizeof(int));
 
    for(int i=0; i<N; i++){
        for(int k=0; k<N; k++){
            cin>>m[i][k];
        }
    }
 
    for(int k=0; k<N; k++){
        for(int i=0; i<N; i++){
            if(m[i][k]%2==0){
                n[k]=m[i][k];
                break;
            }
 
            if(m[i][k]!=0){
                    n[k]=0;
                    break;
                }
        }
    }
 
    for(int k=0; k<N; k++){
            cout<<n[k]<<" ";
    }
    free(n);
 
    return 0;
}
вот вроде правильно

Добавлено через 13 минут
чуть подкорректировал
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
#include<iostream>
#define N 3
 
using namespace std;
int main(){
    int m[N][N];
 
    int* n=(int*)malloc(N*sizeof(int));
 
    for(int i=0; i<N; i++){
        for(int k=0; k<N; k++){
            cin>>m[i][k];
        }
    }
 
    for(int k=0; k<N; k++){
        for(int i=0; i<N; i++){
            if(m[i][k]%2==0){
                n[k]=m[i][k];
                break;
            }
            if(m[i][k]!=0){
                    n[k]=0;
                }
 
        }
 
    }
Yandex
Объявления
07.01.2013, 01:17     Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива
Ответ Создать тему
Опции темы

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