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

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

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

 
 Ответить  Открыть новую тему 
> Матрица, Найти минимальный по модулю элемент матрицы и умножить на его значение
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Roman

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


Пожалуйста помогите с задачей для курсовой работы :
Дана прямоугольная матрица Ci,j размером . Найти минимальный по модулю элемент матрицы и умножить на его значение все элементы матрицы. Вывести полученную матрицу на печать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(minoru @ 11.12.2008 22:36) *
Пожалуйста помогите с задачей для курсовой работы :

Обязательно поможем. Говори, что сделал и что непонятно.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Roman

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



{
#5.pas

Copyright 2008 Roman <minoru@minoru-desktop>

Дана прямоугольная матрица Ci,j размером . Найти минимальный по модулю элемент матрицы и умножить на его значение все элементы матрицы.
Вывести полученную матрицу на печать.
}


program Work_5;

uses crt;
var i,j,m,n:integer;
a : array[1..10,1..10] of real;
c : real;

BEGIN
clrscr;
write ('n='); Readln(n);
write ('m='); readln (m);
begin
for i := 1 to n do
begin
for j := 1 to m do
begin
write('a[',i,',',j,']='); readln(a[i,j]);
end;
writeln;
end;

end;
readln;
END.


Вот а дальше "ступор", не могу понять как минимальный по модулю элемент.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Профи
****

Группа: Пользователи
Сообщений: 731
Пол: Женский

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


Ищешь минимум как обычно, только сравниваешь не сами элементы, а их модули: abs(a[i,j])
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Бывалый
***

Группа: Пользователи
Сообщений: 180
Пол: Мужской
Реальное имя: Юра

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


например так:
 
min:=abs(a[1,1]);
for i:=1 to n do
for j:=1 to m do
if(min > abs(a[i,j])) then
min:=abs(a[i,j]);

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Roman

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


Вот может кому пригодится


{
#5.pas

Copyright 2008 Roman <minoru@minoru-desktop>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
}


program Work_5;

uses crt;

const maxM=100;
maxN=100;

type TArray = array [1..maxN, 1..maxM] of real;

var m, n: byte;
Ar: TArray;
min: real;


procedure InputMx(Var Ar: TArray; var n, m: byte);
var i, j: byte;
begin
clrscr;
write ('n='); Readln(n);
write ('m='); readln (m);
for i:=1 to n do
for j:=1 to m do
begin
write('a[',i,',',j,']=');
readln(Ar[i,j])
end
end;

procedure FindMinAbs(Ar: TArray; n, m: byte; var min: real);
var i, j, minm, minn: byte;
begin
minn:=1;
minm:=1;
for i:=1 to n do
for j:=1 to m do
if abs(Ar[i,j])<abs(Ar[minn,minm])
then
begin
minn:=i;
minm:=j
end;
min:=Ar[minn,minm]
end;

procedure MultMxByMinAbs(var Ar: TArray; n, m: byte; min: real);
var i, j: byte;
begin
for i:=1 to n do
for j:=1 to m do
Ar[i,j]:=Ar[i,j]*min
end;

procedure ShowMx(Ar: TArray; n, m: byte);
var i, j: byte;
begin
clrscr;
for i:=1 to n do
for j:=1 to m do
writeln('a[',i,',',j,']=',Ar[i,j]4.gif8)
end;

BEGIN
InputMx(Ar,n, m);
FindMinAbs(Ar, n, m, min);
MultMxByMinAbs(Ar, n, m, min);
ShowMx(Ar, n, m)
END.


 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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