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

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

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

Составить программу для подсчета произведения элементов целочисленной прямоугольной таблицы Y - C++

18.04.2010, 19:47. Просмотров 761. Ответов 8
Метки нет (Все метки)

Составить программу для подсчета произведения элементов целочисленной прямоугольной таблицы Y, состоящий из M строк и N столбцов, сумма двух индексов которых число четное. Сформировать матрицу с помощью генератора случайных чисел и организовать ее вывод на экран.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.04.2010, 19:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Составить программу для подсчета произведения элементов целочисленной прямоугольной таблицы Y (C++):

Составить программу для подсчета произведения элементов целочисленной прямоугольной таблицы - C++
3. Составить программу для подсчета произведения элементов целочисленной прямоугольной таблицы Y, состоящий из M строк и N столбцов, сумма...

Составить программу для подсчёта произведения элементов целочисленной прямоугольной таблицы - C++
Составить программу для подсчёта произведения элементов целочисленной прямоугольной таблицы Y, состоящей из p строк и k столбцов, сумма...

Составить программу для подсчёта произведения элементов целочисленной прямоугольной таблицы - C++
Составить программу для подсчёта произведения элементов целочисленной прямоугольной таблицы Y, состоящей из p строк и k столбцов, сумма...

Составить программу для подсчета произведения элементов целочисленной матрицы Y, рамерами m на n, сумма двох индексов которых - число парное. - C++
Составить программу для подсчета произведения элементов целочисленной матрицы Y, рамерами m на n, сумма двох индексов которых - число...

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

Подсчёта произведения элементов целочисленной прямоугольной таблицы - C++
Составить программу для подсчёта произведения элементов целочисленной прямоугольной таблицы Y, состоящей из p строк и k столбцов, сумма...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
neske
1495 / 862 / 82
Регистрация: 26.03.2010
Сообщений: 2,951
18.04.2010, 20:19 #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
37
38
39
40
41
42
43
44
45
46
#include <iostream>
#include <ctime>
 
int main()
{
    setlocale( LC_ALL,"Russian" );
    int N,M;
    
    std::cout << "Введите кол-во строк в массиве: ";
    std::cin >> N;
    std::cout << "Введите кол-во столбцов в массиве: ";
    std::cin >> M;
 
    int **MAS = new int *[N];
    for (int i = 0; i < N; i++) 
    MAS[i] = new int [M];
 
    long rezult=1; // конечный результат.
 
    srand(time(NULL));
    for (int i=0; i<N; i++) // заполняем массив случайными числами.
    for (int j=0; j<M; j++)
        MAS[i][j]=rand() % 10+1;
 
    for (int i=0; i<N; i++)
    for (int j=0; j<M; j++)
        if ( (i+j>0) && ((i+j)%2==0) ) rezult*=MAS[i][j];
    
 
 
    for (int i=0; i<N; i++) // вывод матрицы на экран.
    {
        for (int j=0; j<M; j++)
        std::cout << MAS[i][j] << "  ";
 
        std::cout << std::endl;
    }
 
    std::cout << "Произведение= " << rezult << std::endl; // вывод результата.
 
    for (int i = 0; i < N; i++) // освобождаем память.
    delete []MAS[i];
    delete []MAS;
    system("pause");
    return 0;
}


PS - Матрица заполняется случайными числами от 1 до 10.
Почему от 1? - Чтобы избежать умножения на 0.
Почему только до 10? - чтобы избежать слишком больших значений.

PSS - как я понял из прошлой темы, твой компилятор не воспринимает циклов с одинаковым счетчиком.
Я думаю это ты сам сделаешь
1
Artem93
0 / 0 / 0
Регистрация: 28.01.2010
Сообщений: 61
18.04.2010, 20:34  [ТС] #3
я исправил прошлую программу сам так как твоя версия выводила максимальным только первый элемент М[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
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
 
 
int razm,mas[100],i,max=0 ;
cout << "Vvedite razmernost" << endl ;
cin >> razm ;
for ( i=0 ; i<razm ; i++)
   {
   mas[i]=rand()%33 ;
   cout << mas[i] << " " ;
   }
for ( i=0 ; i<razm ; i++)
   {
   if (i%2!=0)
      {
      if (mas[i]>max)
         {
         max=mas[i] ;
         }
      }
   }
cout << endl << "Max = " << max ;
getch() ;
 
        return 0;
}
0
neske
1495 / 862 / 82
Регистрация: 26.03.2010
Сообщений: 2,951
18.04.2010, 20:35 #4
Цитата Сообщение от Artem93 Посмотреть сообщение
так как твоя версия выводила максимальным только первый элемент М[1] массива
Что за бред?
Задание было:

Цитата Сообщение от Artem93 Посмотреть сообщение
Составить программу для подсчета произведения элементов целочисленной прямоугольной таблицы Y, состоящий из M строк и N столбцов, сумма двух индексов которых число четное. Сформировать матрицу с помощью генератора случайных чисел и организовать ее вывод на экран.
1
Artem93
0 / 0 / 0
Регистрация: 28.01.2010
Сообщений: 61
18.04.2010, 20:40  [ТС] #5
нет это не эта задача)

ладно не важно)
0
neske
1495 / 862 / 82
Регистрация: 26.03.2010
Сообщений: 2,951
18.04.2010, 20:45 #6
1) В 27 строке в моем коде правильно будет так:
C++
1
if ( (i+j>=2) && ((i+j)%2==0) )

2) Artem93, пожалуйста
1
Artem93
0 / 0 / 0
Регистрация: 28.01.2010
Сообщений: 61
18.04.2010, 20:51  [ТС] #7
А извени за мою невежливость,Спасибо!

просто уже голова кипит)
0
neske
1495 / 862 / 82
Регистрация: 26.03.2010
Сообщений: 2,951
18.04.2010, 20:57 #8
Код проверил, все работает?
0
Artem93
0 / 0 / 0
Регистрация: 28.01.2010
Сообщений: 61
18.04.2010, 21:08  [ТС] #9
да всё пошло но я кое как переделал

я не писал
C++
1
for ( int i=0; i<N; i++)
я писал так, объявив переменную i в начальном описании
C++
1
for ( i=0; i<N; i++)
имхо у меня выдавало странные ошибки
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.04.2010, 21:08
Привет! Вот еще темы с ответами:

Составить программу для подсчета среднего арифметического ненулевых ячеек прямоугольной таблицы Х, что состоит из M*N целых чисел, лежащих в диапазоне - C++
Составить программу для подсчета среднего арифметического ненулевых ячеек прямоугольной таблицы Х, что состоит из M*N целых чисел, лежащих...

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

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

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.04.2010, 21:08
Ответ Создать тему
Опции темы

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