× Aktuálně z oboru

Programátoři po celém světě dnes slaví Den programátorů [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]
Celá zprávička [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]

ASP.NET – 5. lekce

[ http://programujte.com/profil/733-alan-fuks/ ]Google [ ?rel=author ]       [ http://programujte.com/profil/75-martin-zak/ ]Google [ :?rel=author ]       5. 10. 2006       19 052×

Dnes se naučíme používat cyklus s podmínkou na konci – do-while, cyklus s podmínkou na začátku – while a příkaz switch/select.

do-while/do-loop-while

asto se stává, že nevíme, kolikrát má cyklus proběhnout. V takovém případě nám poslouží cyklus s podmínkou na konci, do-while.

C#


do{
	příkazy v cyklu

}while(podmínka)

VB


Do
	příkazy v cyklu

Loop While podmínka

Příkazy v cyklu se provádí tak dlouho, dokud podmínka nemá hodnotu TRUE.

Příklad

Jednoduchý příklad vypočítá, kolik má rok týdnů:

C#

void Page_Load(){
        int tydenDni = 7;
        int rokDni = 365;
        int rokTydnu = 0;

        do{
            rokTydnu++;
            tydenDni = tydenDni+7;
            Response.Write("Rok nemá "+rokTydnu+" týdnů.
"); }while(tydenDni < rokDni); Response.Write("Rok ma "+rokTydnu+" tydnu!
"); }
VB

Sub Page_Load
        Dim tydenDni As Integer = 7
        Dim rokDni As Integer = 365
        Dim rokTydnu As Integer = 0

        do
            rokTydnu = rokTydnu+1
            tydenDni = tydenDni+7
            Response.Write("Rok nemá "+rokTydnu.ToString()+" týdnů.
") Loop while tydenDni < rokDni Response.Write("Rok ma "+rokTydnu.ToString()+" tydnu!
") End Sub

cyklus while

Problém cyklu do-while je, že podmínka se testuje až na konci, takže cyklus musí proběhnout alespoň jednou, i když není potřeba. Proto tu je cyklus s podmínkou na začátku – while.

C#


while(podminka){
	příkazy v cyklu..

}

VB


While podminka
	Příkazy v cyklu..

End While

příklad

C#

void Page_Load(){
        int tydenDni = 7;
        int rokDni = 365;
        int rokTydnu = 0;

        while(tydenDni < rokDni){
            rokTydnu++;
            tydenDni = tydenDni+7;
            Response.Write("Rok nemá "+rokTydnu+" týdnů.
"); } Response.Write("Rok ma "+rokTydnu+" tydnu!
"); }
VB

Sub Page_Load
        Dim tydenDni As Integer = 7
        Dim rokDni As Integer = 365
        Dim rokTydnu As Integer = 0

        while tydenDni < rokDni
            rokTydnu = rokTydnu+1
            tydenDni = tydenDni+7
            Response.Write("Rok nemá "+rokTydnu.ToString()+" týdnů.
") End While Response.Write("Rok ma "+rokTydnu.ToString()+" tydnu!
") End Sub

příkaz switch/select

Jestli si vzpomínáte na minulou lekci, kdy jsme u C# nemohli použít ElseIf, ale použili jsme vnořování podmínek. Nebylo to zrovno dvakrát přehledné. Existuje možnost, jak se ubránit vnořování podmínek, a to je větvení pomocí příkazu switch (popř. u VB.NET select).

C#


switch(promenna){
	case hodnota: prikaz při dané hodnotě;
			break;
	case hodnota: prikaz při dané hodnotě;
			break;
	default: příkaz, který se provede, když neplatí ani jedna hodnota
		 break;	
}

Příkaz break kódu říká, že má vyskočit z cyklu. Kdybychom ho neuvedli, vypsaly by se všechny varianty od námi zvolené hodnoty.

VB


Select promenna
	Case hodnota
		Příkazy při dané hodnotě
	Case hodnota
		Příkazy při dané hodnotě
	Case Else
		příkaz, který se provede, když neplatí ani jedna hodnota
	
End Select

Příkaz switch/select si ukážeme na jednoduchém příkladu:

C#


void Page_Load(){
        int nalada = 1;

        switch(nalada){
            case 1: Response.Write("Mám se skvěle!");
                    break;
            case 2: Response.Write("Mám se dobře!");
                    break;
            case 3: Response.Write("Ujde to!");
                    break;
            case 4: Response.Write("Nic moc!");
                    break;
            case 5: Response.Write("Mám se strašně!");
                    break;
            default: Response.Write("Špatná hodnota!");
                    break;
        }
        
    }

Pokud jste něco z příkladu nepochopili, zkuste změnit hodnotu proměnné nalada.

To samé ve VB.NET:


Sub Page_Load
        Dim nalada As Integer = 1

        Select nalada
            case 1
                Response.Write("Mám se skvěle!")

            case 2
                Response.Write("Mám se dobře!")

            case 3
                Response.Write("Ujde to!")

            case 4
                Response.Write("Nic moc!")

            case 5
                Response.Write("Mám se strašně!")

            case else
                Response.Write("Špatná hodnota!")

        End Select

    End Sub

A to je pro dnešek vše, příště si ukážeme, jak používat pole.


Článek stažen z webu Programujte.com [ http://programujte.com/clanek/2006091701-asp-net-5-lekce/ ].