|
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://num-anal.srcc.msu.ru/lib_na/cat/av_htm_p/avz2r_p.htm
Дата изменения: Thu Feb 16 11:18:02 2012 Дата индексирования: Mon Oct 1 23:05:24 2012 Кодировка: Windows-1251 |
|
Текст подпрограммы и версий avz2r_p.zip avz2e_p.zip avz2c_p.zip |
Тексты тестовых примеров tavz2r_p.zip tavz2e_p.zip tavz2c_p.zip |
Нахождение максимальной по модулю компоненты и ее индекса из всего вектора или из заданного подмножества компонент этого вектора.
AVZ2R находит максимальную по модулю компоненту вектора V длины N и ее индекс. Кроме того, может быть найдена максимальная по модулю компонента и ее индекс из множества тех компонент, индексы которых последовательно отстают друг от друга на величину ISТЕР.
function AVZ2R(var V :Array of Real; N :Integer; ISTEP :Integer;
var J :Integer): Real;
Параметры
| V - | вещественный одномерный массив длины N, в котором задаются компоненты исходного вектора; |
| N - | заданное число компонент вектора (тип: целый); |
| ISTEP - | заданный шаг изменения индексов тех компонент вектора, из которых ищется максимальная по модулю; |
| J - | целая переменная, содержащая индекс максимальной по модулю компоненты. |
Версии
| AVZ2E - | нахождение максимальной по модулю компоненты и ее индекса из всего вектора, заданного с расширенной (Extended) точностью, или из заданного подмножества компонент этого вектора. |
| AVZ2C - | нахождение максимальной по модулю компоненты и ее индекса из всего комплексного вектора или из заданного подмножества компонент этого вектора. |
Вызываемые подпрограммы: нет
Замечания по использованию
|
В функции АVZ2E вектор V должен иметь тип Extended. В функции АVZ2С вектор V должен иметь тип Complex. |
Unit TAVZ2R_p;
interface
uses
SysUtils, Math, { Delphi }
LStruct, Lfunc, UtRes_p, AVZ2R_p;
function TAVZ2R: String;
implementation
function TAVZ2R: String;
var
N,ISTEP,J :Integer;
Y :Real;
const
V :Array [0..9] of Real = ( 1.0,2.0,3.0,4.0,5.0,4.0,3.0,2.0,1.0,0.0 );
begin
Result := '';
N := 4;
ISТЕР := 3;
Y := AVZ2R(V,N,ISTEP,J);
Result := Result + Format(' %20.16f %5d',[Y,J]) + #$0D#$0A;
N := 10;
ISТЕР := 1;
Y := AVZ2R(V,N,ISTEP,J);
Result := Result + Format(' %20.16f %5d',[Y,J]) + #$0D#$0A;
UtRes('TAVZ2R',Result); { вывод результатов в файл TAVZ2R.res }
exit;
end;
end.
Результаты: Y = 5. , J = 5