User Tools

Site Tools


fordprog:while2017

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
fordprog:while2017 [2017/02/27 09:48]
deva
fordprog:while2017 [2017/02/28 22:05]
deva
Line 11: Line 11:
 <​code>​ <​code>​
 program oszto program oszto
-  ​integer ​a; +  ​natural ​a; 
-  ​integer ​i; +  ​natural ​i; 
-  ​integer ​oszto;+  ​natural ​oszto;
   boolean vanoszto;   boolean vanoszto;
 begin begin
Line 50: Line 50:
 === Kulcsszavak === === Kulcsszavak ===
  
-A nyelv kulcsszavai a következők:​ ''​program'',​ ''​begin'',​ ''​end'',​ ''​integer'',​ ''​boolean'',​ ''​true'',​ ''​false'',​ ''​div'',​ ''​mod'',​ ''​and'',​ ''​or'',​ ''​not'',​ ''​skip'',​ ''​if'',​ ''​then'',​ ''​else'',​ ''​endif'',​ ''​while'',​ ''​for'',​ ''​in'',​ ''​do'',​ ''​done'',​ ''​read'',​ ''​write''​+A nyelv kulcsszavai a következők:​ ''​program'',​ ''​begin'',​ ''​end'',​ ''​natural'',​ ''​boolean'',​ ''​true'',​ ''​false'',​ ''​div'',​ ''​mod'',​ ''​and'',​ ''​or'',​ ''​not'',​ ''​skip'',​ ''​if'',​ ''​then'',​ ''​else'',​ ''​endif'',​ ''​while'',​ ''​for'',​ ''​in'',​ ''​do'',​ ''​done'',​ ''​read'',​ ''​write''​
  
 === Azonosítók === === Azonosítók ===
Line 76: Line 76:
  
   * ''​natural''​ típusú kifejezések:​ számkonstansok,​ natural típusú változók és az ezekből a ''​+''​ (összedás),​ ''​-''​ (kivonás), ''​*''​ (szorzás), ''​div''​ (egészosztás),​ ''​mod''​ (maradékképzés) infix operátorokkal és zárójelekkel felépített kifejezések.   * ''​natural''​ típusú kifejezések:​ számkonstansok,​ natural típusú változók és az ezekből a ''​+''​ (összedás),​ ''​-''​ (kivonás), ''​*''​ (szorzás), ''​div''​ (egészosztás),​ ''​mod''​ (maradékképzés) infix operátorokkal és zárójelekkel felépített kifejezések.
-  * ''​bool''​ típusú kifejezések:​ ''​true''​ és ''​false'',​ ''​bool''​ típusú változók, és két ''​natural''​ típusú kifejezésből az ''​=''​ (egyenlőség),​ ''<''​ (kisebb), ''>''​ (nagyobb) infix operátorral,​ valamint a bool típusú kifejezésekből az ''​&&''​ (konjunkció),​ ''​||''​ (diszjunkció),​ ''​=''​ (egyenlőség) infix és a ''​not''​ (negáció) prefix operátorral és zárójelekkel felépített kifejezések.+  * ''​bool''​ típusú kifejezések:​ ''​true''​ és ''​false'',​ ''​bool''​ típusú változók, és két ''​natural''​ típusú kifejezésből az ''​=''​ (egyenlőség),​ ''<''​ (kisebb), ''>''​ (nagyobb) infix operátorral,​ valamint a bool típusú kifejezésekből az ''​and''​ (konjunkció),​ ''​or''​ (diszjunkció),​ ''​=''​ (egyenlőség) infix és a ''​not''​ (negáció) prefix operátorral és zárójelekkel felépített kifejezések.
   * Az infix operátorok mind balasszociatívak és a precedenciájuk növevő sorrendben a következő:​   * Az infix operátorok mind balasszociatívak és a precedenciájuk növevő sorrendben a következő:​
     * ''​and''​ ''​or''​     * ''​and''​ ''​or''​
Line 82: Line 82:
     * ''<''​ ''>''​     * ''<''​ ''>''​
     * ''​+''​ ''​-''​     * ''​+''​ ''​-''​
-    * ''​div''​ ''​mod''​+    * ''​*'' ​''​div''​ ''​mod''​
  
 == Utasítások == == Utasítások ==
Line 91: Line 91:
   * Írás: A ''​write(''​ //​kifejezés//​ ''​);''​ utasítás a megadott kifejezés értékét a képernyőre írja (és egy sortöréssel fejezi be). (Megvalósítása:​ meg kell hívni a ''​ki_egesz''​ (vagy a ''​ki_logikai''​) eljárást, amit a 4. beadandó leírásához mellékelt C fájl tartalmaz. Paraméterként a kiírandó értéket (mindkét esetben 4 bájtot) kell a verembe tenni.) ​   * Írás: A ''​write(''​ //​kifejezés//​ ''​);''​ utasítás a megadott kifejezés értékét a képernyőre írja (és egy sortöréssel fejezi be). (Megvalósítása:​ meg kell hívni a ''​ki_egesz''​ (vagy a ''​ki_logikai''​) eljárást, amit a 4. beadandó leírásához mellékelt C fájl tartalmaz. Paraméterként a kiírandó értéket (mindkét esetben 4 bájtot) kell a verembe tenni.) ​
   * While ciklus: ''​while''​ //​feltétel//​ ''​do''​ //​utasítások//​ ''​done''​ A feltétel logikai kifejezés, a ciklusmag legalább egy utasítást tartalmaz. A megszokott módon, elöltesztelős ciklusként működik.   * While ciklus: ''​while''​ //​feltétel//​ ''​do''​ //​utasítások//​ ''​done''​ A feltétel logikai kifejezés, a ciklusmag legalább egy utasítást tartalmaz. A megszokott módon, elöltesztelős ciklusként működik.
-  * For ciklus: ''​for''​ //​változó//​ ''​in''​ //​kifejezés//​ ''​..''​ //​kifejezés//​ ''​do''​ //​utasítások//​ ''​done''​ A változónak a deklarációs részben deklarált, natural típusú változónak kell lennie, az intervallum határait jelző kifejezések szintén natural típusúak. Az intervallum határai a ciklus első iterációja előtt kiértékelésre kerülnek, és az értékük akkor sem változik meg, ha a kifejezésekben szereplő változók módosulnak. A ciklus változója az első itaráció ​előtt megkapja az intervallum alsó határának értékét, minden iteráció végén eggyel nő, az utolsó iterációban a felső határral egyezik meg. Ha az alsó határ nagyobb a felsőnél, a ciklus egyszer sem fut le.+  * For ciklus: ''​for''​ //​változó//​ ''​in''​ //​kifejezés//​ ''​..''​ //​kifejezés//​ ''​do''​ //​utasítások//​ ''​done''​ A változónak a deklarációs részben deklarált, natural típusú változónak kell lennie, az intervallum határait jelző kifejezések szintén natural típusúak. Az intervallum határai a ciklus első iterációja előtt kiértékelésre kerülnek, és az értékük akkor sem változik meg, ha a kifejezésekben szereplő változók módosulnak. A ciklus változója az első iteráció ​előtt megkapja az intervallum alsó határának értékét, minden iteráció végén eggyel nő, az utolsó iterációban a felső határral egyezik meg. Ha az alsó határ nagyobb a felsőnél, a ciklus egyszer sem fut le.
   * Elágazás: ''​if''​ //​feltétel//​ ''​then''​ //​utasítások//​ ''​endif''​ vagy ''​if''​ //​feltétel//​ ''​then''​ //​utasítások//​ ''​else''​ //​utasítások//​ ''​endif''​ A feltétel logikai kifejezés, az ágak legalább egy utasítást tartalmaznak. Az elágazások a megszokott módon működnek.   * Elágazás: ''​if''​ //​feltétel//​ ''​then''​ //​utasítások//​ ''​endif''​ vagy ''​if''​ //​feltétel//​ ''​then''​ //​utasítások//​ ''​else''​ //​utasítások//​ ''​endif''​ A feltétel logikai kifejezés, az ágak legalább egy utasítást tartalmaznak. Az elágazások a megszokott módon működnek.
fordprog/while2017.txt · Last modified: 2017/03/08 17:38 by deva