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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.10.2010, 15:23   #1
Romario92
Пользователь
 
Регистрация: 15.10.2010
Сообщений: 49
По умолчанию Образовать матрицу A(nxn), сгенерировав элементы случайным образом. Определить индексы минимального элеме

Образовать матрицу A(nxn), сгенерировав элементы случайным образом. Определить индексы минимального элемента матрицы. Вычислить сумму отрицательных элементов. Найти максимальный.
Вот мой знакомый сделал
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <time.h>
#include <math.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL, "Russian");
srand(time(NULL));
int const MAX=100;
int A[MAX][MAX];
int N, i,j, f,g;
int S=0;
cout<<"Введите N > 1 = ";
cin>>N;
for (i=0;i<N;i++)
for(j=0;j<N;j++)
{
A[i][j]=-13+rand()%24;
cout<<" A[ "<<i<<" ][ "<<j<<" ]= "<<A[i][j]<<"\n"; //Образовать матрицу A(nxn), сгенерировав элементы случайным образом.
}
int min = A[0][0];
for (i=1;i<N;i++)
for(j=1;j<N;j++)
{
if (A[i][j]<min)
{
min=A[i][j];
f=i;
g=j;
}
}
cout<<"Индекс: i="<<f<<" j="<<g<<endl; //Определить индексы минимального элемента матрицы.
for (i=0;i<N;i++)
for(j=0;j<N;j++)
{
if (A[i][j]<0)
S+=A[i][j];
}
cout<<"Сумма отрицательных элементов: "<<S<<endl; //Вычислить сумму отрицательных элементов.
int max=A[0][0];
for (i=1;i<N;i++)
for(j=1;j<N;j++)
{
if (A[i][j]>max)
max=A[i][j];
}
cout<<"Максимум: "<<max<<endl; //Найти максимальный.
system("Pause");
return 0;
}

А мне нужно переделать его так как ето задание , вот они похожи.... как переделать...
Образовать матрицу A(nxn), сгенерировав элементы случайным образом. Определить индексы минимального элемента матрицы. Определить индексы максимального элемента матрицы.
#pragma argsused
int main()
{
randomize();
const n=10;
int max,min,max_i,max_j;
int mat[n][n];
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
mat[i][j]=random(999);
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
cout<<mat[i][j]<<"\t";
min=mat[0][0];
max=mat[0][0];
max_i=0;
max_j=0;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
{
if(min>mat[i][j])
min=mat[i][j];
if(max<mat[i][j])
{
max=mat[i][j];
max_i=i;
max_j=j;
}
}
cout<<endl<<"Min element = "<<min<<endl;
cout<<endl<<"Max element = "<<max<<" ["<<max_j<<"]"<<"["<<max_i<<"]";
cin.get();
return 0;
}
Romario92 вне форума Ответить с цитированием
Старый 31.10.2010, 21:28   #2
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Вот тебе код. Может быть так и осилишь лабы )))
Код:
#include "stdafx.h"
#include <iostream>
#include <time.h>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Russian");
	srand(time(NULL));
	const int n=10;
	int max,min,max_i=0, max_j=0, min_i=0, min_j=0;
	int mat[n][n];

	for(int i=0; i<n; i++) 
		for(int j=0; j<n; j++)
			mat[i][j]=mat[i][j]=-13+rand()%24; 

	for(int i=0; i<n; i++) 
	{
		for(int j=0; j<n; j++)
		{
			cout<<mat[i][j]<<"\t";
		}
		cout<<"\n";
	}

	min=mat[0][0]; 
	max=mat[0][0];
	
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<n; j++)
		{
			if(mat[i][j]<min)
			{
				min=mat[i][j];
				min_j=j;
				min_i=i;
			}

			if(mat[i][j]>max)
			{
				max=mat[i][j];
				max_j=j;
				max_i=i;
			}
		}
	}

	cout<<endl<<"Позиция минимального элемента "<<min<<" = "<<" ["<<min_i<<"]"<<"["<<min_j<<"]"<<endl;
	cout<<endl<<"Позиция максимального элемента "<<max<<" = "<<" ["<<max_i<<"]"<<"["<<max_j<<"]"<<endl;
	return 0;
}
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол
atenon вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Случайным образом определить цвет карандаша и кисти. vedro-compota Мультимедиа в Delphi 3 02.06.2010 13:27
Сформировать массив случайным образом... (Pascal ABC) om3n Помощь студентам 2 14.04.2010 22:27
Как случайным образом нарисовать 200 точек на Image SnowSin Общие вопросы Delphi 3 11.11.2009 18:46
Генерация случайным образом Golovastik Общие вопросы C/C++ 9 07.10.2009 23:28
[Pascal] вывод элементов из файла случайным образом Рамик Помощь студентам 4 28.05.2009 17:18