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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2010, 18:58   #1
myxxa
Новичок
Джуниор
 
Регистрация: 29.08.2010
Сообщений: 1
По умолчанию Построить блок-схему(матрица)

Здравствуйте,помогите пожалуйста с решением данной задачи.

Если в матрице есть хотябы 1 отрицательный элемент, то упорядочить строки матрицы по возрастанию.

помогите нарисовать блок-схему пожалуйста.


очень прошу помогите нарисовать эту блок-схему кто-нибудь..

Последний раз редактировалось myxxa; 29.08.2010 в 20:34.
myxxa вне форума Ответить с цитированием
Старый 29.08.2010, 23:04   #2
Magius1000
Новичок
Джуниор
 
Регистрация: 28.08.2010
Сообщений: 3
По умолчанию

Заданее по точнее напиши, пожалуйста!!!!
Матрица двухмерная или сколько?
Языка какой, С++, Pascal, другие, или поф..?
Какие виды циклов использовать?
И темболее я не смогу угадать какой стандарт на твои блок схемы...

Значит, Предпологаю, что матрица двухмерная, язык С и вводить массив не нужно... а со стондартом на квадратики с ромбиками разбирайся самостоятельно.... =)
Пусть матрица A размера m на n.
Вначале обьявляем три int-овые переменные, пускай i j k = 0
Потом запускаем цикл по i -> for(i = 0; i < m; i++) (идем по строкам)
В нем цикл по j - > for(j = 0; j < n; j++) (идем по элементам)
тут проверяем элемент на отрицательность(разветвление), if(A[i][j] < 0)
Если ДА то K++;
Если нет пропускаем.
закрываем цикл по j
закрываем цикл по i
опять разветвление if(K > 0)
Если НЕТ выдаем сообщение, что отрицательных элементов нет и идем в конец проги.
Если ДА то все что ниже идет отсюда:
обьявляем еще int-овые переменные: a, min, f
запускаем цикл по i (такой же) for(i = 0; i < m; i++)
запускаем цикл по j (тут ищем n-1 раз наименьший элемент) for(j = 0; j < n-1; j++)
дальше принимаем за наименьший первый из элементов min = j
запускаем цикл по f (поиск номера минимального элемента из неупорядоченных) for(int f = j + 1; f < n; f++)
тут опять разветвление if(A[f] < A[min])
Если НЕТ то в конец цикла
если ДА то: (нащли меньший элемент)
min = f; (запоминаем его номер)
и в три блока меняем элементы с номерами j и min:
a = A[j];
A[j] = A[min];
A[min] = a;
конец цикла по f
конец цикла по j
конец цикла по i

Все масив отсортирован. Надеюсь, все будет понятно....

Последний раз редактировалось Stilet; 31.08.2010 в 08:00.
Magius1000 вне форума Ответить с цитированием
Старый 31.08.2010, 02:27   #3
vlad_light
Пользователь
 
Регистрация: 27.08.2010
Сообщений: 95
По умолчанию

ммм... а как можно упорядочить строки по возростанию? Строка - это массив чисел(вектор). Операции сравнения векторов в математике не существует. Можно сравнить их норму, как вариант.
http://ru.wikipedia.org/wiki/Вектор_(математика) про вектор;
http://ru.wikipedia.org/wiki/Алгоритм_сортировки про сортировки;
http://ru.wikipedia.org/wiki/Блок-схема про блок-схему.
vlad_light вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Построить блок - схему katyuha_e Паскаль, Turbo Pascal, PascalABC.NET 9 06.05.2012 21:51
Помогите составить задачу и построить блок-схему Batusay Фриланс 20 23.09.2011 18:25
Построить блок схему realt Помощь студентам 3 25.05.2010 17:34
Построить блок - схему DeadAir Паскаль, Turbo Pascal, PascalABC.NET 1 03.04.2010 15:02
задание по графику:построить аналитическую зависимость. Составить блок-схему и программу вычисления Андрей1992 Фриланс 6 28.03.2010 13:38