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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Касья
0 / 0 / 0
Регистрация: 15.11.2008
Сообщений: 5
#1

Определить произведение отрицательных элементов матрицы и их количество - C++

16.11.2008, 17:01. Просмотров 1243. Ответов 4
Метки нет (Все метки)

Заданы две матрицы А={aij} размерности n*n и B={bij} размерности n*g. Для каждой из них определить произведение отрицательных элементов и их количество. Упорядочить элементы строк в матрице А и столбцов матрицы В в порядке роста,
линейной быстрой сортировкой.

вот кое -что написала, а как дальше незнаю
Код
#include <iostream.h>
#include <math.h>
#include <conio.h>
#define n 5
#define g 5
void main()
{float a[n][n]; float b [n][g];
int i,j,k;
cin >> mas[i][j];
float Proizv=1;
k=0;
for (i=0, i<n, ++i)
for (j=0, j<n, ++j)
if (mas [i][j]<0)
{Proizv*=mas[i][j], ++k;}
мне преподаватель сказал, что в самом начале, после слов
Код
int i,j,k
нужно ввести n как внешнею функцию, так и внутренней.......

если кто может пожалуйста помогите и если есть ошибки исправте плз

Добавлено через 18 часов 15 минут 13 секунд
кхм...ау люди вы есть?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2008, 17:01     Определить произведение отрицательных элементов матрицы и их количество
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Касья
0 / 0 / 0
Регистрация: 15.11.2008
Сообщений: 5
17.11.2008, 23:15  [ТС]     Определить произведение отрицательных элементов матрицы и их количество #2
КТО ТО может помочь или нет?!
Жестянка
сцуко киборг
102 / 29 / 2
Регистрация: 11.09.2008
Сообщений: 193
18.11.2008, 00:30     Определить произведение отрицательных элементов матрицы и их количество #3
Код
int KolOtr(int n, int m, float **p)
      {
      int k;
      for(int i=0;i<n;i++)
            for(int j=0;j<m;j++)
                   if(p[i][j]<0)k++;
      return k;
      }
эта считает количество

Код
double ProizvOtr(int n, int m, float **p)
      {
      double P=1;
      for(int i=0;i<n;i++)
            for(int j=0;j<m;j++)
                   if(p[i][j]<0)P=P*p[i][j];
      return P;
      }
эта - произведение

тока массив надо в таком случае объявлять так:
Код
float **mas;
mas=new char*[n];
for(int i=0;i<n;i++)
     {
     mas[i]=new float[m];
     for(int j=0;j<m;j++)
          cin>>mas[i][j]; // эта типа заполняем сразу
     }
Касья
0 / 0 / 0
Регистрация: 15.11.2008
Сообщений: 5
18.11.2008, 00:41  [ТС]     Определить произведение отрицательных элементов матрицы и их количество #4
спасибо огромное! завтра попробую!

когда заново начну набирать код, пред первым, что считает количество, писать так ?

Код
#include <iostream.h>
#include <math.h>
#include <conio.h>
коды подойдут, сразу для обеих матриц?
Жестянка
сцуко киборг
102 / 29 / 2
Регистрация: 11.09.2008
Сообщений: 193
18.11.2008, 01:12     Определить произведение отрицательных элементов матрицы и их количество #5
Код
void Sort(float *mas, int N) 
     {
     int i = 0, j = N; 
     float temp, p;
     p = mas[ N>>1 ]; // центральный элемент
     // разделение
     do 
     {
     while ( mas[i] < p ) i++;
     while ( a[j] > p ) j--;
          if (i <= j) 
               {
               temp = a[i]; a[i] = a[j]; a[j] = temp;
               i++; j--;
               }
          }
          while ( i<=j ); 
              {
              if ( j > 0 ) Sort(a, j); // типа рекурсии. О!
              if ( N > i ) Sort(a+i, N-i);
              }
}
эт, если мы про один и тот же "быстрый" метод сортировки думаем

Добавлено через 11 минут 35 секунд
когда заново начну набирать код, пред первым, что считает количество, писать так ?
ес я не ошебаюсь,
Код
#include <iostream.h>
#include <math.h>
должно хватить
тока ещё: using namespace std; надо. Чтоб перед cout и cin std:: не писать.

коды подойдут, сразу для обеих матриц?
да. Можно писать так:
Код
cout << "Количество отрицательных эллементов матрицы1 =" << KolOtr(n,m,mas1) << '\n';
cout << "Произведение отрицательных эллементов матрицы1 =" << ProizvOtr(n,m,mas1);
cout << "Количество отрицательных эллементов матрицы2 =" << KolOtr(n,m,mas2) << '\n';
cout << "Произведение отрицательных эллементов матрицы2 =" << ProizvOtr(n,m,mas2);
Yandex
Объявления
18.11.2008, 01:12     Определить произведение отрицательных элементов матрицы и их количество
Ответ Создать тему
Опции темы

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