Stránka 1 z 1
pascal help
Napsal: stř 22. dub 2009, 15:50
od BlinDy
zdravím... mám takovou otázku.. nenapsal by mi někod z hlavy, nebo mě na to aspon nekdo nenavedl jak bych mohl v pascalu udelat neco takoveho??
dejme tomu ze mam program napr nejakeho autobazaru.. dam zadat auto (zadam udaje x,y,z) a potom mam hledacky na veci x,y,z a podle toho to najde auto... jak by se dalo udelat zebych zadal SPZku a pak stacilo do hledani zadat napr 3 cisla a vyhledalo by to celou SPZ??? jakoze zadat jen cast hledaneho vyrazu...
snad se to z toho da pochopit

diky
Re: pascal help
Napsal: stř 22. dub 2009, 16:08
od Zivan
Neco jako, ze mas udaje v TXT souboru, zadas zacatek SPZ a pak staci jen nacist soubor a najit prvni (nebo vsechny) stejne zacinajici SPZ?
A to porovnani je prece jednoduche. Vezmes prvni SPZ a porovnas prvni znak, kdyz sedi, tak druhy znak...atd. az do velikosti toho zadaneho zacatku. Kdyz neco nesedi, tak jdes na dalsi SPZ, kdyz vse sedi a vycerpal jsi pocet zadanych znaku, tak mas spravnou SPZ a vypises ji. A pak bud koncis s vyhledavanim nebo pokracujes na dalsi SPZ, podle toho jestli hledas vsechny nebo jen jednu.
A ted uz staci jen projit to, co jste ve skole urcite delali a naprogramovat to

Re: pascal help
Napsal: stř 22. dub 2009, 18:32
od bubanek
V čem máš ty údaje uložené? Record předpokládám...
A máš to v nějakém souboru nebo pole recordů nebo nějaký seznam?
Re: pascal help
Napsal: stř 22. dub 2009, 20:13
od BlinDy
bubanek píše:V čem máš ty údaje uložené? Record předpokládám...
A máš to v nějakém souboru nebo pole recordů nebo nějaký seznam?
ou pomalu na me

jsem zacatecnik

) na zacatku programu mam napsane "type xx=record " takze to asi bude record

a potom tu druhou otazku opravdu netusim

jak to poznam??

dystak sz at tady ze sebe nedelam verejne blbca
Zivan píše:
A to porovnani je prece jednoduche. Vezmes prvni SPZ a porovnas prvni znak, kdyz sedi, tak druhy znak...atd. az do velikosti toho zadaneho zacatku. Kdyz neco nesedi, tak jdes na dalsi SPZ, kdyz vse sedi a vycerpal jsi pocet zadanych znaku, tak mas spravnou SPZ a vypises ji. A pak bud koncis s vyhledavanim nebo pokracujes na dalsi SPZ, podle toho jestli hledas vsechny nebo jen jednu.
hmmmm zkusime uvidime

diky
Re: pascal help
Napsal: stř 22. dub 2009, 20:27
od bubanek
Jestli máš nějaký kousek toho programu tak ho sem dej.
Re: pascal help
Napsal: stř 22. dub 2009, 20:42
od BlinDy
Kód: Vybrat vše
program auticka;
uses crt;
type auta=record typ,znacka,barva,stav:string; rokvyroby,rychlost,cena: integer; end;
var seznam: file of auta;
auto:auta;
volba:char;
function RES:boolean;
var temp: boolean;
begin
temp:=false;
readln(volba);
repeat
if upcase(volba) in ['A','N']
then temp:=true;
until temp=true;
if upcase(volba)='A'
then RES:=true
else RES:=false; end;
pak uz nasleduji jen procedury pro pridavani a vypisy atd... toto je zacatek
Re: pascal help
Napsal: stř 22. dub 2009, 21:28
od bubanek
Pokud by byla SPZ uložená jako string tak bys mohl mít takovouto proceduru:
(ale musel bys urpavit hlavičku)
Kód: Vybrat vše
type auta=record typ,znacka,barva,stav,spz:string; rokvyroby,rychlost,cena: integer; end;
soubor=file of auta;
var seznam: soubor;
auto:auta;
volba:char;
Kód: Vybrat vše
procedure foo(var seznam:soubor);
var i:integer;
spz,s:string;
begin
writeln('Zadej SPZ k hledání');
readln(s);
while not eof(seznam) do begin
read(seznam,auto);
spz:=auto.spz;
if (spz[1] = s[1]) and (spz[2] = s[2]) and (spz[3] = s[3]) then writeln(spz);
end;
end;
Je to asi napsané prasácky, ale nemám teď náladu to řešit, navíc pochybuju že váš učitel vyžaduje efektivní programování

Re: pascal help
Napsal: stř 22. dub 2009, 21:43
od Zivan
No ten IF bych urcite nahradil cyklem. Tenhle kod predpoklada, ze zadas presne 3 znaky z SPZ
Po napsani doporucuji poradne otestovat, ze to funguje spravne.
Ja bych nechal autora tvorit podle sebe a pomoct mu s problemy, na ktere v prubehu narazi.
Re: pascal help
Napsal: stř 22. dub 2009, 22:07
od BlinDy
mno jelikoz uz tento rok dodelavam jen abych musel a asi uz to nebudu delat protoze me to nebavi tak moc dekuju za napsani

zkusim to

diky moc vsem

Re: pascal help
Napsal: stř 22. dub 2009, 23:53
od bubanek
Zivan: Na cyklus si to může klidně upravit sám, tohle je jenom pro představu.
Navíc nevidím důvod mu to nenapsat, já to taky většinou pochopím až když to vidím hotové a touhle cestou se učím.