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

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

 

ASP.NET - 4. lekce

Google       Google       6. 9. 2006       15 892×

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 Dovozci baterií mění logistiku, letadlo nahrazuje námořní doprava

Dovozci baterií mění logistiku, letadlo nahrazuje námořní doprava

Dovozci baterií do mobilů či notebooků upouštějí od letecké přepravy zboží. V letošním roce plánují dovézt až 80 % produktů lodí. Přitom před 5 lety byla většina baterií do mobilních přístrojů dovezených do České republiky přepravována letadlem. Za proměnou způsobu transportu akumulátorů stojí zpřísnění pravidel pro leteckou přepravu, která přinášejí vyšší náklady i náročnou agendu.

Reklama
Reklama
Obrázek ke článku JIC otevírá největší digitální dílnu pro veřejnost v České republice

JIC otevírá největší digitální dílnu pro veřejnost v České republice

JIC otevírá první nonstop veřejně dostupnou digitální dílnu světového formátu s vybavením za 3 miliony korun. Dílnu může využívat po registraci kdokoliv. V  prostorách vzniknou prototypy produktů místních startupů, projekty kutilů a studentů i umělecká díla. Cílem dílny je zpřístupnit veřejnosti drahé přístroje a přitáhnout více podnikavých lidí k technickým oborům.

Obrázek ke článku Nový IT hráč na českém trhu

Nový IT hráč na českém trhu

V roce 2015 otevřela v Praze na Pankráci v budově City Tower své kanceláře společnost EPAM Systems (NYSE:EPAM), jejíž centrála se nachází v USA. Společnost byla založená v roce 1993 a od té doby prošla velkým vývojem a stále roste.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý