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

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

 

ASP.NET - 4. lekce

Google       Google       6. 9. 2006       15 653×

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 Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Touto roční dobou, kdy je zem pokrytá barevným listím a prsty křehnou v mrazivých ránech, se obvykle těšíme na zbrusu novou verzi RAD Studia. Letos si však ale budeme muset počkat na Godzillu a Linux až do jara. Vezměme tedy za vděk alespoň updatem 2 a jelikož dle vyjádření pánů z Embarcadero se budou nové věci objevovat průběžně, pojďme se na to tedy podívat.

Reklama
Reklama
Obrázek ke článku Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Stále rostoucí zájem o cloudové služby i maximální důraz na pružnost, spolehlivost a bezpečnost IT vedou k výrazným inovacím v datových centrech. V infrastruktuře datových center hraje stále významnější roli software a stále častěji se lze setkat s hybridními přístupy k jejich budování i provozu.

Obrázek ke článku Konference: Mobilní technologie mají velký potenciál pro byznys

Konference: Mobilní technologie mají velký potenciál pro byznys

Firmy by se podle analytiků společnosti Gartner měly  rychle přizpůsobit skutečnosti, že mobilní technologie už zdaleka nejsou horkou novinkou, ale standardní součástí byznysu. I přesto - nebo možná právě proto - tu nabízejí velký potenciál. Kde tedy jsou ty největší příležitosti? I tomu se bude věnovat již čtvrtý ročník úspěšné konference Mobilní řešení pro business.

Obrázek ke článku Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres HCPP16 pořádá od 30. září do 2. října nezisková organizace Paralelní Polis již potřetí, a to ve stejnojmenném bitcoinovém prostoru v pražských Holešovicích. Letos přiveze na třídenní konferenci přes 40 většinou zahraničních speakerů – lídrů z oblastí technologií, decentralizované ekonomiky, politických umění a aktivismu. Náměty jejich přednášek budou také hacking, kryptoměny, věda, svoboda nebo kryptoanarchie.

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 © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý