Paskal problem!

1

Paskal problem!

offline
  • Pridružio: 19 Dec 2005
  • Poruke: 110
  • Gde živiš: S one strane Drine gde padaju mine!!!

Imam mali problem u paskalu.
Profesor je dao sledeci zadatak:
Uneti neki tekst pa izbrojati koliko puta se javlja slovo A u tom tekstu?

Pokusao sam da radim ovaj zadatak, ali nikako da mi uspe?
Da li neko mozda zna kako da ga uradim?

Verovatno se koristi neka funkcija koju do sada nismo ucili.

Ucili smo samo naredbe:
REPEAT, WHILE, IF, FOR, CASE i nista vise.

Unapred hvala!!!



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 04 Sep 2003
  • Poruke: 24130
  • Gde živiš: Wien

'pos' iz StrUtils ti pokazuje na kojoj poziciji se nalazi dato slovo.
Oblik je:

N := pos('A', rec); gde je N integer;

ukoliko slovo nije nadjeno, onda vraca nulu.

Kada odredis prvo slovo, onda mozes da izbrises sve do tog slova, pa da ponovo izvrsis pretragu.

Ukoliko 'pos' nije dozvoljen, onda prebacis rec u array of char, pa iteriras kroz array i proveravas da li je trenutni elemenat jednak slovu A.



offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2596
  • Gde živiš: Stara Pazova

Pa ako ste ucili samo te naredbe onda i ne mozes da koristis ni jednu drugu funkciju ( kao sto je Pos ), a i ne treba ti posto su ti ove sto ste ucili sasvim dovoljne.

Naime svaki string koji se unese se predstavlja kao niz i svakom clanu niza mozes pristupiti sa a[i] gde je a string a i je index tj. pozicija, tj. broj slova koje trenutno gledas u tom nizu tj. stringu Very Happy... Hehe, koliko tj.-a sam sada napisao Very Happy.

Znaci tebi samo treba nesto ovako:

program ponavljanje_slova; var neka_rec: String;     broj_ponavljanja, i: Integer; begin   readln(neka_rec);   broj_ponavljanja:= 0;   for i := 1 to Length(neka_rec) do   begin     if neka_rec[i] = 'A' then Inc(Broj_ponavljanja);   end; end.

Dopuna: 27 Feb 2006 20:11

Eh, nisam video da je bobby vec napisao okvirno kako bis e ovo resilo, s tim sto nema potrebe da se rec prebacuje u array of char posto to pascal/delphi vec samo vide tako Smile.

offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Verovatno je profesor i mislio na ovakvo resenje kakvo je strog napisao. To je klasicno skolski, jedino sto rec ne sme da bude duza od 255 karaktera dok to nije slucaj kod array of char.

offline
  • Pridružio: 19 Dec 2005
  • Poruke: 110
  • Gde živiš: S one strane Drine gde padaju mine!!!

Hvala Strog program koji si napisao je upravo taj koji mi je trebao,
samo sto moj paskal ne prepoznaje Inc(broj_ponavljanja);
pa sam ga uradeo ovako:

program ponavljanje_slova; uses wincrt; var neka_rec: String;     broj_ponavljanja,i,p: Integer; begin   readln(neka_rec);   broj_ponavljanja:= 0;   for i := 1 to Length(neka_rec) do   begin     if neka_rec[i] = 'A' then     broj_ponavljanja:=broj_ponavljanja+1;   end;   write(Broj_ponavljanja); end.

Edit by Srki_82: koristi code tagove.

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2596
  • Gde živiš: Stara Pazova

Koji je to Pascal sto ne prepoznaje Inc?

I koliko vidim ovo p: Integer ti nista ne radi Wink.

offline
  • Kaca  Female
  • Super građanin
  • Pridružio: 26 Sep 2004
  • Poruke: 1371
  • Gde živiš: blizuBG

@Licanin
Koji je Pascal ili Delphi? Ako je Turbo Pascal, ne moze se upotrebiti 'length'.

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2596
  • Gde živiš: Stara Pazova

Zasto ne bi mogao da se upotrebi Length?! Evo sta kaze TP7 help:

 Length (function)  ßßßßßßßßßßßßßßßßßß Returns the dynamic length of a string.  Declaration:  function Length(S: String): Integer;  Target: Windows, Real, Protected  See Also:  Copy  Concat  Delete  Insert  Pos  Sample Code:  {Length.PAS}  ßßßßßßßßßßßßßß {Sample code for the Length function.}  uses WinCrt; var   S: String; begin   Readln (S);   Writeln('"', S, '"');   Writeln('length = ', Length(S)); end.

offline
  • Kaca  Female
  • Super građanin
  • Pridružio: 26 Sep 2004
  • Poruke: 1371
  • Gde živiš: blizuBG

@strog
stvarno? to znaci da sam koristila starije verzije Turbo Pascal (ako se secam dobro bio je TP 5.5). Wink

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2596
  • Gde živiš: Stara Pazova

Moguce, ovo sam izvadio, kao sto napisa i u prethodnom postu, iz Help-a za TurboPascal 7 Smile.

Ko je trenutno na forumu
 

Ukupno su 814 korisnika na forumu :: 62 registrovanih, 5 sakrivenih i 747 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3028 - dana 22 Nov 2019 07:47

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: _commandos_, A.R.Chafee.Jr., aerienne, aramis s, axa, bankulen, Boris90, cikadeda, comi_pfc, Cranium, darkangel, darkstar101, Djokislav, Djurdevdan, doktor1964, dolinalima, Dorcolac, Georgius2, gile58, havoc995, Hektor2, Hiperborejac, JOntra2, kaptain2, Kožedub, kraJo, krkalon, Kubovac, Lieutenant, Ljubitelj2, M74AB3, Majki, majorgaspar, Marko Marković, Markoni29, Milan Karan, miodrag, Moravac97, mrvica78, Mzee, Nebo_M, nebojsag, NenadG, ofbeyond, raketaš, Raptor1, Ratnik84, repac2, robertino, ruma, serbianleprechaun, Sonyboy, ssekir75, stringer bell, trajkoni018, Van, VJ, Vlada1389, vlvl, vobo, voja64, yamato