Egymásba ágyazott szelekció-bevezetés
Egy üres programban próbáld ki, hogy üres egymásba ágyazott szelekciót hogyan kell írni.
// 1. feladat:
//- Kérj be egy egész számot.
//- Vizsgáld meg, hogy osztható-e 5-tel.
//- Ha osztható 5-tel, vizsgáld meg, hogy osztható-e kettővel. Ha igen, írd ki, hogy akkor osztható 10-zel is.
//- Ha nem volt osztható 5-tel, akkor írd ki, hogy nem vizsgálod a kettővel oszthatóságot.
//2. feladat:
//- Kérd be, hogy a tanuló gimis, vagy szakgimis.
//- Ha szakgimis, kérd be az évfolyamát is.
//- Ha évfolyamként azt adta meg, hogy 9, akkor kérdezd meg, hogy infós, vagy tesis.
//- Ha kilencedikes és infós, írd ki, hogy most programozás órája lesz.
//- Ha kilencedikes és tesis, írd ki, hogy most éppen tesi órája lesz.
Első megoldás
using System;
namespace egymasbaAgyazott
{
class Program
{
static void Main(string[] args)
{
// 1. feladat:
//- Kérj be egy egész számot.
Console.WriteLine("Kérek egy egész számot!");
int szam = Convert.ToInt32(Console.ReadLine());
//- Vizsgáld meg, hogy osztható-e 5-tel.
if (szam % 5 == 0) //"igaz" ág
{ //blokkjel(pár), ezen belül végrehajtódik minden utasítás, ha a feltétel igaz
Console.WriteLine("A szám osztható 5-tel, vizsgálom a kettővel való oszthatóságot.");
if (szam % 2 == 0)
{
Console.WriteLine("A szám osztható kettővel.");
Console.WriteLine("A szám osztható tízzel is.");
}
else
{
Console.WriteLine("A szám nem osztható kettővel.");
}
}
else // "hamis" ág
{
Console.WriteLine("A szám nem osztható 5-tel, nem vizsgálom a kettővel való oszthatóságot.");
}
//- Ha osztható 5-tel, vizsgáld meg, hogy osztható-e kettővel. Ha igen, írd ki, hogy akkor osztható 10-zel is.
//- Ha nem volt osztható 5-tel, akkor írd ki, hogy nem vizsgálod a kettővel oszthatóságot.
//2. feladat:
//- Kérd be, hogy a tanuló gimis, vagy szakgimis.
//- Ha szakgimis, kérd be az évfolyamát is.
//- Ha évfolyamként azt adta meg, hogy 9, akkor kérdezd meg, hogy infós, vagy tesis.
//- Ha kilencedikes és infós, írd ki, hogy most programozás órája lesz.
//- Ha kilencedikes és tesis, írd ki, hogy most tesi órája lesz.
Console.Write("Válassz: gimis, vagy szakgimis vagy? ");
string szak = Console.ReadLine();
if (szak == "gimis")
{
Console.WriteLine("Köszönjük, nem kérünk további adatokat.");
}
else
{
if (szak == "szakgimis")
{
Console.Write("Kérem az évfolyamodat:");
string evfolyam = Console.ReadLine();
if (evfolyam == "9")
{
Console.WriteLine("Infós, vagy tesis vagy?");
string szakirany = Console.ReadLine();
if (szakirany == "infós")
{
Console.WriteLine("Programozás órád van.");
}
else
{
Console.WriteLine("Tesi órád van.");
}
}
else
{
Console.WriteLine("Köszönjük, további szép napot!");
}
}
else
{
Console.WriteLine("Hiba!");
}
}
Console.ReadLine();
}
}
}
Második megoldás, kevesebb blokkjellel:
using System;
namespace egymasbaAgyazott
{
class Program
{
static void Main(string[] args)
{
// 1. feladat:
//- Kérj be egy egész számot.
Console.WriteLine("Kérek egy egész számot!");
int szam = Convert.ToInt32(Console.ReadLine());
//- Vizsgáld meg, hogy osztható-e 5-tel.
if (szam % 5 == 0) //"igaz" ág
{ //blokkjel(pár), ezen belül végrehajtódik minden utasítás, ha a feltétel igaz
Console.WriteLine("A szám osztható 5-tel, vizsgálom a kettővel való oszthatóságot.");
if (szam % 2 == 0)
{
Console.WriteLine("A szám osztható kettővel.");
Console.WriteLine("A szám osztható tízzel is.");
}
else
Console.WriteLine("A szám nem osztható kettővel.");
}
else // "hamis" ág
Console.WriteLine("A szám nem osztható 5-tel, nem vizsgálom a kettővel való oszthatóságot.");
//- Ha osztható 5-tel, vizsgáld meg, hogy osztható-e kettővel. Ha igen, írd ki, hogy akkor osztható 10-zel is.
//- Ha nem volt osztható 5-tel, akkor írd ki, hogy nem vizsgálod a kettővel oszthatóságot.
//2. feladat:
//- Kérd be, hogy a tanuló gimis, vagy szakgimis.
//- Ha szakgimis, kérd be az évfolyamát is.
//- Ha évfolyamként azt adta meg, hogy 9, akkor kérdezd meg, hogy infós, vagy tesis.
//- Ha kilencedikes és infós, írd ki, hogy most programozás órája lesz.
//- Ha kilencedikes és tesis, írd ki, hogy most tesi órája lesz.
Console.Write("Válassz: gimis, vagy szakgimis vagy? ");
string szak = Console.ReadLine();
if (szak == "gimis")
Console.WriteLine("Köszönjük, nem kérünk további adatokat.");
else
{
if (szak == "szakgimis")
{
Console.Write("Kérem az évfolyamodat:");
string evfolyam = Console.ReadLine();
if (evfolyam == "9")
{
Console.WriteLine("Infós, vagy tesis vagy?");
string szakirany = Console.ReadLine();
if (szakirany == "infós")
Console.WriteLine("Programozás órád lesz.");
else
Console.WriteLine("Tesi órád lesz.");
}
else
Console.WriteLine("Köszönjük, további szép napot!");
}
else
Console.WriteLine("Hiba!");
}
Console.ReadLine();
}
}
}
Nincsenek megjegyzések:
Megjegyzés küldése