P R O G R A M O V A N I E  3.ČASŤ

 

   1.ČASŤ

   2.ČASŤ

          3.ČASŤ

 

 

  =======================

program č.5                

Cls

“ZADAJ CISLO (1-21)“?->A

For 1->B To A

Locate B,4,“X“

Next

 

 Program sa vás najprv vyzve, aby ste zadali číslo od 1 do 21(ak zadáte viac ako 21 vyhodí sa obr.1). Po zadaní čísla sa číslo zapíše do premennej A. Znak ? je niečo, ako v Turbo Pascale príkaz ReadLn(A). Potom nasleduje cyklus For, ktorý sa opakuje dovtedy, dokiaľ premenná B nedosiahne hodnotu premennej A.

1. 

 

 

 

 

 

 

 

Úloha: Upravte program tak, aby sa po zadaní čísla, znak X pohyboval z ľavej strany doprava a skončil na A-tom stĺpci displeja kalkulačky. A na konci, aby sa nezobrazovalo  Done.

 

 

1.spôsob riešenia úlohy:

Cls

“ZADAJ CISLO (1-21)“?->A

For 1->B To A

Locate B,4,“X“

Locate B,4,“ “

Next

Locate B,4,“X“

 

2.spôsob riešenia úlohy:

Cls

“ZADAJ CISLO (1-21)“?->A

For 1->B To A

ClrText

Locate B,4,“X“

Locate B,4,“X“

Next

Locate 1,1,““  

 

 

 


 

=======================

program č.6   

Cls

“ZADAJ CISLO (1-21)“?->A           

0->B

Do

B+1->B

Locate B,4,“X“  

LpWhile B<>A

Locate 1,1,““   <> -nerovná sa

 

  Tento príklad robí to isté čo príklad 5, ale ako ste si všimli je tu použitý iný cyklus a to: Do  -  LpWhile  . Je to vlastne to isté čo v Turbo Pascale Repeat – Until.

Dá sa to vysvetliť takto: Rob (Do), alebo opakuj  dovtedy, dokiaľ (Until) B sa nerovná A. Čiže, ak premenná B sa bude rovnať premennej A, cyklus sa už nezopakuje a program pokračuje ďalej vo svojej činnosti.          

 

                                                            

 

 

 

 

 

 

Úloha: Upravte program tak, aby sa nevypisovali X-ká z ľavej strany doprava ale z pravej strany doľava.  

 

Riešenie úlohy:

Cls

“ZADAJ CISLO (1-21)“?->A              

21-A->A

21->B

Do

Locate B,4,“X“

B-1->B

LpWhile B<>A

Locate 1,1,““

 


=======================

program č.7

Cls

“ZADAJ CISLO (1-21)“?->A              

0->B

While (A=<21) And (B<>A)

B+1->B

Locate B,4,“X“

WhileEnd

Locate 1,1,““

 

  Zatiaľ sme si ukázali ako pracujú cykly For – Next  a Do – LpWhile. Teraz si ukážeme aký je rozdiel medzi týmito dvoma cyklami a cyklom While – WhileEnd. Prvé dva cykly sa vždy spustia aspoň raz, zatiaľ čo cyklus While – WhileEnd sa nemusí spustiť ani jeden krát. Závisí to len od jeho podmienky na začiatku cyklu, hneď za While. Ak je podmienka splnená, cyklus sa „nepreskočí“ a skončí až keď podmienka nebude vyhovovať.

 V tomto príklade ak je (premenná A menšia alebo rovná 21) a ZÁROVEŇ (premenná B sa nerovná premennej A) sa cyklus vykoná aspoň jeden raz. Ak prekročí premenná A hodnotu 21 nevykoná sa ani jeden raz. Tým sa vyhneme

chybnému hláseniu ako to bolo pri programe č.5 a č.6 .