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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2011, 02:34   #1
VaLiAr
 
Регистрация: 06.10.2011
Сообщений: 4
По умолчанию замена всех отрицательных елементов, находившихся под главной диагонолью матрицы

Создать программу, которая вводит c клавиатуры двумерный квадратный массив целых чисел, заменяет все отрицательные элементы, находящиеся ниже главной диагонали, на минимальный элемент соответствующей строки и отображает данный массив на экране по столбцам в обратном порядке
Код:
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
int main()
{const int n=100;
int b,k,y,t,l,c,M,tl;
int arr[n][n];
cout<<"Vvedite razmernost kvadratnoho masiva";
cin>>t;
for(k=0;k<t;k++)
  {
	  for (b=0;b<t;b++)
   {
cout<<"Vvedite elementi stroky masiva"<<k+1<< endl;
cout<<"Vvedite elementi stolbca masiva"<<b+1<< endl;
cin>>arr[t][t];
	}
   }
for(l=0,c=0;l<t;c++,l++)
		{
			for(int tl=l;tl<t;tl++)
				if(arr[tl][c]<0)
				{}
}
return 0;
}
дошёл вот до такого результата а дальше не пойму, как делать. Пожалуйста, подкиньте идеи как заменить отрицательные елементы на минимальное значнгие строки

Последний раз редактировалось Stilet; 03.11.2011 в 09:13.
VaLiAr вне форума Ответить с цитированием
Старый 03.11.2011, 09:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я бы делал так:
Код:
int arr[n][n+1];
Это место для минималки строки
В цикле ввода:
Код:
cin>>arr[t][t]; arr[t][n]=(arr[t][n]<arr[t][n])?arr[t][n]:arr[t][t];
Т.е. вычисляем минимумы
И далее замена:
Код:
for(l=1;l<t;l++)
		{
			for(int tl=0;tl<l;tl++)
				if(arr[l][tl]<0)
				{arr[l][tl]=arr[l][n];}
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.11.2011, 17:57   #3
VaLiAr
 
Регистрация: 06.10.2011
Сообщений: 4
По умолчанию

Stilet, программа вроде работает, но некоректно. Выдает один и тот же результат при выводе массива arr[l][tl] - -85996.....Что делать?
VaLiAr вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++:неправильно определяет сумму елементов матрицы Blondy Помощь студентам 9 08.04.2011 01:14
Ф-ия, определяющая сумму строк матрицы, если на главной диагонали матрицы имеется отрицательный эл-т. Volk_xD Помощь студентам 6 05.01.2011 13:39
вычислить и вывести суммы отрицательных элементов,которые росположеные на главной и побочной диагоналях; milasssska Помощь студентам 1 27.05.2010 00:08
Pascal - Найти сумму всех ее отрицательных элементов и заменить ею все диагональные элементы этой матрицы NewBi Паскаль, Turbo Pascal, PascalABC.NET 2 24.04.2010 09:15
произведение всех элементов, расположенных на главной диагонали и выше ее матрицы размером 4х4, Pascal __FIRST__ Помощь студентам 2 12.12.2008 02:43