<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hr">
	<id>https://croatianschoolsydney.com/index.php?action=history&amp;feed=atom&amp;title=While_petlja</id>
	<title>While petlja - Povijest promjena</title>
	<link rel="self" type="application/atom+xml" href="https://croatianschoolsydney.com/index.php?action=history&amp;feed=atom&amp;title=While_petlja"/>
	<link rel="alternate" type="text/html" href="https://croatianschoolsydney.com/index.php?title=While_petlja&amp;action=history"/>
	<updated>2026-05-25T16:59:52Z</updated>
	<subtitle>Povijest promjena ove stranice na wikiju</subtitle>
	<generator>MediaWiki 1.36.2</generator>
	<entry>
		<id>https://croatianschoolsydney.com/index.php?title=While_petlja&amp;diff=55707&amp;oldid=prev</id>
		<title>WikiSysop: Bot: Automatski unos stranica</title>
		<link rel="alternate" type="text/html" href="https://croatianschoolsydney.com/index.php?title=While_petlja&amp;diff=55707&amp;oldid=prev"/>
		<updated>2021-08-24T06:04:02Z</updated>

		<summary type="html">&lt;p&gt;Bot: Automatski unos stranica&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nova stranica&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;!--'''While petlja'''--&amp;gt;U većini [[računalno programiranje|računalnih programskih]] jezika, '''''while'' petlja''' je [[naredba (programiranje)|naredba]] [[upravljanje tokom|upravljanja tokom]] koja dopušta opetovano izvršenje koda u ovisnosti o danom [[bulovski tip podataka|bulovskom]] uvjetu. ''While'' petlja se može shvatiti kao ponavljajuća [[uvjetna naredba|''if'' naredba]].&lt;br /&gt;
&lt;br /&gt;
''While'' konstrukt se sastoji od bloka koda i uvjeta. Uvjet je prvo evaluiran - ako je uvjet [[logička vrijednost|logička istina]], kod se unutar bloka izvršuje. Ovo se ponavlja sve dok uvjet ne postane [[laž]]an. S obzirom da ''while'' petlja provjeruje uvjet prije izvršenja bloka koda, upravljačka je struktura često poznata kao '''pred-test petlja'''. Valja je usporediti s [[do while petlja|''do while'' petljom]] koja ispituje uvjet ''nakon'' izvršenja petlje.&lt;br /&gt;
&lt;br /&gt;
Primjerice, u [[C (programski jezik)|C]]-u (kao i u [[Java (programski jezik)|Javi]] i [[C++]]u, koji koriste istu sintaksu u ovom slučaju), odsječak koda&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
 x = 0;&lt;br /&gt;
 while (x &amp;lt; 3)&lt;br /&gt;
 {&lt;br /&gt;
    x++;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
prvo provjeruje je li x veći od 3, a s obzirom da nije, inkrementira ga za 1. Potom opet provjeruje dani uvjet, opet izvršuje, ponavljajući ovaj postupak sve dok [[varijabla]] x ne dosegne vrijednost 3.&lt;br /&gt;
&lt;br /&gt;
Valja uočiti da je moguće, u nekim slučajevima čak i poželjno, da se uvjet ''uvijek'' evaluira u logičku istinu, stvarajući [[beskonačna petlja|beskonačnu petlju]]. Kad se takva petlja hotimice stvori, obično postoji neka druga upravljačka struktura (poznata kao [[upravljanje tokom|''break'']] naredba) koja upravlja terminacijom petlje.&lt;br /&gt;
&lt;br /&gt;
== Demonstracija ''while'' petlji ==&lt;br /&gt;
&lt;br /&gt;
Ove će petlje izračunati [[faktorijela|faktorijelu]] broja 5:&lt;br /&gt;
&lt;br /&gt;
=== [[QBasic]] ili [[Visual Basic]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;Qbasic&amp;quot;&amp;gt;&lt;br /&gt;
  'Inicijaliziraj varijable&lt;br /&gt;
  Dim brojac as Integer : brojac = 5&lt;br /&gt;
  Dim faktorijela as Long : faktorijela = 1&lt;br /&gt;
  Do While brojac &amp;gt; 0&lt;br /&gt;
    faktorijela = faktorijela * brojac     'Množi&lt;br /&gt;
    brojac = brojac - 1                    'Dekrementiraj&lt;br /&gt;
  Loop&lt;br /&gt;
  Print faktorijela                        'Ispiši rezultat.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===[[REALbasic]]===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
  Dim brojac as Integer = 5&lt;br /&gt;
  Dim faktorijela as Integer = 1&lt;br /&gt;
  While brojac &amp;gt; 0&lt;br /&gt;
    faktorijela = faktorijela * brojac     // Množi&lt;br /&gt;
    brojac = brojac - 1                    // Dekrementiraj&lt;br /&gt;
  Wend&lt;br /&gt;
  MsgBox Str( faktorijela )                // Ispiši rezultat.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[C (programski jezik)|C]] ili [[C++]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
  unsigned int brojac = 5;&lt;br /&gt;
  unsigned long faktorijela = 1;&lt;br /&gt;
  while (brojac &amp;gt; 0)&lt;br /&gt;
  {&lt;br /&gt;
    faktorijela *= brojac--;               /* Množi pa dekrementiraj. */&lt;br /&gt;
  } &lt;br /&gt;
  printf(&amp;quot;%i&amp;quot;, faktorijela);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[Perl]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt;&lt;br /&gt;
  my $brojac = 5;&lt;br /&gt;
  my $faktorijela = 1;&lt;br /&gt;
  while ( $brojac &amp;gt; 0 ) &lt;br /&gt;
  {&lt;br /&gt;
      $faktorijela *= $brojac--;           # Množi pa dekrementiraj&lt;br /&gt;
  }&lt;br /&gt;
  print $faktorijela;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vrlo slično C i C++ rješenju, s tim da se ''while petlja'' mogla također napisati jednom linijom koda:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
  $faktorijela *= $brojac-- while $brojac &amp;gt; 0;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''While'' petlje se često koriste za čitanje podataka liniju po liniju (kao što je definirano linijskim separatorom &amp;lt;code&amp;gt;$/&amp;lt;/code&amp;gt;) iz otvorenih datotečnih ručica:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
  open ULAZ, &amp;quot;&amp;lt;test.txt&amp;quot;;&lt;br /&gt;
  while ( &amp;lt;ULAZ&amp;gt; )&lt;br /&gt;
  {&lt;br /&gt;
    print;&lt;br /&gt;
  }&lt;br /&gt;
  close ULAZ;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[PHP]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
 $brojac = 5;&lt;br /&gt;
 $faktorijela = 1;&lt;br /&gt;
 while($brojac &amp;gt; 0) {&lt;br /&gt;
   $faktorijela *= $brojac--; 	          // Množi pa dekrementiraj.&lt;br /&gt;
 }&lt;br /&gt;
 echo $faktorijela;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[Tcl]] (''Tool command language'') ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;tcl&amp;quot;&amp;gt;&lt;br /&gt;
  set brojac 5&lt;br /&gt;
  set faktorijela 1&lt;br /&gt;
  while {$brojac &amp;gt; 0} {&lt;br /&gt;
    set faktorijela [expr $faktorijela * $brojac] &lt;br /&gt;
    incr brojac -1 &lt;br /&gt;
  }&lt;br /&gt;
  puts $faktorijela&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[Java (programski jezik)|Java]], [[C Sharp|C#]]  ===&lt;br /&gt;
&lt;br /&gt;
Kod za petlju je isti kao i za Javu i C#:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  int brojac = 5;&lt;br /&gt;
  long faktorijela = 1;&lt;br /&gt;
  while (brojac &amp;gt; 0)&lt;br /&gt;
     faktorijela *= brojac--; 		 // Množi pa dekrementiraj.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Za Javu se rezultat ispisuje na sljedeći način:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  System.out.println(faktorijela);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Isto to u C#:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
  System.Console.WriteLine(faktorijela);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[JavaScript]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
var brojac = 5;&lt;br /&gt;
var faktorijela = 1;&lt;br /&gt;
while (brojac)&lt;br /&gt;
{&lt;br /&gt;
  faktorijela *= brojac--; 		// Množi pa dekrementiraj.&lt;br /&gt;
}&lt;br /&gt;
document.body.appendChild(document.createTextNode(faktorijela));&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[Pascal (programski jezik)|Pascal]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
  program Faktorijela;&lt;br /&gt;
  var&lt;br /&gt;
    Brojac, Faktorijela: integer;&lt;br /&gt;
  begin&lt;br /&gt;
    Brojac := 5;&lt;br /&gt;
    Faktorijela := 1;&lt;br /&gt;
    while Brojac &amp;gt; 0 do begin&lt;br /&gt;
      Faktorijela := Faktorijela * Brojac;&lt;br /&gt;
      Brojac := Brojac - 1;&lt;br /&gt;
    end;&lt;br /&gt;
    Write(Faktorijela);&lt;br /&gt;
  end.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[Smalltalk]] ===&lt;br /&gt;
&lt;br /&gt;
Suprotno drugim jezicima, u Smalltalku ''while'' petlja nije jezični konstrukt već je definirana u klasi ''BlockClosure'' kao jednoparametarska metoda, tijelom kao [[zatvorenost|zatvorenošću]], rabeći samu sebe kao uvjet.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;smalltalk&amp;quot;&amp;gt;&lt;br /&gt;
 | brojac faktorijela |&lt;br /&gt;
 brojac := 5.&lt;br /&gt;
 faktorijela := 1.&lt;br /&gt;
 [ brojac &amp;gt; 0 ] whileTrue: &lt;br /&gt;
     [ faktorijela := faktorijela * (brojac := brojac - 1) ]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[Python (programski jezik)|Python]] ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python3&amp;quot;&amp;gt;&lt;br /&gt;
  brojac = 5&lt;br /&gt;
  faktorijela = 1&lt;br /&gt;
  while(brojac&amp;gt;0):&lt;br /&gt;
        faktorijela *= brojac&lt;br /&gt;
        brojac -= 1&lt;br /&gt;
  print(faktorijela)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[AutoIt]] ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;autoit&amp;quot;&amp;gt;&lt;br /&gt;
  Dim $brojac = 5, $faktorijela = 1&lt;br /&gt;
  While $brojac &amp;gt; 0&lt;br /&gt;
     $faktorijela *= $brojac&lt;br /&gt;
     $brojac -= 1&lt;br /&gt;
  WEnd&lt;br /&gt;
  MsgBox(0,&amp;quot;Faktorijela&amp;quot;, $faktorijela)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vidjeti također ==&lt;br /&gt;
* [[Do while petlja]]&lt;br /&gt;
* [[For petlja]]&lt;br /&gt;
* [[Foreach]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorija:Konstrukti u programiranju]]&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
	</entry>
</feed>