Помощь - Поиск - Пользователи - Календарь
Полная версия: Паскаль матрицы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
_Оксана_
Привет, помогите студентки, не понимаю как решать
1)В данной вещественной матрице размером 6 на 9 поменяйте местами строку, содержащую элемент с наибольшим значением, со строкой, содержащей элемент с наименьшим значением. Предполагая, что эти элементы единственные.

2) пусть дано натуральное число n и целочисленная квадратная матрица порядка n. Получите b1,…,bn, где bi – это:
А)значение первого по порядку положительного элемента i-й строки (если таких нет, то принять bi=1)
Б) сумма элементов, расположенных за первым отрицательным элементом в i-й строки (если все строки неотрицательные, то принять bi=100)
С)сумма элементов, предшествующих последнему отрицательному элементу i-й строки (если все элементы строки неотрицательны, то принять bi=-1)

Но вот такая я непонимающая, помогиттте-е-е wacko.gif
мисс_граффити
что пробовала делать?
с чем (конкретно, а не "с задачами") возникли проблемы?
Гость
Цитата(мисс_граффити @ 20.02.2008 16:31) *

что пробовала делать?
с чем (конкретно, а не "с задачами") возникли проблемы?


1)В данной вещественной матрице размером 6 на 9 поменяйте местами строку, содержащую элемент с наибольшим значением, со строкой, содержащей элемент с наименьшим значением. Предполагая, что эти элементы единственные.

Как понимаю,


For i:=1 to 9 do
For j:=1 to 6 do read(a[I, j];
{посчитать сумму каждой строки}
Sum:=0;
For i:=1 to 9 do
For j:=1 to 6 do
sum:=sum+a[I,j];{но это разве подсчёт каждой строчки? }
{необходимо запомнить мин и мах строки, как?}
{а дальше обмен}
K:=srt_max;
srt_max:=srt_min;

Я права? Но как это будет выглядит на Паскале не представляю!!! unsure.gif

2) пусть дано натуральное число n и целочисленная квадратная матрица порядка n. Получите b1,…,bn, где bi – это:
А)значение первого по порядку положительного элемента i-й строки (если таких нет, то принять bi=1)

i-элемент кто вводит пользователь
if a[i,j]>0 then write(a[i,j])

Б) сумма элементов, расположенных за первым отрицательным элементом в i-й строки (если все строки неотрицательные, то принять bi=100)

{что это за строка I, она вводится пользователем?????}
S:=0;
If a[I,j]<0 then s:=s+a[I,j]

С)сумма элементов, предшествующих последнему отрицательному элементу i-й строки (если все элементы строки неотрицательны, то принять bi=-1)
А эту даже не представляю как wacko.gif
и ещё воприс, я тут ну новенькая, как пользоваться кадом??? unsure.gif
-оксана-
предыдущее сообщение тоже моё unsure.gif unsure.gif unsure.gif
volvo
-оксана-, понимаешь в чем дело... Для того, чтобы поменять местами строки, как это требуется в первом задании, совсем не нужно
Цитата
{посчитать сумму каждой строки}
. Достаточно просто пройти по всей матрице, и найти минимум и максимум, при этом запоминая номер строки, в которой он встретился... А потом - поменять эти 2 строки местами:

i_min := 1; i_max := 1;
min: = a[i_min, 1]; max := a[i_max, 1];

for i := 1 to m do
for j := 1 to n do begin
if min > a[i, j] then begin min := a[i, j]; i_min := i; end;
if max < a[i, j] then begin max := a[i, j]; i_max := i; end;
end;
{ теперь просто меняем строку №i_min со строкой №i_max местами... }


... как это сделать - уже показывалось неоднократно, в том числе в FAQ-е.

Цитата
я тут ну новенькая, как пользоваться кадом???
Для гостей эта функция доступна, если только ты не отвечаешь через "быстрый ответ", внизу темы, а если нажимаешь на кнопку "Ответить"... Тогда тебе надо выделить мышью твой код и выбрать из комбобокса CODE правильный язык программирования...
мисс_граффити
Цитата
2) пусть дано натуральное число n и целочисленная квадратная матрица порядка n. Получите b1,…,bn, где bi – это:
А)значение первого по порядку положительного элемента i-й строки (если таких нет, то принять bi=1)

i-элемент кто вводит пользователь
if a[i,j]>0 then write(a[i,j])

нет
i изменяется от 1 до N...

то есть как-то так:
for i:=1 to n do
begin
j:=1;
while (a[i,j]<=0) and (j<=n) do
j:=j+1;
if a[i,j]>0 then
b[i]:=a[i,j]
else
b[i]:=1;
end;

набирала здесь, не проверяла...
но, думаю, идея понятна.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.