Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.11.2007, 22:50   #1
Atheist
 
Регистрация: 20.11.2007
Сообщений: 2
Восклицание Двухмерный массив

Помогите плиз..... не могу разобраться с кодом !
Задача найти средне геометричкое элементов строк матрицы не содержащих отрицательных элементов
Вот код:
Код:
#include<iostream.h>
#include<iomanip.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
  void main(void)
  {
   int x[10][20], n, m, i, j;
   float  s, k;
   char ch;
   unsigned int b;
   clrscr();
   cout<<"Введите размеры исходной матрицы"<<endl
       <<"количество строк(>=10):";
   cin>>n;
   cout<<"количество столбцов(>=20):";
   cin>>m;
   cout<<"Ведите 1, если матрица вводится вручную,"<<endl
       <<"или другой символ, если она формируется"<<endl
       <<"датчиком случайных чисел:";
   cin>>ch;
   if(ch=='1')
    {
     cout<<"Введите исходную матрицу из целых чисел"<<endl;
     for(i=0; i<n; i++)
     for(j=0; j<m; j++)
      {
       cout<<"x["<<i<<"]["<<j<<"]=";
       cin>>x[i][j];
       }
      }
     else
	 {
	  cout<<"Введите целое положительное число"<<endl
	      <<"для инициализации датчика"<<endl
	      <<"случайных чисел:";
	  cin>>b;
	  srand(b);
	  for(i=0; i<n; i++)
	  for(j=0; j<m; j++)
	  x[i][j]=(rand()-16383)%10;
	 }
   cout<<endl<<endl<<setw(30)<<"Исходная матрица:"<<endl;
   for(i=0; i<n; i++)
    {
     for(j=0; j<m; j++)
     cout<<setw(6)<<x[i][j];
     cout<<endl<<endl;
     }
      {      
       for ( i=0; i<n; i++)   
	{

	
         for (int j=0; j<m; j++)  
		{
		if (x[i][j] >=1 )s++; s=x[i][j]; s=s*x[0][j]; 
		 x[0][j]=(sqrt(s),m+1);
		}
		cout << "Средний геометрический элемент "<<i
		     << "-той строки = " <<s << endl;}
                cout<<endl<<setw(30)<<"Получен массив:"<<endl;
                for(i=0;i<n;i++)cout<<setw(6)<<(double)x[0][i];    
	       }
cout<<endl<<"Конец программы";
getch();
}

Последний раз редактировалось Carbon; 21.11.2007 в 00:59.
Atheist вне форума Ответить с цитированием
Старый 21.11.2007, 01:01   #2
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Вот это что за абракадабра?

Код:
{
if (x[i][j] >=1 )s++; s=x[i][j]; s=s*x[0][j]; 
 x[0][j]=(sqrt(s),m+1);
}
Среднее геометрическое n элементов - это корень n-той степени из произведения модулей этих элементов.
Carbon вне форума Ответить с цитированием
Старый 21.11.2007, 15:40   #3
Alek86
Форумчанин
 
Регистрация: 25.09.2007
Сообщений: 189
По умолчанию

>> не могу разобраться с кодом !

и что же от нас требуется?
Alek86 вне форума Ответить с цитированием
Старый 21.11.2007, 19:55   #4
Atheist
 
Регистрация: 20.11.2007
Сообщений: 2
По умолчанию

Не могу сообразить как записать формулу нахождения среднего геометрического в коде программы. Не получается условие: массив не должен содержать отрицательных элементов. Помогите пожалуйста! Заранее БЛАГОДАРЮ!
Atheist вне форума Ответить с цитированием
Старый 22.11.2007, 14:05   #5
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Код:
s=1.0;
for ( i=0; i<n; i++) 
{  
for (int j=0; j<m; j++)  
if (x[i][j] >=0.0 )
s*=x[i][j]; 
s=pow(s,1/(float)m);
cout<<s<<"\n";    
}
Carbon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
двухмерный массив Enchantner Паскаль, Turbo Pascal, PascalABC.NET 3 22.04.2008 20:47
Двухмерный массив xtraSHAD0W Паскаль, Turbo Pascal, PascalABC.NET 2 22.04.2008 18:17
Двухмерный массив (кинозал) fudzy79 Помощь студентам 3 10.04.2008 00:07
Двухмерный массив, 2 задачи Juhn Паскаль, Turbo Pascal, PascalABC.NET 7 10.02.2008 18:55