pomoc pascal!!!

Programovacie jazyky, rady, poradňa...
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

pomoc pascal!!!

Príspevok od používateľa Petra2805 »

caute ludkovia, vidim ze ste tu vsetci mudri...nevie mi niekto poradit co sa tyka programovania v pascali?
no pre mna je to bludisko :shock:
a bohuzial, mam z toho zadanie do skoly a neviem si s tym rady...ach jaj
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

a čo ti treba?
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

no mam zostavit algoritmus, ktory v matici 5x5 najde číslo riadku, ktorého absolútna hodnota súčtu prvkov je maximum a minimum v danej matici + štruktogram ...
:cry:
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

jj, zachvíľku ti to sem dám.. idem sa pustiť do toho

PS: tie čísla v matici sa majú zadať, alebo náhodne vygenerovať?
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

no tak vopred dakujem...
no a zadanie ti napisem tak ako som ho dostala, lebo ja som na taketo veci pocitacovy antitalent:
Zostavte algoritmus a program v matici 5x5...atd. to vies a:
mame to vypracovat nasledovne
-vykonajte analýzu všetkych vstupných a výstupných premenných a stanovte ich dátovy typ
- zostavte štruktogram
-zostrojte program v pascale

prvé dva body maju byt vo worde.
a este tu mam, ze to musí obsahovat návrh riešenia, analýzu vstup. a výstup. premenných, štruktogram a odladeny a okomentovaný zdrojový kod....
no jo, uz teraz som z toho zmagorena :?
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

jo, inak ma to byt v Pascali 7.0
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

máš tam hotové exéčko aj okomentovaný zdroják, ešte ti idem spraviť ten štrukturogram a ten rozbor

//edit: máš to kompletné, no neviem či je ten štrukturogram a analýza dobre, lebo ja som nikdy nerobil :oops:
Prílohy
matica.rar
exe aj okomentovaný zdroják
(21.07 KiB) 186 stiahnutí
doc.rar
analýza + štrukturogram
(10.9 KiB) 212 stiahnutí
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

no teda, ty si sikovny :oops:
inak mi to v tom pascali vypisuje furt error...hm?nebude tam nejaka chyba? :wink:
ale inak veeeeeeeelmi pekneeeee dakujeeem :smt043
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

akú chybu? na ktorom riadku? ja som to písal v delphi lebo pascal nemám a kompilátor mi to zobral.. napíš na ktorom riadku a čo tam vypisuje
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

no vypisuje mi to :
Error 4: Duplicate identifier (matica)
a potom:
Error 113: Error in statement
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Petra2805 napísal:no vypisuje mi to :
Erro 4: Duplicate identifier (matica)
jasné, to som si neuvedomil.. tak sa volá aj to pole, tak program sa tak volať nemôže. Prepíš to na niečo iné, napríklad uloha (Teda prvý riadok bude Program uloha; )
Petra2805 napísal:a potom:
Error 113: Error in statement
jj, v pascale sa dávajú inač komentáre ako v delphi, všade kde je komentár (začína dvoma lomítkami) musíš dať celý komentár (tie lomítka môžeš potom vynechať) do množinových zátvoriek, teda to bude vyzerať takto:

Kód: Vybrať všetko

program uloha;
uses CRT;

var matica:array[1..5,0..5] of integer;
  i,j,sucet,minimum,maximum,minriadok,maxriadok:integer;

begin
clrscr;  {zmažem display}

   for I:=1 to 5 do begin    {vsetky riadky}
      for J:=1 to 5 do begin {aj stlpce}
        matica[i,j]:=random(100)-50;  {naplnim nahodnymi hodnotami}
      end;
   end;

  for I:=1 to 5 do begin  {prejdem vsetky riadky}
    sucet:=0;
     for j:=1 to 5 do sucet:=sucet+matica[i,j]; {zratam sucet hodnot}
     matica[i,0]:=abs(sucet);  {a na zaciatok riadku si ulozim absolutnu hodnotu}
  end;

  minimum:=matica[1,0];  {minimum aj maximum beriem prvy prvok}
  maximum:=matica[1,0];
  for I:=1 to 5 do begin  {prejdem celu maticu}
    if matica[i,0]>=maximum then begin
      maximum:=matica[i,0]; {najdem maximumu}
      maxriadok:=i;          {zapamatam si riadok}
      end;
     if matica[i,0]<=minimum then begin
      minimum:=matica[i,0];   {rovnako ako s maximom}
      minriadok:=i;
      end;
  end;

  for I:=1 to 5 do begin
    for J:=1 to 5 do write(matica[i,j]:5);  {vypisem maticu}
  writeln;
  end;        {aj vysledky}
  writeln('Maximum je v ',maxriadok,'. riadku a jeho absolutna hodnota je: ',maximum);
  writeln('Minimum je v ',minriadok,'. riadku a jeho absolutna hodnota je: ',minimum);
end.
myslím že tak sa označuje komentár, ak nie, tak nahraď { za (* , a } nahraď za *) ale myslím že tie množinové by mali byť v pohode
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Podľa mňa je to dobré (netestoval som to). Jediné, čo by som opravil je to, že tam nie sú nadefinované premenné maxriadok a minriadok v prípade, že je najväčšia/najmenšia hodnota hneď v prvom riadku. A ešte jedno minimum:=matica[1,0]; by som zmenil na maximum:=matica[1,0];
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

chrono napísal:Podľa mňa je to dobré (netestoval som to). Jediné, čo by som opravil je to, že tam nie sú nadefinované premenné maxriadok a minriadok v prípade, že je najväčšia/najmenšia hodnota hneď v prvom riadku. A ešte jedno minimum:=matica[1,0]; by som zmenil na maximum:=matica[1,0];
haluz :D
petra: doplň si tam aj znamienka rovnosti

edit: no jo, už som to tam opravil.. platí ten zdroják čo je tu uvedený, nie ten čo je v prílohe
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

čooo?
no idem nejak na to...
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Treba upraviť tieto tri riadky:

Kód: Vybrať všetko

maximum:=matica[1,0];
if matica[i,0]>=maximum then begin
if matica[i,0]<=minimum then begin
//audiotrack: už som písal že som to upravil v tom kóde... chudera už musí byť dobre zmätená :D
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

este mi to vypisuje
Error 215: Arithemtic overflow

a kde mam doplnit rovna sa?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

if matica[i,0]>maximum then begin 
nahradíš týmto:

Kód: Vybrať všetko

if matica[i,0]>=maximum then begin 
a rovnako:

Kód: Vybrať všetko

if matica[i,0]<minimum then begin 
nahradíš týmto:

Kód: Vybrať všetko

if matica[i,0]<=minimum then begin 

ten zelený kod na predchádzajúcej strane je už upravený, zkopíruj si to..


a kde ti vypisuje túto chybu?
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

na 9. riadku ako je:

matica (i,j):=random (100)-50 atd...
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

a nie je nahodou

v tom 9. riadku random(100-50)?
ako spolu v zatvorke, lebo potom mi to uz nevypisuje ziadnu chybu...
a to potom aj v tom struktograme musim zmenit, jo?
Petra2805
Amateur
Amateur
Príspevky: 17
Registrovaný: 23 apr 2007, 17:56
Bydlisko: Bratislava

Príspevok od používateľa Petra2805 »

A DAAAKUJEM :smt023
Napísať odpoveď