powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Произведение четных элементов в массиве.
14 сообщений из 14, страница 1 из 1
Произведение четных элементов в массиве.
    #38272265
FRANQ1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дан двумерный целочисленный массив, состоящий из 3 строчек и 2 столбцов,
вычислить произведение всех четных элементов.
Значения элементов вводятся с клавиатуры.

Нужна помощь. Массив создать получилось, а вот как подсчитать произведение четных элементов, не получается.

Вот, придумал только это (но не работает):

Код: plaintext
1.
2.
3.
4.
5.
6.
   int p = 1;
   if (array[i][j] % 2 == 0 && array[i][j] !=0)
   {
      p *= array[i][j];
      cout << "Произведение четных элементов = " << p << endl;
   }



Целый код:
Код: plaintext
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.
#include <iostream>
#include <iomanip>
#include <windows.h>
#include <math.h>
 
using namespace std;


void printArray(int array[3][2])
{
   SetConsoleOutputCP(1251);
   cout << "\nПолученный массив\n";
 
   for(int i = 0; i < 3; i++)
   {
   for(int j = 0; j < 2; j++)
   cout << setw(2) << array[i][j] << endl; 
   }
   int p = 1;
   if (array[i][j] % 2 == 0 && array[i][j] !=0)
   {
      p *= array[i][j];
      cout << "Произведение четных элементов = " << p << endl;
   }

}


int main()
{	 
   SetConsoleOutputCP(1251);
   int array[3][2];        
 
   for(int i = 0; i < 3; i++)   
   {
   cout << "Вводим " << i + 1 << " строку\n"; 
 
   for(int j = 0; j < 2; j++)   
   { 
      cin >> array[i][j];                
   }   
   } 
   printArray(array);   
   return 0;
}

...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272315
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FRANQ1,

вы все правильно сделали, только печать произведения надо делать после циклов
Код: plaintext
1.
2.
3.
4.
5.
6.
for(int i = 0; i < 3; i++)
   {
   for(int j = 0; j < 2; j++) {
....
}
}


cout << "Произведение четных элементов = " << p << endl;
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272497
FRANQ1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий Широков,

Если я вас правильно понял, должно получиться так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
void printArray(int array[3][2])
{
   setlocale(0, "");
   cout << "\Полученный массив\n";
 
   for(int i = 0; i < 3; i++)
   {
   for(int j = 0; j < 2; j++)
   cout << setw(2) << array[i][j] << endl; 
   }

   int p = 1;
   if (array[i][j] % 2 == 0 && array[i][j] !=0)
   {
      p *= array[i][j];   
   }
      cout << "Произведение четных элементов = " << p << endl;
}
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272796
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
for(i=0; i<3;i+=2)
   for(j=0; j<2; j+=2)
   {
     ...
    }



Не?
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272798
FRANQ1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy,

выдает ошибки (и так, и так):


1>------ Построение начато: проект: 23, Конфигурация: Debug Win32 ------
1>Компиляция...
1>23.cpp
1>c:\users\frankee\documents\visual studio 2008\projects\23\23\23.cpp(12) : warning C4129: :
1>c:\users\frankee\documents\visual studio 2008\projects\23\23\23.cpp(19) : error C2065: j: необъявленный идентификатор
1>c:\users\frankee\documents\visual studio 2008\projects\23\23\23.cpp(19) : error C2065: j: необъявленный идентификатор
1>c:\users\frankee\documents\visual studio 2008\projects\23\23\23.cpp(21) : error C2065: j: необъявленный идентификатор
1>c:\users\frankee\documents\visual studio 2008\projects\23\23\23.cpp(24) : error C2065: p: необъявленный идентификатор
1>Журнал построения был сохранен в "file://c:\Users\Frankee\Documents\Visual Studio 2008\Projects\23\23\Debug\BuildLog.htm"
1>23 - ошибок 4, предупреждений 1
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272800
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FRANQ1,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
void printArray(int array[3][2])
{
   setlocale(0, "");
   cout << "\Полученный массив\n";
 
   int p = 1;
   for(int i = 0; i < 3; i++)
   {
       for(int j = 0; j < 2; j++) {
            cout << setw(2) << array[i][j] << endl; 
            // вычислять произведение надо в цикле
            if (array[i][j] % 2 == 0 && array[i][j] !=0)
            {
                 p *= array[i][j];   
            }
       }
   }
   // а выводить за циклом
   cout << "Произведение четных элементов отличных от нуля = " << p << endl;
}
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272814
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
#include <stdio.h>

int main(void)
{
    int a[]={1,2,3,4,5,6,7,8,9,0};
    int i;
    for (i=0;i<10;i+=2)
        printf("%d ",a[i]);
    
     printf("\n");
return 0;
}
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272838
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
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.
#include <iostream>
//#include <iomanip>
//#include <windows.h>
//#include <math.h>

using namespace std;


void printArray(int array[2][3])
{
        //SetConsoleOutputCP(1251);
        cout << "\nПолученный массив\n";

        for(int j = 0; j < 3; j++) {
                cout<<endl;
                for(int i = 0; i < 2; i++)
                        cout  << array[i][j]<<" " ;
        }
        // соб-но вычисление
        int p = 1;
        for(int j=0;j<3;j++)
                for(int i=0;i<2;i+=2)
                        p *= array[i][j];

        cout << "Произведение четных элементов = " << p << endl;

}

int main()
{
        //SetConsoleOutputCP(1251);
        int array[2][3];

        for(int j = 0; j < 3; j++)
        {
                cout << "Вводим " << j + 1 << " строку\n";

                for(int i = 0; i < 2; i++)
                {
                        cin >> array[i][j];
                }
        }
        printArray(array);
        return 0;
}



Четные - 0,2,4 элементы
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Вводим 1 строку
1 2
Вводим 2 строку
3 4
Вводим 3 строку
5 6

Полученный массив

1 2 
3 4 
5 6 

Произведение четных элементов = 15
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272859
FRANQ1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy,

у меня матрица в один столбец печатается

...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272872
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверьте цикл вывода массива
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272875
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38272893
FRANQ1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy,

я копипастил)
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38273201
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если бы вы копипастили у вас бы было
3*3*5=30
а не
4*2*6=48
...
Рейтинг: 0 / 0
Произведение четных элементов в массиве.
    #38273266
FRANQ1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy,

оказывается работал старый код, спасибо.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Произведение четных элементов в массиве.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]