|
1 / 1 / 0
Регистрация: 19.10.2015
Сообщений: 23
|
|
Вычислить суммы элементов главных диагоналей массивов с использованием подпрограмм19.12.2015, 00:16. Показов 2869. Ответов 10
Метки нет (Все метки)
Ввести 2 двумерных массива и в каждом массиве вычислить сумму элементов главной диогонали. Как я понял, нужно сделать впрограмму в которой вводится массив, а подпрограмму сунуть процесс вычисления суммы. Прошу помочь)))
0
|
|
| 19.12.2015, 00:16 | |
|
Ответы с готовыми решениями:
10
Процедуры и функции. Вычислить Y=C-D, где C и D суммы элементов главных диагоналей матриц A и B
|
|
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
|
||||||
| 19.12.2015, 00:21 | ||||||
Сообщение было отмечено ZX Spectrum-128 как решение
Решение
1
|
||||||
|
1 / 1 / 0
Регистрация: 19.10.2015
Сообщений: 23
|
||||||
| 20.12.2015, 02:16 [ТС] | ||||||
|
Мне нужно чтобы использовалась процедура, препод сказал что программа по объему и впринципе верна по написанию, но она не работает. Можете посмотреть?
0
|
||||||
|
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
|
||||||
| 20.12.2015, 08:36 | ||||||
|
SABIRCHIK, ну ты две большие ошибки делаешь.
одна даже откомплировать код не позволяет. смотри, в Паскале формальные параметры в процедуре/функции (те, что ты описал в объявлении процедуры) должны В ТОЧНОСТИ соответствовать фактических параметрам (что ты передаёшь, когда вызываешь процедуру в коде. Посчитай, сколько у тебя параметров в процедуре summ и сколько ты туда передаёшь. а второе. твоя процедура считает сумму по всем элементам массива. а ты её в цикле вызываешь. по видимому, ты там раньше считал сумму (и это было правильно). а теперь вынес подсчёт в процедуру, в процедуре свои циклы, поэтому так делать нельзя! Добавлено через 8 минут я бы тебе предложил так написать:
Как ты видишь, для заполнения массивов используется однотипный код. Было бы неплохо сделать процедуру заполнения массива и вынести её в отдельную процедуру. чтобы в главной программе не было циклов (и переменные i и j тогда не нужны). Но пусть это будет твоим домашним заданием!
0
|
||||||
|
Модератор
|
||||||
| 20.12.2015, 10:23 | ||||||
|
И еще один момент. По условию считать надо сумму элементов главной диагонали, а не всех элементов матрицы.
0
|
||||||
|
1 / 1 / 0
Регистрация: 19.10.2015
Сообщений: 23
|
|
| 20.12.2015, 14:18 [ТС] | |
|
я прошу прощения за грубые ошибки. хочу спросить, получается в этом коде что Вы мне прислали, 2 процедуры, одна вычисляющая сумму элементов главной диагонали, а вторая заполнение массива? Зачем нужна вторая процедура, меня когда препод спросить этот вопрос я ничего не смогу ответить, я могу убрать ее? И еще, мы прошли эту тему "подпрограммы, основную суть я понял, но не могу никак разобраться с параметрами. Если я правильно понимаю, то в процедуре, то что мы обсчитываем мы обозначаем за переменную и записываем после слова var, затем когда нам нужно в главной программе написать мы пишем имя процедуры и ту переменную, за которую мы приняли результат своих вычислений??? Я как бы хочу разобраться в чем дело, потому что просто так списать, это не дело, как показала практика и дотошный препод)))))))
Добавлено через 1 минуту всмысле, я нарисовал множество матриц на бумажке, проверил у элементов главной диагонали всегда число строк равно числу столбцов. Я не прав в чем-то?
0
|
|
|
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
|
|||||||||||
| 20.12.2015, 14:56 | |||||||||||
|
printmass - вывести содержимое массива на экран. Иначе нельзя проверить, правильно программа считает или нет. Массив случайными числами заполняется. А какими - снаружи не видно. Вот я и добавил вывод на экран. Вот, например, если ты напишешь процедуру, которая должна изменять твой массив, то в перечне параметров перед именем массива нужно будет написать var А вообще, по Паскалю мульён книжек и статей, неужели ты не можешь прочитать, что такое параметры и как они задаются? Что у элементов главной диагонали номер строки всегда равен номеру столбца? Это так. я же тебе сразу написал, достаточно ОДНОГО цикла вместо
0
|
|||||||||||
|
Модератор
|
|
| 20.12.2015, 20:41 | |
|
У неквадратных матриц тоже есть главная и побочная диагонали.
Внутри процедуры менять можно любые параметры, кроме константных (const), но в вызывающую программу будут возвращены изменения только тех параметров, что переданы по ссылке (var). Добавлено через 3 минуты В подпрограммы обычно убирают повторяющиеся действия, чтобы не дублировать их в основном коде, а вызвать выполняющую действие подпрограмму. Поскольку массивов 2, однотипные действия с каждым будут повторены минимум дважды, во избежание дублирования разумно вынести их в отдельные процедуры.
0
|
|
|
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
|
||
| 20.12.2015, 22:39 | ||
|
Если несложно, покажите, пожалуйста, элементы главной и побочной диагонали в матрице, например, 3 на 10
0
|
||
|
Модератор
|
||||||
| 20.12.2015, 23:00 | ||||||
|
Sergio Leone,
полагаю, 3х5 и 5х3 будет достаточно наглядно:
Для квадратной матрицы и то, и другое заканчивается одновременно.
1
|
||||||
|
2511 / 1132 / 582
Регистрация: 07.06.2014
Сообщений: 3,286
|
||||||||||||
| 20.12.2015, 23:20 | ||||||||||||
|
спасибо.
тогда, конечно, нужно использовать либо код автора темы
по поводу главной и побочной диагонали в неквадратных матрицах существуют разные мнения. Тут на форуме была такая цитата из " В.А. Ильин, Э.Г. Позняк "Линейная алгебра", издание четвёртое, 1999" https://www.cyberforum.ru/post5182895.html а Тут, допускает:
0
|
||||||||||||
| 20.12.2015, 23:20 | |
|
Помогаю со студенческими работами здесь
11
Вычислить суммы главных элементов диагоналей матриц Вычислить суммы элементов главных диагоналей матриц A(5x5), B(7x7) Вычислить разность суммы главных и побочных диагоналей матрицы
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes.
А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения
развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|