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

Удвоить положительные четные элементы - C++

Восстановить пароль Регистрация
 
DatIK
2 / 2 / 0
Регистрация: 19.11.2011
Сообщений: 128
19.11.2011, 20:08     Удвоить положительные четные элементы #1
Я написал программу с помощью массивов, мне надо эту же программу написать с помощью функции
Заранее спасибо.


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
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
int main()
 
{ 
int a[5][4];
double b[4];
int i,j;
double min;
cout << "vvedite elementi massiva 5*4" << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 {
 cin >> a[i][j]; 
 }
 }
cout << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 {
 if (a[i][j] > 0)
 {
 if (a[i][j]%2==0) 
 {
 a[i][j] +=a[i][j];
 }
 }
 }
 }
cout << "Posle preobrazovaniya massiv stal takim:" << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 { 
 cout << a[i][j] << " "; 
 }
 cout << endl;
 }
cout << endl;
_getch();
 return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2011, 20:08     Удвоить положительные четные элементы
Посмотрите здесь:

Заменить все положительные четные элементы массива единицами C++
Написать функцию, которая переставляет элементы массива типа int так, что все положительные элементы предшествуют отрицательным. C++
C++ Удвоить четные элементы. Натуральные логарифмы минимальных положительных элементов столбцов
C++ все четные эл-ты заменить на их квадраты, а нечетные удвоить (переделать с указателями)
C++ Дан массив целых чисел из 10 элементов.Все элементы кратные 10 заменить 0;Все нечетные элементы удвоить, а четные уменьшить на 2;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
19.11.2011, 20:11     Удвоить положительные четные элементы #2
C++
1
2
3
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
замените
C++
1
2
3
for (int i=0; i<5;i++)
 { 
 for (int j=0;j<4;j++)
DatIK
2 / 2 / 0
Регистрация: 19.11.2011
Сообщений: 128
19.11.2011, 20:15  [ТС]     Удвоить положительные четные элементы #3
Цитата Сообщение от amor1k Посмотреть сообщение
C++
1
2
3
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
замените
C++
1
2
3
for (int i=0; i<5;i++)
 { 
 for (int j=0;j<4;j++)
это и есть ответ?
заменить и эте будет функции?
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
19.11.2011, 20:29     Удвоить положительные четные элементы #4
вам нужна функция удвоения?

Добавлено через 2 минуты
может так?
C++
1
2
3
4
5
6
7
8
9
int **change(int **a, int m, int n)
{
    for (int i=0; i<m;i++)
        for (int j=0;j<n;j++)
            if (a[i][j] > 0)
                if (a[i][j]%2==0) 
                    a[i][j] +=a[i][j];
    return a;
}
go
19.11.2011, 20:35
  #5

Не по теме:

Цитата Сообщение от DatIK Посмотреть сообщение
Я написал программу с помощью массивов, мне надо эту же программу написать с помощью функции
Массив и функция это абсолютно разные вещи

DatIK
2 / 2 / 0
Регистрация: 19.11.2011
Сообщений: 128
19.11.2011, 20:59  [ТС]     Удвоить положительные четные элементы #6
Цитата Сообщение от go Посмотреть сообщение

Не по теме:


Массив и функция это абсолютно разные вещи

Я сделал эту программу с помощью массивов
теперь мне надо программу написанную с помощью функции
условие та же "Удвоить положительные четные элементы"

Добавлено через 19 минут
Вот что я изменил в своем коде
что мне надо добавить?

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>
#include <conio.h>
#include <math.h>
using namespace std;
 
int main()
 
{ 
int a[5][4];
double b[4];
int i,j;
double min;
cout << "vvedite elementi massiva 5*4" << endl;
int **change(int **a, int m, int n);
{
        for (int i=0; i<m;i++)
                for (int j=0;j<n;j++)
                        if (a[i][j] > 0)
                                if (a[i][j]%2==0) 
                                        a[i][j] +=a[i][j];
        return a;
}
}
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
19.11.2011, 21:10     Удвоить положительные четные элементы #7
DatIK, добывте вызов фу-ии

Добавлено через 8 минут
Цитата Сообщение от amor1k Посмотреть сообщение
может так?
лучше так
C
1
2
3
4
int **change(int a[][4], int m, int n);// у автора так объявлен массив
 
 
change (a,m,n)//вызов функции
DatIK
2 / 2 / 0
Регистрация: 19.11.2011
Сообщений: 128
19.11.2011, 21:25  [ТС]     Удвоить положительные четные элементы #8
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>
#include <conio.h>
#include <math.h>
using namespace std;
 
int main()
 
{ 
int a[5][4];
double b[4];
int i,j;
double min;
cout << "vvedite elementi massiva 5*4" << endl;
change(a,m,n);
{
        for (int i=0; i<m;i++)
                for (int j=0;j<n;j++)
                        if (a[i][j] > 0)
                                if (a[i][j]%2==0) 
                                        a[i][j] +=a[i][j];
        return a;
}
}

и мне выдает ошибку
1>Построение начато 19.11.2011 19:22:52.
1>InitializeBuildStatus:
1> Обращение к "Debug\datik.unsuccessfulbuild".
1>ClCompile:
1> datik.cpp
1>c:\users\datik\documents\visual studio 2010\projects\datik\datik\datik.cpp(14): error C2065: m: необъявленный идентификатор
1>c:\users\datik\documents\visual studio 2010\projects\datik\datik\datik.cpp(14): error C2065: n: необъявленный идентификатор
1>c:\users\datik\documents\visual studio 2010\projects\datik\datik\datik.cpp(14): error C3861: change: идентификатор не найден
1>c:\users\datik\documents\visual studio 2010\projects\datik\datik\datik.cpp(16): error C2065: m: необъявленный идентификатор
1>c:\users\datik\documents\visual studio 2010\projects\datik\datik\datik.cpp(17): error C2065: n: необъявленный идентификатор
1>c:\users\datik\documents\visual studio 2010\projects\datik\datik\datik.cpp(21): error C2440: return: невозможно преобразовать "int [5][4]" в "int"
1> Не существует контекста, в котором такое преобразование возможно
1>
1>СБОЙ построения.
1>
1>Затраченное время: 00:00:00.40
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
19.11.2011, 21:41     Удвоить положительные четные элементы #9
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
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
void changes (int a[][4])
{for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 {
 if (a[i][j] > 0)
 {
 if (a[i][j]%2==0) 
 {
 a[i][j] +=a[i][j];
 }
 }
 }
 }}
int main()
 
{ 
int a[5][4];
double b[4];
int i,j;
double min;
cout << "vvedite elementi massiva 5*4" << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 {
 cin >> a[i][j]; 
 }
 }
cout << endl;
 
changes (a);
cout << "Posle preobrazovaniya massiv stal takim:" << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 { 
 cout << a[i][j] << " "; 
 }
 cout << endl;
 }
cout << endl;
_getch();
 return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2011, 21:46     Удвоить положительные четные элементы
Еще ссылки по теме:

если в массиве положительные элементы или отрицательные элементы будут соседями C++
C++ Массивы: все элементы, кратные 10, заменить 0, все нечетные элементы удвоить, а четные уменьшить в 2 раза
C++ Переставить в строке все элементы матрицы из нечетных позиций на четные, а четные на нечетные, по условию

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

Или воспользуйтесь поиском по форуму:
DatIK
2 / 2 / 0
Регистрация: 19.11.2011
Сообщений: 128
19.11.2011, 21:46  [ТС]     Удвоить положительные четные элементы #10
Цитата Сообщение от go Посмотреть сообщение
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
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
 
void changes (int a[][4])
{for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 {
 if (a[i][j] > 0)
 {
 if (a[i][j]%2==0) 
 {
 a[i][j] +=a[i][j];
 }
 }
 }
 }}
int main()
 
{ 
int a[5][4];
double b[4];
int i,j;
double min;
cout << "vvedite elementi massiva 5*4" << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 {
 cin >> a[i][j]; 
 }
 }
cout << endl;
 
changes (a);
cout << "Posle preobrazovaniya massiv stal takim:" << endl;
for (int i=1; i<=5;i++)
 { 
 for (int j=1;j<=4;j++)
 { 
 cout << a[i][j] << " "; 
 }
 cout << endl;
 }
cout << endl;
_getch();
 return 0;
}
спасибо большое=)
Yandex
Объявления
19.11.2011, 21:46     Удвоить положительные четные элементы
Ответ Создать тему
Опции темы

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