Четверг, 09.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 1
  • 1
Модератор форума: Seqular, Pavel  

ПОМОГИТЕ, ПОЖАЛУЙСТА!
ANNETДата: Суббота, 08.03.2008, 03:46 | Сообщение # 1
Новичок
Группа: Пользователи
Сообщений: 1
Репутация: 0
Замечания: 0%
Статус: Offline
помогите, пожалуйста, решить задачки!никак не получается sad
1.определить столбец матрицы А(n*n), который обладает наибольшей суммой модулей элементов.Если таких столбцов несколько, то взять первый из них.
2.заданы два вектора а={a(n)} и b={b(n)}.определить тот из них, который имеет меньшую длину.

Заранее благодарна!

 
AlexanderДата: Суббота, 08.03.2008, 06:58 | Сообщение # 2
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
1. Вот набросал код:
Code
uses crt;
const Size=4;
type
    Matrix=array[1..Size,1..Size] of integer;
{=========================================}
procedure PackMatrix(var M:Matrix);
var
    i,j:BYTE;
begin
    Randomize;
    for i:=1 to Size do
       for j:=1 to Size do
          M[i][j]:=Random(21)-10;
end;
{=========================================}
procedure WriteMatrix(M:Matrix);
var
    i,j:BYTE;
begin
    for i:=1 to Size do
       begin
          for j:=1 to Size do
             Write(M[i][j]:4);
          WriteLn;
       end;
end;
{=========================================}
function GetSum(M:Matrix;const i:BYTE):longint;
var
    j:BYTE;
    Sum:LongInt;
begin
    Sum:=0;
    for j:=1 to Size do
       Inc(Sum,Abs(M[j][i]));
    GetSum:=Sum;
end;
{=========================================}
var
    i,N:BYTE;
    M:Matrix;
    Result,Cur:LongInt;
begin
    ClrScr;
    PackMatrix(M);
    WriteMatrix(M);
    Result:=0;
    for i:=1 to Size do
       begin
          Cur:=GetSum(M,i); {Лучше выделить 4 байта под переменную, чем считать функцию 2 раза.}
          if Cur>Result then
             begin
                Result:=Cur;
                N:=i;
             end;
       end;
    WriteLn(Result:4,N:4);
    ReadKey;
end.

Код рабочий, но не проверенный, т.е. не факт, что всё сделано рационально.
2. А вот тут я не понял, я сталкивался с заданием векторов через две точки, через базис и ещё парой экзотических способов. А тут координаты векторов заданы через какую-то функцию. Кстати, "a={a(n)}" это абсурдная запись, сначала у тебя "a"-это вектор, а затем уже функция. Так что тут тебе придётся дать пояснения.
З.Ы. Поздравляю всю прекрасную половину человечества с 8 марта! Будте счастливы!


Скажем дружно- нафиг нужно!
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;