IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Задача про матрицу и одномерный массив.
сообщение
Сообщение #1


Гость






Задача такая:
**На основе матрицы A(4 строки, 5 столбцов) сформировать одномерный массив B из 5 элэментов. Каждий элемент Bk этого массива получает значение, равное полусумме ззначений наибольшего и наименьшего элементов в k-м столбце матрицы A.
Для вычисления полусуммы значений наибольшего и наименьшего элементов в произвольном столбцематрицы использовать процедуру.**
Никак не могу ее решить, а препод. что-либо объяснять отказывается.
Помогите, если сможете.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Смотрю...
*****

Группа: Пользователи
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Цитата
ii -это индекс?
mout - это массив?

Да, ii - это индекс столбца
mOut - смотри "Real", т.е. вещественное число, т.е. это и будет возвращаться процедурой как полусумма.

Цитата
что такое полусумма, еще можно понять, наибольший и наиаменьший элементы должны находиться как-то так:
min:=A[1,1];
max:=A[1,1];
for i=1 to n do
for j=1 to m do
if A[i,j]<min then
min:=A[i,j];
{о необходимости begin-ов и end-ов, с сожалению, ничего не знаю}
if A[i,j]>max then
max:=A[i,j];

Не совсем так, полусумму нужно найти среди мин. и макс. элементов в определенной столбце (ii - индекс, который и передает в процедуру этот самый номер столбца), а у тебя ищется по всему массиву.

min:=a[1,ii];
max:=a[1,ii];
For i:=2 to 4 do
If a[i,ii]<min then min:=a[i,ii] else
If a[i,ii]>max then max:=a[i,ii];
mOut:=(min+max)/2;



Цитата
Но больше всего меня смущает фраза: " Каждый Bk-ый элемент... получает значение..... k-м столбце матрицы A"
Что это означает в переводе на русский?

см. выше приведенный код, может станет понятнее.

Цитата
И еще один вопрос, за чем находить и передовать индекс, если полусумма это простое число.

Мы передаем индекс (номер столбца) в процедуру, для того, чтобы она знала с каким именно столбцом ей работать.


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 8.09.2025 19:47
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name