On-line učionica

13. novembar 2011.

Rad sa stringovima i konverzije

Filed under: Pascal,Programiranje — jelena100janovic @ 11:54 pm

Evo još jedne „lekcije“ koju na žalost nećemo stići da uradimo na časovima… Može vam pomoći u razumevanju pređenog gradiva. Spada u grupu „ozbiljnih“ programerskih lekcija, ali se i sa njom da igrati. Nadam se da ćete uživati😉

Rad sa stringovima

Možete pristupiti određenom znaku stringa ako stavite poziciju tog znaka u srednje zagrade iza stringa.

program Stringovi;
var
   s:string;
   c:char;
begin
   s:=’Hej!’;
   c:=s[1];{c=’H’}
end.

Možete dobiti dužinu stringa koristeći naredbu Length (dužina).

program Stringovi;
var
   s:string;
   d:integer;
begin
   s:=’Hej!’;
   d:=length(s);{d=4}
end.

Da biste našli poziciju stringa unutar drugog stringa koristite naredbu Pos.
Parametri:
1: String koji treba da pronađete
2: String u kome tražite

program Stringovi;
var
   s:string;
   p:integer;
begin
   s:=’Hej Vi!’;
   p:=pos(‘Vi’,s);
end.

Naredba Delete (briši) uklanja znakove iz stringa.
Parametri:
1: String iz koga se brišu znakovi
2: Pozicija od koje se počinje brisanje
3: Broj znakova koji se briše

program Stringovi;
var
   s:string;
begin
   s:=’Hej!’;
   delete(s,1,1);{s=’ej!’}
end.

Naredba Copy (kopiraj) je poput srednjih zagrada sem što možete pristupiti većem broju znakova.
Parametri:
1: String iz koga kopirate znakove
2: Pozicija od koje se kopira
3: Broj znakova koji se kopira

program Stringovi;
var
   s,t:string;
begin
   s:=’Hej Vi!’;
   t:=copy(s,1,3);{t=’Hej’}
end.

Naredba Insert (ubaci) će dodati znakove u string na određenoj poziciji.
Parametri:
1: String koji će biti ubačen u drugi string
2: String u koji će znakovi biti ubačeni
3: Pozicija na kojoj treba ubaciti znakove

program Stringovi;
var
   s:string;
begin
   s:=’Hj!’;
   insert(‘e’,s,2);
end.

Konverzije

Naredba Str pretvara ceo broj u string.

program Pretvori;
var
   s:string;
   i:integer;
begin
   i:=123;
   str(i,s);
end.

Naredba Val pretvara string u ceo broj.

program Pretvori;
var
   s:string;
   i:integer;
   g:integer;
begin
   s:=’123′;
   val(s,i,g);
end.

Naredba Int će Vam vratiti broj pre zareza u realnom broju.

program Pretvori;
var
   r:real;
begin
   r:=int(3.14);
end.

Naredba Frac će Vam vratiti broj posle zareza u realnom broju.

program Pretvori;
var
   r:real;
begin
   r:=frac(3.14);
end.

Naredba Round (zaokruži) će zaokružiti realan broj do najbližeg celog broja.

program Pretvori;
var
   i:integer;
begin
   i:=round(3.14);
end.

Naredba Trunc će Vam vratiti broj pre zareza realnog broja kao ceo broj.

program Pretvori;
var
   i:integer;
begin
   i:=trunc(3.14);
end.

Računari koriste brojeve od 0 do 255 (1 byte) da bi predstavili znakove i oni se zovu ASCII znakovi. Naredba Ord će pretvoriti znak u broj, a naredba Chr će pretvoriti broj u znak. Korišćenje znaka # ispred broja će ga takođe pretvoriti u znak.

program Pretvori;
var
   b:byte;
   c:char;
begin
   c:=’a’;
   b:=ord(c);
   c:=chr(b);
   c:=#123;
end.

Naredba UpCase (veliko slovo) pretvara znak malog slova u znak velikog slova.

program Pretvori;
var
   c:char;
begin
   c:=’a’;
   c:=upcase(c);
end.

Ne postoji naredba za pretvaranje velikog slova u malo, ali možete to uraditi dodajući 32 rednom broju velikog slova, a onda ga promeniti u znak.

Dodaci

Naredba Random (slučajno) će Vam vratiti slučajan broj od 0 do broja koji joj zadate -1. Naredba Random pravi iste slučajne brojeve svaki put kad startujete program, tako da koristimo naredbu Randomize da ih učinimo slučajnijim, koristeći sistemski sat.

program Slučajno;
var
   i:integer;
begin
   randomize;
   i:=random(101);
end.

 

Zadaci za vežbanje:

  1. Napišite program Stringovi koji će demonstrirati sve gornje primere.
  2. Napišite program Pretvori koji će demonstrirati sve gornje primere.
  3. Napišite program koji „izmišlja“ broj iz zadate desetice.
  4. Napišite program koji učitava string i proverava da li sadrži određeno slovo.
  5. Napišite program koji učitava dva stringa koji predstavljaju Vaše ime i prezime i ispisuje ih kao jedan string.
  6. Napišite program koji učitava neki tekst kao string (ne duži od 100 znakova), a zatim ga ispisuje svaku reč u novom redu.
  7. Napišite program koji učitava neki tekst kao string (ne duži od 100 znakova), a zatim ispisuje statistiku dužine reči u tekstu.
  8. Napišite program koji učitava neki tekst kao string (ne duži od 100 znakova), a zatim ispisuje statistiku pojavljivanja samoglasnika u tekstu.

Napomena: za neke zadatke nije dovoljno znanje samo ove i prethodnih lekcija.

2 komentara »

  1. […] String čini niz znakova ograđenih apostrofima. Broj znakova u stringu naziva se dužina stringa. S obzirom da je upotreba stringova u programiranju neophodna, a da na redovnim časovima nismo u mogućnosti da im posvetimo dovoljno pažnje predlažem vam da za početak pogledate sledeći tekst o stringovima i konverzijama: https://profesorka.wordpress.com/2011/11/13/rad-sa-stringovima-i-konverzije/ […]

    Povratni ping od Elementarne konstrukcije u Pascal-u | Računarstvo i informatika — 18. novembar 2011. @ 8:33 pm | Odgovor

    • Hvala koleginice što ste povezali priče🙂 Đacima preporuka – zavirite na link komentara iznad🙂

      Komentar od jelena100janovic — 18. novembar 2011. @ 10:02 pm | Odgovor


RSS feed for comments on this post. TrackBack URI

Ostavite odgovor

Popunite detalje ispod ili pritisnite na ikonicu da biste se prijavili:

WordPress.com logo

Komentarišet koristeći svoj WordPress.com nalog. Odjavite se / Promeni )

Slika na Tviteru

Komentarišet koristeći svoj Twitter nalog. Odjavite se / Promeni )

Fejsbukova fotografija

Komentarišet koristeći svoj Facebook nalog. Odjavite se / Promeni )

Google+ photo

Komentarišet koristeći svoj Google+ nalog. Odjavite se / Promeni )

Povezivanje sa %s

Create a free website or blog at WordPress.com.

%d bloggers like this: