1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
| 18192123 |
5.06.2007 17:24
Сообщение
#1
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 920 Пол: Женский Реальное имя: Марина Репутация: 2 |
Дана матрица А(55). Определить массив Х из 5 элементов, каждый из которых равен сумме элементов того столбца, в котором находится первый положительный элемент соответствующей строки, и нулю, если все элементы строки неположительны.
Объясните пожалуйста, каким способом решать задачу...не могу составить конкретного алгоритма.... (есть такое предположение : записать в один массив суммы элементов каждого столбца, в другой - номер столбца, где находится первый положительный элемент строки, а после сравнивнить: равны ли очерёдный элемент второго массива и индекса 1-го массива) |
![]() ![]() |
| volvo |
5.06.2007 17:32
Сообщение
#2
|
|
Гость |
А просто пробегать по строке в поисках первого положительного ее элемента, и если он найден - то считать сумму столбца - никак нельзя? (изначально сумме присвоить значение 0, так что если положительных нет, тот же ноль и останется...)
|
| klem4 |
5.06.2007 17:49
Сообщение
#3
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
# include <stdlib.h> упс, опоздал Сообщение отредактировано: klem4 - 5.06.2007 17:49 -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
| 18192123 |
5.06.2007 22:33
Сообщение
#4
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 920 Пол: Женский Реальное имя: Марина Репутация: 2 |
упс, опоздал спасибо, но мне с динамической памятью не нужно было... зато взяла для себя идеи формирования вектора х...
Сообщение отредактировано: 18192123 - 5.06.2007 22:34 |
| volvo |
5.06.2007 23:41
Сообщение
#5
|
|
Гость |
Цитата в таком варианте это вообще выполнимо? Только с использованием дополнительного локального буфера (в него заносишь суммы столбцов, а потом заполняешь этими суммами вектор X). |
| klem4 |
6.06.2007 6:11
Сообщение
#6
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
18192123, Я так понял ты хочешь сначала посчитать все суммы для столбцов ? Зачем ? А если матрица размером 1000 * 1000 ? Представляешь сколько ты лишнего времени потратишь...
Сообщение отредактировано: klem4 - 6.06.2007 6:12 -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
| 18192123 |
6.06.2007 20:59
Сообщение
#7
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 920 Пол: Женский Реальное имя: Марина Репутация: 2 |
Почему такой вариант не правильно рабатает?
|
| volvo |
6.06.2007 21:19
Сообщение
#8
|
|
Гость |
Цитата Почему такой вариант не правильно рабатает? Может быть потому, что ты меняешь j внутри цикла по j?for (j = 0; j < n; j++) // Цикл по какой переменной? |
| 18192123 |
6.06.2007 21:37
Сообщение
#9
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 920 Пол: Женский Реальное имя: Марина Репутация: 2 |
Может быть потому, что ты меняешь j внутри цикла по j? а, точно... я попробывала ввести ещё одну переменную - и снова в чём-то ошибка!
|
![]() ![]() |
|
Текстовая версия | 8.12.2025 21:48 |