• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Проверить Задачу На Ошибки

  • Автор темы Автор темы Artemx
  • Дата начала Дата начала
A

Artemx

Даны вещественные массивы F[5][6], M[5][6].Для каждого массива определить произведение положительных элементов ,расположенных в чётных строках массива, и произведение положительных элементов, расположенных в нечётных строках массива.

#include < iostream.h>
#include <iomanip.h>
//прототипы функций
void input ( float [5][6],char);
void schetproduct (float[5][6], float *, float *);
void output ( float [5][6], char , float, float);

void main()
{
//объявление массивов и переменных
float F[5][6], M[5][6] , suma_ch,suma_nch , sumd_ch, sumd_nch;

// productF_ch -для расчёта произведения в чётных строках массива F
//productF_nch -для расчёта произведения в нечётных строках массива F
//productM_ch -для расчёта произведения в чётных строках массива M
//productM_nc -для расчёта произведения в нечётных строках массива M
//обращение к функциям (вызов для выполнения)
input (F,'F');
input (M,'M');
schetproduct(F,&productF_ch, &productF_nch); // в функцию передаются два
schetproduct(M,&productM_ch &productM_nch); //адреса переменных
output (F,'F',productF_ch,productF_nch);
output (M,'M',productM_ch,productM_nch);
}
//определение функции ввода массива input()
void input ( float x[5][6],char name)
{
int i,j;
cout <<"Вводим массив" << name << endl;
for (i=0;i<5;i++)
for (j=0;j<6;j++)
{
cout <<"Введите " << name << "[" << i << "][" << j << "]=";
cin >> x[j];
}
}

//определение расчётной функции
// в качестве аргументов у данной функции два указателя
void schetproduct (float x[5][6], float *product_ch,float * product_nch)
{
int i,j;
*product_ch=0;
*product_nch=0;

// считаю чётные строки с индексом 0 и 2,
// а нечётные - с индексом 1 и 3
// расчёт произведения в чётных строках
for (i=0;i<5;i++)
for (j=0;j<6;j++)
if (x[j] > 0)
*product_ch *=x[j];
// расчёт суммы в нечётных строках
for (i=0;i<5;i++)
for (j=0;j<6;j+=2)
if ( x[j] >0)
*product_nch *=x[j];

}
// определение функции вывода output()
void output (float x[5][6], char name, float product_chet,float product_nchet)
{
int i,j;
cout <<"Исходный массив " << name << ":" << endl;
for (i=0;i<5;i++)
{
for (j=0;j<6;j++)
cout << setw (5) << x[j];
cout << endl;
}
cout << "\nСумма положительных элементов в чётных строках массива "
<< name << "равна" << product_chet < endl;
cout << "Сумма положительных элементов в нечётных столбцах массива "
<< name << "равна" << product_nchet < endl;
}



вот вся программа кто нашел ошибки или недочёты пишите ...
 
еще актуально??
массив нужно вводить или можно рандомными числами заполнить?
уж больно муторно вручную то пользователю каждый элемент вводить
 
riyadoll
по-любому уже не актуально.
ТС одно время яростно нарушал правила форума создавая по десять экземпляров своих тем, полагаю что не зря он так форсировал...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!