ASP.NET - 4. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

ASP.NET - 4. lekceASP.NET - 4. lekce

 
Hledat
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno
Pergoly a střechy Brno

ASP.NET - 4. lekce

Google       Google       6. 9. 2006       18 076×

Dneska si ukážeme, jak používat výjimky if/else/elseif a cyklus for.

Reklama
Reklama

If/Else/ElseIf

If slouží jako podmínka, „Pokud něco platí, tak udělej tohle“.

Použití:

Visual Basic:

If podmínka Then
	tak udělej tohle
End If

C#:

if(podmínka){
	tak udělej tohle;
}

Příklad:

Visual Basic:

If x = 6 Then
	Response.Write("x je 6!")
End If

C#:

if(x == 6){
	Response.Write("x je 6");
}

Tady si musíte dávat pozor u C#, v podmínce if je 2× rovná se, to z toho důvodu, že proměnné x nepřiřazujete žádné číslo, ale pouze srovnáváte hodnoty!

Else nám poslouží, když se nekoná podmínka. Je nepovinný, a pokud nebude v kódu uveden, kód v podmínce if bude přeskočen.
Příklad:

Visual Basic:

If x = 6 Then
	Response.Write("x je 6")
Else
	Response.Write("x není 6")
End If

C#:

if(x == 6){
	Response.Write("x je 6");
}
else{
	Response.Write("x není 6");
}

Visual Basic.NET nabízí ještě jednu vychytávku, a to příkaz ElseIf:

If x = 6 Then
	Response.Write("x je 6")
ElseIf x = 7 Then
	Response.Write("x je 7")
Else
	Response.Write("x není ani 6, ani 7!")
End If

ElseIf bohužel C# nemá, ale to moc nevadí, jelikož se dá nahradit vložením příkazu if do příkazu else:

int x = 5;

if(x == 6){
	Response.Write("x je 6!");
}
else{
	if(x == 7){
		Response.Write("x je 7");
	}
	else{
		Response.Write("x neni 6 ani 7!");
	}
}

Někdy určitě budete potřebovat zjistit podmínkou, jestli platí to a to, popřípadě to nebo to. V tom případě je na místě použít logické operátory. Ve VB to jsou and (a) a or (nebo), v C# to je && (a) a || (nebo).

Příklad:

Visual Basic:

Dim x as Integer = 6
Dim y as Inreger = 7

If x = 8 or y = 8 Then
	Response.Write("X nebo Y je 8!")
End If

C#:

If(x == 8 || y == 8){
	Response.Write("X nebo Y je 8!");
}

Cyklus For

Cyklus for použijeme, když chceme něco opakovat, než nějaká proměnná nabude určité hodnoty:

Visual Basic:

For promenna = pocatecni hodnota To konec hodnota
	prikazy v Cyklu….
Next promenna

C#:

for(promenna = pocatecni hodnota;ukoncovaci podmínka;zvetseni/zmenseni promenne){
	prikazy v Cyklu….
}

Příklad:

Visual Basic:

Dim i as Integer
For i = 1 To 6
  Response.Write("Zdravím vás, dnes už po "+i.toString()+".<br>")
Next i

Nastavíme proměnnou i hodnotu 1 a necháme ji opakovat, dokud není rovna hodnotě 6. Poté necháme vypsat text a nakonec zvětšíme proměnnou o 1.

C#:

int i;

for(i = 1;i <= 6;i++){
	Response.Write("Zdravím vás, dnes už po "+i+".<br>");
}

Nejdříve nastavíme proměnnou i na 1, poté ji necháme opakovat dokud není menší nebo rovna 6 a pak nastavíme, že se má hodnota i zvětšovat (i++ znamená i = i + 1). Následně už jen vypíšeme text.

Není pro nás problém nastavit, aby se hodnota zmenšovala:

Visual Basic:

For i=6 To 1 Step -1
	Response.Write("Zavodník už jede "+i.toString()+". kolo<br>")
Next i

A v C#:

for(i = 6;i >= 1;i--){
	Response.Write("Závodník už jede "+i+". kolo<br>");
}

A nakonec jeden lehký příklad, kdybyste něco nepochopili:

Visual Basic:

<%@ Page Language="VB" %>
<script runat="server">

Sub ukazJmena(sender As Object, e As EventArgs)

    Dim i as Integer
    Dim kolik as Integer
    Dim jmeno as String
    Dim opacne as String

	jmeno = txtJmeno.Text
	opacne = txtOpacne.Text
         kolik = Int32.Parse(txtKolik.Text) //prevedeme ze String na Integer

	for i=1 To kolik
		Response.Write("("+i.toString()+"): Jmenujete se "+jmeno+"!<br>")

	Next i

	Response.Write("<br>")

	if opacne = "0" Then
		for i=kolik To 1 Step -1
			Response.Write("("+i.toString()+"): Jmenujete se "+jmeno+"!<br>")

		Next i

	ElseIf opacne = "1" Then
	       Response.Write("::nepral jste si vypsat cyklus opacne::")

	End If

	Response.Write("<hr>")

End Sub

</script>
<html>
<head>
</head>
<body>
    <form runat="server">
	Kolikrát chcete jméno vypsat: <asp:TextBox id="txtKolik" runat="server" /><br>
        Zadejte jméno, které chcete vypsat: <asp:TextBox id="txtJmeno" runat="server" /><br>
	Chcete nechat cyklus vypsat opacne(0=ano,1=ne): <asp:TextBox id="txtOpacne" runat="server" /><br>
        <asp:button id="pozdravit" onclick="ukazJmena" runat="server" text="pozdrav" /><br>
    </form>
</body>
</html>

A to samé v C#:

<%@ Page Language="C#" %>
<script runat="server">
    void ukazJmena(object sender,EventArgs e){
	int i,kolik;
	string jmeno,opacne;

	jmeno = txtJmeno.Text;
	opacne = txtOpacne.Text;
	kolik = Int32.Parse(txtKolik.Text); // prevedeme ze string na int

	for(i=1;i<=kolik;i++){
		Response.Write("("+i+"): Jmenujete se "+jmeno+"!<br>");

	}

	Response.Write("<br>");
	if(opacne == "0"){
		for(i=kolik;i>=1;i--){
			Response.Write("("+i+"): Jmenujete se "+jmeno+"!<br>");

		}
	}
	else{
	   if(opacne == "1"){
	       Response.Write("::nepral jste si vypsat cyklus opacne::");

	   }
	}

	Response.Write("<hr>");

    }

</script>
<html>
<head>
</head>
<body>
    <form runat="server">
	Kolikrat chcete jmeno vypsat: <asp:TextBox id="txtKolik" runat="server" /><br>
        Zadejte jméno, které chcete vypsat: <asp:TextBox id="txtJmeno" runat="server" /><br>
	Chcete nechat cyklus vypsat opacne(0=ano,1=ne): <asp:TextBox id="txtOpacne" runat="server" /><br>
        <asp:button id="pozdravit" onclick="ukazJmena" runat="server" text="pozdrav" /><br>
    </form>
</body>
</html>

Doufám, že je vám to vše jasné, příště se podíváme na cykly while, do-while a příkaz switch.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

4 názory  —  4 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
Alan se věnuje programování webových aplikací a jazyku C++. Studuje na FEI-VŠB v Ostravě

Nové články

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Reklama
Reklama
Obrázek ke článku Konference: Moderní informační systémy podporují automatizaci

Konference: Moderní informační systémy podporují automatizaci

Současná situace v šíření onemocnění Covid-19 klade na řadu firem nové nároky a mnohé z nich jsou nyní více než kdy jindy závislé na nejmodernějších informačních technologiích. Proto i v oblasti podnikových informačních systémů vidíme rostoucí důraz na automatizaci nebo na důslednou integraci. Také o těchto trendech se bude mluvit na konferenci Firemní informační systémy, která se koná 24.9.2020 v pražském Kongresovém centru Vavruška na Karlově náměstí.

Obrázek ke článku Nebezpečí ukrytá v USB: z nuly na škvarek za pět sekund

Nebezpečí ukrytá v USB: z nuly na škvarek za pět sekund

Za cenu šesti dolarů lze celkem bez obtíží koupit nový, líbivě vyhlížející flash disk. Přidaná hodnota, které se vám spolu s ním dostane, už tak moc líbivá není. To, co se před pár sekundami tvářilo jako externí disk, se po připojení k počítači změní v důmyslné elektrické křeslo, které vaše zařízení v onen příslovečný škvarek promění za pár sekund. Cílovou skupinou pro koupi takových zařízení by mohli být záškodníci, kteří by tímto způsobem osnovali pomstu třeba vůči záletnému partnerovi. 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý