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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2009, 19:35   #1
britva666
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 24
По умолчанию Обработка элементов массива

Заполнить квадратную матрицу размером 6х6 случайными числами, лежащими в пределах от -5 до 25. Если на главной диагонали больше половины элементов отрицательны, то все отрицательные элементы удвоить, в противном случае удвоить элементы только в последней строке.
britva666 вне форума Ответить с цитированием
Старый 18.06.2009, 19:28   #2
britva666
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 24
По умолчанию

ну помогите плиз
britva666 вне форума Ответить с цитированием
Старый 18.06.2009, 21:30   #3
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

Конечно я не буду писать за тебя всю прогамму, но некоторые моменты подскажу (это на Паскале):
1) Заполняем матрицу случайными числами так:
Код:
for i:=1 to 6 do
for j:=1 to 6 do
matr[i][j]:=random(7)-3;
2) Дальше создаеш в var переменную minus в которой будет хран. кол-во отрицат. чисел
Код:
minus:=0;
for i:=1 to 6 do
for j:=1 to 6 do
if (i=j)and(matr[i][j]<0)then
inc(minus);
3) Проверяеш если на главной диагонали больше половины элементов отрицательны, то
Код:
if minus>3 then
begin
for i:=1 to 6 do
for j:=1 to 6 do
if (i=j)and(matr[i][j]<0)then
matr[i][j]:=matr[i][j]*2; 
end
else
begin
for j:=1 to 6 do
matr[6][j]:=matr[6][j]*2; // иначе удваиваем в последне строке
end;
В следущий раз пиши хоть язык на котором нужно реализовать!!!

Последний раз редактировалось profi; 18.06.2009 в 21:37.
profi вне форума Ответить с цитированием
Старый 18.06.2009, 22:33   #4
Mikhail Bakurov
Форумчанин
 
Регистрация: 12.10.2008
Сообщений: 140
По умолчанию

во втором пункте один цикл можно
Код:
for i:=1 to 6 do
if m[i][i]<0 then...
Mikhail Bakurov вне форума Ответить с цитированием
Старый 18.06.2009, 22:43   #5
Злыдень
Новичок
Джуниор
 
Регистрация: 18.06.2009
Сообщений: 3
По умолчанию

а может ко всему этому еще RANDOMIZE TIMER подключить, что бы числа были каждый раз разные?
Злыдень вне форума Ответить с цитированием
Старый 21.06.2009, 18:26   #6
britva666
Пользователь
 
Регистрация: 31.05.2009
Сообщений: 24
По умолчанию

Спасибо всем большое!!!
britva666 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод элементов массива.Изменение элементов массива. Vesnushka18 Помощь студентам 6 09.06.2011 13:05
перемещение элементов массива Skrip Общие вопросы C/C++ 1 09.06.2009 18:04
обработка массива, с++ lusuj Помощь студентам 2 11.11.2008 19:27
Произведение элементов массива gamer123 Помощь студентам 5 19.01.2008 22:02