c++ string - grananje

Upload: umad2635

Post on 06-Jul-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 C++ String - Grananje

    1/27

  • 8/17/2019 C++ String - Grananje

    2/27

    Za lakše korištenje znakovnim nizovimapromjenjive duljine u standardnoj je biblioteci

     jezika C++ definiran tip podataka string.  Tip podataka string “brine” o prostoru kojeg

    treba predvidjeti u memoriji, te podržavafunkcije i operacije vezane uz znakovnenizove.

    Biblioteka string sadrži niz funkcija koje

    omogućavaju rukovanje sa znakovnimnizovima, treba je uključiti pretprocesorskomnaredbom #include.

  • 8/17/2019 C++ String - Grananje

    3/27

  • 8/17/2019 C++ String - Grananje

    4/27

  • 8/17/2019 C++ String - Grananje

    5/27

    #include

    #include

    using namespace std;

    int main()

    {int god_rod, god_tek, godine;

    string ime;

    cout

  • 8/17/2019 C++ String - Grananje

    6/27

  • 8/17/2019 C++ String - Grananje

    7/27

    Tijek programa katkad ovisi o ulaznimpodacima ili o međurezultatima obrade.

    Struktura kod koje se ovisno o stanjupodataka odvija jedan od mogućih dijelova(grana) programa, naziva se grananje.

  • 8/17/2019 C++ String - Grananje

    8/27

    Struktura grananja se može ostvaritinaredbama:

    if (if else, if else if else),

  • 8/17/2019 C++ String - Grananje

    9/27

    Naredba if omogućava uvjetno grananjeprograma.

    Daljnji tijek programa ovisi o ispunjenjuuvjeta navedenog iza ključne riječi if.

    Uvjet (logički izraz) se upisuje unutar paraokruglih zagrada.

    Na kraju naredbe if ne stavlja se znak ;

  • 8/17/2019 C++ String - Grananje

    10/27

     

  • 8/17/2019 C++ String - Grananje

    11/27

    Ako je vrijednost logičkog izraza istina (1),izvodi se blok naredbi koji se nalazi izanaredbe if.

    Ako je vrijednost logičkog izraza neistina (0),blok se preskače i izvođenje se nastavlja odprve naredbe iza bloka.

  • 8/17/2019 C++ String - Grananje

    12/27

    Treba unijeti cijeli broj pa provjeriti da li jenegativan ili pozitivan.

    U oba slučaja ispisati apsolutnu vrijednostbroja. Ispis neka bude oblika:

    Upisi broj:Broj...je.... Njegova apsolutna vrijednost

     je....

  • 8/17/2019 C++ String - Grananje

    13/27

    Primjer će biti riješen pomoću dvije ifnaredbe.

    Ako je (a < 0) izvršit će se blok naredbinakon if naredbe.

    Ako uvjet nije zadovoljen, blok naredbi nakonprve if naredbe se preskače i izvođenjeprograma se nastavlja od prve naredbe iza

    bloka.

  • 8/17/2019 C++ String - Grananje

    14/27

    Prva naredba iza bloka je provjera drugoguvjeta (a > 0).

    Ako nije ispunjen niti prvi niti drugi uvjet (tj.ako je a = 0), blok naredbi nakon druge ifnaredbe se preskače i izvođenje programa senastavlja od naredbe iza drugog bloka.

  • 8/17/2019 C++ String - Grananje

    15/27

    #includeint main()

    {

    int a;

    couta;

    if(a

  • 8/17/2019 C++ String - Grananje

    16/27

  • 8/17/2019 C++ String - Grananje

    17/27

    Ako je vrijednost logičkog izraza istina (1),izvodi se prvi blok naredbi.

    Po njegovom završetku izvođenje se nastavljaod prve naredbe iza drugog bloka.

    Ako je vrijednost logičkog izraza neistina (0),preskače se prvi blok i izvodi se drugi blok

    naredbi (iza else). Nakon toga se izvode naredbe kako slijede.

     

  • 8/17/2019 C++ String - Grananje

    18/27

    Treba unijeti cijeli broj različit od 0 paprovjeriti je li negativan ili pozitivan.

    U oba slučaja ispisati apsolutnu vrijednostbroja. Ispis neka bude oblika:

    Upisi broj razlicit od 0:Broj...je....Njegova apsolutna vrijednost je....

  • 8/17/2019 C++ String - Grananje

    19/27

    Primjer je riješen uz pomoć if else naredbe.Uneseni broj mora biti različit od 0.

    Ako je (a < 0) izvršit će se prvi blok naredbi. Ako a nije manje od 0, preskače se prvi blok i

    izvodi se drugi blok naredbi.

  • 8/17/2019 C++ String - Grananje

    20/27

    #includeint main()

    {

    int a;

    couta;

    if(a

  • 8/17/2019 C++ String - Grananje

    21/27

    Što ako korisnik ne pročita uputu pažljivo, paunese broj 0? Rezultat neće biti ispravan: 

    Broj 0 je pozitivan. Njegova .....

    Stoga bi bilo dobro izbjeći takvu situaciju..

  • 8/17/2019 C++ String - Grananje

    22/27

    Ako korisnik unese nulu, neka dobijeupozorenje, pa neka ponovi unos broja kojiće zadovoljiti postavljeni uvjet.

    Da bi se program mogao nastaviti ododabranog programskog retka (u ovomeslučaju od naredbe unosa broja), potrebna jeodgovarajuća naredba koja će to i omogućiti 

  • 8/17/2019 C++ String - Grananje

    23/27

    Blokovi if naredbi se mogu ulančiti. 

  • 8/17/2019 C++ String - Grananje

    24/27

    Ako je vrijednost logičkog izraza1 logičkaistina (1), izvodi se prvi blok naredbi.

     Po njegovom završetku izvođenje senastavlja od prve naredbe iza zadnjeg blokanaredbi.

  • 8/17/2019 C++ String - Grananje

    25/27

    Ako vrijednost logičkog izraza1 nije logičkaistina (0), provjerava se vrijednost logičkogizraza2 i ovisno u njegovoj vrijednosti izvodise drugi blok naredbi ili se program nastavlja

    iza njega. Ako niti jedna vrijednost logičkih izraza nije

    logička istina izvodi se zadnji blok naredbiiza naredbe else.

  • 8/17/2019 C++ String - Grananje

    26/27

    Zadatak 3 treba dopuniti tako da se u slučajuunesene nule ispiše odgovarajuća poruka.Ispis neka bude oblika:

    Upisi broj:Broj...je....Njegova apsolutna vrijednost je....iliUnio si 0. Apsolutna vrijednost od 0 je 0.

  • 8/17/2019 C++ String - Grananje

    27/27

    #includeint main()

    {

    int a;

    couta;

    if (a==0)

    {

    cout