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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2010, 13:18   #1
Slavytich
Пользователь
 
Регистрация: 28.10.2010
Сообщений: 26
По умолчанию Поиск мин элемента в матрице и его количество C++

Всем привет! Задание : Найти минимальный положительный элемент и количество его вхождений в матрице n*n.

Я сам пытался написать, минимальный находит, но считает неправильно, если увеличить размерность матрицу, помогите подправить :
Код:
#include <iostream>

using namespace std;
int main()

{  
	cout<<"Matrix 1 :"<<"\n"; // заполняем матрицу 2*2 рандомными значениями и выводим
	int matrix1[2][2];
	int i=0;
	int j=0;
	for(i=0;i<2;i++)
	{
		cout<<"\n";
		for(j=0;j<2;j++)
		{
			matrix1[i][j]=-1+rand()%5;
			cout<< "    ";
			cout<<matrix1[i][j];
		}
	}


int min =10;
int count =0;	
// "бежим" по матрице и проверям элемент с минимальным и сравниваем элемент с 0, если условия выполняются элемент матрицы делаем минимумом счёчтик увеличиваем на 1
for(i=0;i<2;i++)
	for(j=0;j<2;j++)
		if((matrix1[i][j] < min) && (matrix1[i][j] > 0))
		min = matrix1[i][j];
		count++;
cout << endl <<  "Min polojitelnui element: " << min  << "        " << "Kol-vo vhojdeniu:  "<<count << endl;
	
	
system("PAUSE");
	return 0;

}
Slavytich вне форума Ответить с цитированием
Старый 03.11.2010, 13:51   #2
Блуд
Пользователь
 
Регистрация: 23.05.2010
Сообщений: 53
По умолчанию

я бы сделал так:
Код:
#include <iostream>

using namespace std;
int main()

{  
	cout<<"Matrix 1 :"<<"\n"; // заполняем матрицу 2*2 рандомными значениями и выводим
	int matrix1[2][2];
	int i=0;
	int j=0;
	for(i=0;i<2;i++)
	{
		cout<<"\n";
		for(j=0;j<2;j++)
		{
			matrix1[i][j]=-1+rand()%5;
			cout<< "    ";
			cout<<matrix1[i][j];
		}
	}


int min =10;
int count =0;	
// "бежим" по матрице и проверям элемент с минимальным и сравниваем элемент с 0, если условия выполняются элемент матрицы делаем минимумом счёчтик увеличиваем на 1
for(i=0;i<2;i++)
	for(j=0;j<2;j++){
                      if (matrix1[i][j]==min)
                            cout++;
		if((matrix1[i][j] < min) && (matrix1[i][j] > 0)){
		min = matrix1[i][j];
		count=1;}}
cout << endl <<  "Min polojitelnui element: " << min  << "        " << "Kol-vo vhojdeniu:  "<<count << endl;
	
	
system("PAUSE");
	return 0;

}
Блуд вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массив, мин элемент и его значение Sergei93 Паскаль, Turbo Pascal, PascalABC.NET 3 29.06.2010 13:17
Поиск минимального элемента в матрице F1eCSo Помощь студентам 0 04.02.2010 17:20
В матрице определить номер и значение элемента. Tonik_A Паскаль, Turbo Pascal, PascalABC.NET 2 18.10.2009 13:53
поиск мин. элемента массива lg12 Помощь студентам 1 10.07.2009 15:07