Kezdőoldal » Számítástechnika » Programozás » Free/turbo pascal, VALAKI?

Free/turbo pascal, VALAKI?

Figyelt kérdés

A programomban van egy eljárás ami a maximum kiválasztásának tétele viszont hibás eredményt ad, történetesen a legkisebb értéket.

Egy txt-ben a legtöbb karakterrel rendelkező adatsor karakterszámát szeretném megkapni.


Itt a kód:


Procedure f3(x3:ttomb; db:integer);

var i:integer;

max:integer;

min:integer;

begin

writeln;

writeln('3. feladat:');

i:=2;

max:=length(x3[1].szov);

while i<=db do

begin

if length(x3[i].szov)>=max then max:=length(x3[i].szov);

i:=i+1;

end;

write(max);


end;



2014. márc. 31. 20:59
 1/4 Tengor ***** válasza:

Biztos, hogy ez az eljárás hívódik meg?

Biztos van legalább 1 elem a tömbben?

2014. márc. 31. 21:05
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
a txt-t beolvastam egy korábbi eljárásban, és a főprogramban minden eljárás meg van hívva.
2014. márc. 31. 21:09
 3/4 coopper ***** válasza:

Szia.


Nincs semmi baj az eljárással, turboban müködik (kiegészitve a deklarációs résszel és a főprogrammal)


A következő adatokat adtam meg :


012

0123

01234


Az eredmény 5 lett.


Szerintem a gond a db változó értékevel van, (db<=1 esetén mindig az első szöveg hosszát kapod eredményűl - ha ez a legrövidebb akkor azt).


Nézd meg debuggal (vagy irasd ki db változó értékét), hogy mennyi is az annyi.


Sok sikert.

üdv.


Ja itt a teszt progi :


Program valami ;


Type tomb = record

szov : string ;

end ;


ttomb = array [1..3] of tomb;


Var adat : ttomb ;


Procedure f3(x3:ttomb; db:integer);

var i:integer;

max:integer;

min:integer;

begin

writeln;

writeln('3. feladat:');

i:=2;

max:=length(x3[1].szov);

while i<=db do begin

if length(x3[i].szov)>=max then max:=length(x3[i].szov);

i:=i+1;

end;

write(max);

end ;


Begin

Adat[1].szov:='012';

Adat[2].szov:='0123';

Adat[3].szov:='01234';

f3 (Adat,3);

readln ;

End.

2014. márc. 31. 21:57
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:
Utolsó, köszönöm, tényleg a db változóval volt a gond. Mivel a db a txt első sora amit azt adja meg hány adat sor van és be kellett újra olvasnom mivel az eljárásomba már nulla volt az értéke.
2014. ápr. 1. 10:07

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!