Pogojni stavek

Iz MaFiRaWiki

Pogojni stavek srečamo v vseh programskih jezikih. Pojem pogojni govori o tem, da se bo nekaj zgodilo, če bo izpolnjen pogoj.

S pomočjo pogojnega stavka v besedilo programa vstavimo ukazni stavek ali skupino stavkov, ki se bodo izvršili le ko bo pogoj izpolnjen.

Pogojni stavek omogoča tudi vejitev. Pojem vejitev govori o tem, da se v besedilu programa določi dve(ali več) možni veji(smeri) izvajanja programa. Ko bo pogoj izpolnjen se bo izvajanje programa nadaljevalo v prvi veji, sicer pa v drugi.

Ko je več možnih vejitev, se poleg pogojnih stavkov uporablja tudi t.i. preklopne oz. izbiralne stavke (switch/case, select/case...).

Nekaj primerov

Osnovni pogojni stavek

  • if p then A

  'vzorec if stavka v programsekem jeziku Basic
  ...
  if a < 10 then a = a + 1
  ...

V takem primeru se stavek A (a = a + 1) izvede, če je pogoj p (a < 10) izpolnjen, sicer pa se ne izvede nič. Program se izvaja, kot da stavka ni.

Vejitev

  • if p then A else B

  ...
  if a < 10 then
     a = a + 1
  else
     a = 0
  end if
  ...

V tem primeru se pri izpolnjenem pogoju p(a < 10) izvede stavek A(a = a + 1), sicer pa se izvede stavek B(a = 0).

Več vej

Pogosto srečamo tudi obliko z več pogoji.

  • if p1 then A1 else if p2 then A2 else B

  ...
  if a = 1 then
     a = a + 1
  else if a = 2
     a = a + 2
  else
     a = 0
  end if
  ...

V tem primeru se bo izvedel stavek A1(a = a + 1), če bo izpolnjen pogoj p1(a = 1), stavek A2(a = a + 2), če bo izpolnjen pogoj p2(a = 2) sicer pa stavek B(a = 0).

Stavek

Stavek A, B, ... je lahko sestavljen iz več stavkov.

  • if p then (A1, A2,..,An) else (B1, B2,..,Bn)

  ...
  if a < 10 then
     a = a + 1
     b = a + c
     k = a * b
  else
     a = 0
     b = 1
     k = 10
  end if
  ...

Pogoj

Pogoj vrne vrednost tipa Boolean (true, false). Pogoj mora biti sestavljen tako, da tako vrednost lahko vrne! Ustrezni pogoji

  • true, false, 2 > 1, 30 = 30
  • a > b, če sta a in b števili (celi ali pa realni)
  • 'a' = 'a', 'b' > 'a', če jemljemo a in b kot znak

NE ustrezni pogoji

  • "Eva" > "Adam", če primerjamo besedilo
  • a > b, če sta a in b besedili

Podatkovni_tip za več informacij o spremenljivkah in tipih podatkov.

Osebna orodja