Математика


 Правила(обновени на 11.05.2008)   Търсене   Потребители   Потребителски групи   Регистрирайте сеРегистрирайте се 
 ПрофилПрофил   Влезте, за да видите съобщенията сиВлезте, за да видите съобщенията си   ВходВход 
Не е нужно да се регистрирате!

Как да декларирам матрицата до безкрайност


 
Създайте нова тема   Напишете отговор    Информатика Форуми -> Delphi(Pascal)
Предишната тема :: Следващата тема  
Автор Съобщение
Mortos



Регистриран на: 12 Oct 2008
Мнения: 5


МнениеПуснато на: Tue Oct 21, 2008 7:28 pm    Заглавие: Как да декларирам матрицата до безкрайност Отговорете с цитат

Имам предвид да направя, така че деклараторът сам да определя броя на стълбовете и редовете на масива. На теория, знам че става чрез въвеждане на променлива F например и write(' Vuvedete broq na redovete i stulbovete na masiva');
readln(F);

Да обаче не става защото не ми разпознава интервала на матрицата без константата в него. Ето как изглежда програмата ми досега:

Код:

PROGRAM Kursova_rabota_No1;
CONST
        N=3;
        M=(N*(N-1)) DIV 2;
VAR
    A:ARRAY [1..N,1..N] OF REAL;
    C:ARRAY [1..M] OF REAL;
    X:REAL;
    I,J,K:INTEGER;

BEGIN
         writeln ('***********************************************************');
   writeln ('This program was made by Grigor Ivanov, N: 051208059 .  ');
   writeln (' TU - Sofia , Departament of Thermalengineering ');
   writeln ('*************************************************************');
   writeln ('                 ---===<<<   Kursova Zadacha N:1   >>>===---');
   writeln ('___________________________________________________________');
   writeln (' Da se sustavi programa za obrabotka na masiva A[N,N] kudeto');
   writeln ('  dannite sa realni chisla v intervala [-1000; 1000], da izvurshvat slednite deistviq:');
   writeln ('  * otpe4atvane na uslovieto na zada4ata');
    writeln ('  * otpe4atvane avtora na programata');
    writeln ('  * vuvejdane na vhodnite danni');
    writeln ('  * otpe4atvane na vhodnite danni');
    writeln ('  * a) da se obrazuva ednomeren masiv C, elementite na koito sa elementite na masiva A');
    writeln ('  * namira6ti se pod glavniq, diagonal, b) polu4eniqt masiv da se sortira po golemina');
    writeln ('  * otpe4atvane na polu4enite rezultati i sled obrabotka a) i sled obrabotka b)');
    writeln ('_____________________________________________________________');
   writeln;

  { VYVEJDAME DANNITE }

  FOR I:=1 TO N DO
    BEGIN
      WRITELN(I,':');
      FOR J:=1 TO N DO
        BEGIN
          REPEAT
            WRITE('  ',J,'.');
            READLN(X);
          UNTIL (X>=-1000) AND (X<=1000);
          A[I,J]:=X;
        END
    END;

  { IZVEJDAME MATRICATA }

  WRITELN('Matrica:');
  FOR I:=1 TO N DO
    BEGIN
      FOR J:=1 TO N DO
        WRITE(A[I,J]:2:2,' ');
      WRITELN;
    END;

  { POPYLVAME MASIVA "C" S ELEMENTITE POD GLAVNIQ DIAGONAL }

  K:=1;
  FOR I:=2 TO N DO
    FOR J:=1 TO I-1 DO
      BEGIN
        C[K]:=A[I,J];
        K:=K+1;
      END;

  { SORTIRAME MASIVA "C" }

  FOR I:=2 TO M DO
    BEGIN
      X:=C[I];J:=I-1;
      WHILE (X<C[J]) AND (J>0) DO
        BEGIN
          C[J+1]:=C[J];
          J:=J-1;
        END;
      C[J+1]:=X;
    END;

  { IZVEJDAME SORTIRANIQ MASIV }

  WRITELN;
  WRITELN('Sortirani elementi pod glavniq diagonal:');
  FOR I:=1 TO M DO
    WRITE(C[I]:2:2,' ');
    readln
  END.



Какво може да се сложи вместо това N=3 като константа за да разпознае променливата[/code]
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Реклама







Пуснато на:     Заглавие:

Върнете се в началото
Покажи мнения от преди:   
Създайте нова тема   Напишете отговор    Информатика Форуми -> Delphi(Pascal) Часовете са според зоната GMT + 2 Часа
Страница 1 от 1

 
Идете на:  
Можете да пускате нови теми
Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети
You cannot attach files in this forum
Може да сваляте файлове от този форум
Copyright © 2007-2013 math10.com.   изработка на сайт