Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 10

Найти произведение отрицательных элементов под главной диагональю

10.02.2014, 22:30. Показов 2009. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Матрица действительная квадратная 5x5
написал код, но он не работает. В чем ошибка, как думаете?

Visual Basic
1
2
3
4
5
6
7
D = 0
For i = 1 To 5
For j = 1 + i To 5
If A(i, j) < 0 Then D = D * A(i, j)
Next j
Next i
Label1 = D
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.02.2014, 22:30
Ответы с готовыми решениями:

В квадратной матрице найти произведение отрицательных элементов под главной диагональю
Дали курсовую.Разработать алгоритм заполнения и обработки массива,а также интерфейс программы и программный код в среде VBA Excel.В данной...

Определить произведение отрицательных чисел, расположенных под главной диагональю массива
1.Присвоить значение &quot;5&quot; всем числам меньшим &quot;11&quot; и определить сумму каждого нечетного ряда массива Q(7;5) 2.Определить произведение...

Найти количество элементов матрицы, расположенных под главной диагональю и над главной
вот думаю как то так но не работает( 'выше главной For j = 1 To 5 For i = 1 To j If a(i, j) &gt; 0 Then ct = ct + 1 ...

10
199 / 24 / 12
Регистрация: 07.02.2014
Сообщений: 221
11.02.2014, 12:01
В D у тебя 0 лежит. А при умножении на 0 всегда будет 0. Первую команду измени на D=1. И надо бы учесть вариант, когда таких чисел нет вообще.
0
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 10
11.02.2014, 20:57  [ТС]
Цитата Сообщение от DeSex Посмотреть сообщение
В D у тебя 0 лежит. А при умножении на 0 всегда будет 0. Первую команду измени на D=1.
тааак, спасибо!
Цитата Сообщение от DeSex Посмотреть сообщение
надо бы учесть вариант, когда таких чисел нет вообще
учесть? пожалуйста, исправьте мой код, а то я не совсем Вас понял.
0
199 / 24 / 12
Регистрация: 07.02.2014
Сообщений: 221
12.02.2014, 10:00
Цитата Сообщение от inflamedparado Посмотреть сообщение
учесть? пожалуйста, исправьте мой код, а то я не совсем Вас понял.
Если написать D=1, то программа будет выдавать верный результат, если под гл.диагональю есть отрицательные числа. Ну а если под гл.диагональю вообще нет отрицательных чисел? Программа все равно даст ответ, что произведение отр.чисел равно 1, а ведь это будет не совсем верно. Если это учебное упражнение, то такой вариант, я думаю, препода устроит, придираться не будет. А вот если это реальная прога, то этот вариант надо обработать. Например, завести еще счетчик найденных отрицательных чисел. И если его значение будет меньше 2, то выдать сообщение, что произведение не может быть вычислено, т.к. недостаточно множителей. Вряд ли это стоит делать в Вашем случае (теперь и сам не рад, что ляпнул про это, видно, поумничать захотелось)

Добавлено через 12 часов 25 минут
Или вот такой вариант:
Visual Basic
1
2
3
4
5
6
7
8
9
D = 0
For i = 1 To 5
For j = 1 + i To 5
If A(i, j) < 0 Then 
  If D=0 then D=A(i, j) else D = D * A(i, j)
EndIf
Next j
Next i
Label1 = D
0
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 10
13.02.2014, 23:19  [ТС]
можете алгоритм в виде блок-схем составить? пожалуйста!
0
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 10
13.02.2014, 23:47  [ТС]
что-то здесь не так. нужно найти произведение отрицательных элементов под главной диагональю, но у меня другое значение получается. верное значение= -149760. значит, код неправильный?
Миниатюры
Найти произведение отрицательных элементов под главной диагональю  
0
199 / 24 / 12
Регистрация: 07.02.2014
Сообщений: 221
14.02.2014, 11:45
Твой код выводит произведение чисел не под, а над гл.диагональю
0
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 10
14.02.2014, 18:24  [ТС]
а как вывести под диагональю?

Добавлено через 3 минуты
произведение непонятно чего он выводить у меня. но нужно произведение отрицательных элементов под главной диагональю
0
 Аватар для Апострофф
9908 / 3924 / 742
Регистрация: 11.10.2011
Сообщений: 5,907
14.02.2014, 18:28
Цитата Сообщение от inflamedparado Посмотреть сообщение
а как вывести под диагональю?
заменить две строки-
Visual Basic
1
2
For i = 1 To 5
  For j = 1To i-1
0
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 10
17.02.2014, 20:19  [ТС]
мой код выводить непонятно что. у меня, если посчитать (на калькуляторе!), получается не то значение, которое выводит моя программа. есть какие-то идеи относительно этого?
DeSex, Апострофф, DeSex, можете помочь? ошибки, как я понимаю, в 4-9 строках кода.
0
199 / 24 / 12
Регистрация: 07.02.2014
Сообщений: 221
19.02.2014, 10:15
Нужно выкинуть элементы самой гл.диагонали. Поэтому попробуй так:
PureBasic
1
2
For i = 2 To 5
  For j = 1 To i-1
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.02.2014, 10:15
Помогаю со студенческими работами здесь

Объясните, как найти произведение всех нечётных под главной диагональю i>j
Код Sub массив() Cells.Clear Dim n As Integer, m As Integer, i As Integer, j As Integer, max As Integer, S As Integer, V As Single, P...

Найти сумму элементов, лежащих под главной диагональю квадратной матрицы С
Дана матрица 5х5. Найти сумму элементов, лежащих под главной диагональю квадратной матрицы С. Найти вектор, составленный из сумм по...

Вычислить произведение нечетных отрицательных элементов расположенных под главной диагональю матрицы
2 задача Вычислить произведение нечетных отрицательных элементов расположенных под главной диагональю матрицы B(N,N). ПЛЗ ПОМОГИТЕ!!!

Массив: Вычислить произведение отрицательных элементов вещественной матрицы находящихся под главной диагональю
Вычислить произведение отрицательных элементов вещественной матрицы находящихся под главной диагональю (диагональ, идущая сверху вниз,...

упростите прогу...вычислить произведение и число отрицательных элементов матрицы А[N,N],находящихся под главной диагональю.
void main(int argc, char* argv) { clrscr(); int n; cout &lt;&lt; &quot;Vvedite n: &quot;; cin &gt;&gt; n; int **a = new int*; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru