A Turing tesztes feladatot oldd meg kétágú szelekcióval, és mindkét feladatot oldd meg két irányból.
A NMSZC Szent-Györgyi Albert Technikum 11c (2022-23) osztályának blogja asztali alkalmazás fejlesztés és adatbázis-kezelés I. tantárgyakból
2022. november 17., csütörtök
2022.11.17. Kétágú szelekció bevezetése
Kétágú szelekció bevezetése
Feladat
//1.feladat:
//- Kérj be egy egész számot.
//- Írd ki, hogy pozitív, vagy negatív.
//1. megoldás - egyágú szelekcióval:
//2. megoldás - kétágú szelekcióval:
//- Írd ki, hogy osztható-e 2-vel.
//1. megoldás - egyágú szelekcióval:
//2. megoldás - kétágú szelekcióval:
//2.feladat:
//- Kérj be egy betűt.
//- Írd ki, hogy a bekért betű a nagy A betű-e, vagy nem.
//1. megoldás - egyágú szelekcióval:
//2. megoldás - kétágú szelekcióval:
//3.feladat:
//- Kérd be, milyen nap van ma.
//- Írd ki, hogy a bekért szó tényleg a mai nap-e, vagy nem.
//1. megoldás - egyágú szelekcióval:
//2. megoldás - kétágú szelekcióval:
//4.feladat:
//- Kérj be egy tetszőleges számot.
//- Írd ki, hogy a bekért szám tizede nagyobb 5-nél, vagy kisebb 5-nél.
//1. megoldás - egyágú szelekcióval:
//egyenlőséget nem kezeltük.
//2. megoldás - kétágú szelekcióval:
//egyenlőséget is kezeltük.
////////////////////////////////////////////////////////////////////////////////////
//5.feladat:
//- Kérd be a magyar abc első mássalhangzóját.
//- Írj ki egy megjegyzést arról, hogy jó-e a válasz.
//- Írj ki még egy mondatot a következő sorba.
//1. megoldás - egyágú szelekcióval:
//2. megoldás - kétágú szelekcióval:
//6.feladat:
//- Kérd be az <igaz> szót angolul. (Használj logikai változót.)
//- Írj ki egy megjegyzést arról, hogy jó-e a válasz.
//- Írj ki még egy mondatot a következő sorba.
//1. megoldás - egyágú szelekcióval:
//2. megoldás - kétágú szelekcióval:
Megoldás
namespace ketaguSzelekcioBevezetes
{
class Program
{
static void Main(string[] args)
{
//1.feladat:
//- Kérj be egy egész számot.
//- Írd ki, hogy pozitív, vagy negatív.
Console.Write("Írj be egy számot: ");
int szam = Convert.ToInt32(Console.ReadLine());
//1. megoldás - egyágú szelekcióval:
if (szam >= 0)
Console.WriteLine("A szám pozitív.");
if (szam < 0)
Console.WriteLine("A szám negatív.");
//2. megoldás - kétágú szelekcióval:
if (szam >= 0)
Console.WriteLine("A szám pozitív.");
else
Console.WriteLine("A szám negatív."); //Egy utasítás van az else ágban.
//- Írd ki, hogy osztható-e 2-vel.
//1. megoldás - egyágú szelekcióval:
if (szam % 2 == 0)
Console.WriteLine("A szám osztható 2-vel.");
if (szam % 2 != 0)
Console.WriteLine("A szám nem osztható 2-vel.");
//2. megoldás - kétágú szelekcióval:
if (szam % 2 == 0)
Console.WriteLine("A szám osztható 2-vel.");
else
Console.WriteLine("A szám nem osztható 2-vel.");
//2.feladat:
//- Kérj be egy betűt.
//- Írd ki, hogy a bekért betű a nagy A betű-e, vagy nem.
Console.Write("Írj be egy betűt: ");
char betu = Convert.ToChar(Console.ReadLine());
//1. megoldás - egyágú szelekcióval:
if (betu == 'A')
Console.WriteLine("Az A betűt ütötted be.");
if (betu != 'A')
Console.WriteLine("Nem az A betűt ütötted be.");
//2. megoldás - kétágú szelekcióval:
if (betu == 'A')
Console.WriteLine("Az A betűt ütötted be.");
else
Console.WriteLine("Nem az A betűt ütötted be.");
//3.feladat:
//- Kérd be, milyen nap van ma.
//- Írd ki, hogy a bekért szó tényleg a mai nap-e, vagy nem.
Console.Write("Írd be, milyen nap van ma: ");
string nap = Console.ReadLine();
//1. megoldás - egyágú szelekcióval:
if (nap == "péntek")
Console.WriteLine("Eltaláltad.");
if (nap != "péntek") // másik megoldás: if (!(nap == "péntek"))
Console.WriteLine("Hoppá :(.");
//2. megoldás - kétágú szelekcióval:
if (nap == "péntek")
Console.WriteLine("Eltaláltad.");
else
Console.WriteLine("Hoppá :(.");
//4.feladat:
//- Kérj be egy tetszőleges számot.
//- Írd ki, hogy a bekért szám tizede nagyobb 5-nél, vagy kisebb 5-nél.
Console.Write("Írj be egy tetszőleges számot: ");
double tortSzam = Convert.ToDouble(Console.ReadLine());
//1. megoldás - egyágú szelekcióval:
if (tortSzam / 10 > 5)
Console.WriteLine("A szám tizede nagyobb 5-nél.");
if (tortSzam / 10 < 5)
Console.WriteLine("A szám tizede kisebb 5-nél."); //Vigyázat! Az egyenlőséget nem kezeltük.
//2. megoldás - kétágú szelekcióval:
if (tortSzam / 10 > 5)
Console.WriteLine("A szám tizede nagyobb 5-nél.");
else
Console.WriteLine("A szám tizede nem nagyobb 5-nél."); //Figyelem! Az egyenlőséget is kezeltük. //////////////////////////////////////////////////////////////////////////////////////
//5.feladat:
//- Kérd be a magyar abc első mássalhangzóját.
//- Írj ki egy megjegyzést arról, hogy jó-e a válasz.
//- Írj ki még egy mondatot a következő sorba.
Console.Write("Írd be a magyar abc első mássalhangzóját: ");
betu = Convert.ToChar(Console.ReadLine());
//1. megoldás - egyágú szelekcióval:
if (betu == 'b')
{
Console.WriteLine("Szép is lett volna, ha nem tudod!"); //Két utasítás van az else ágban.
Console.WriteLine("Legközelebb nehezebbet kérdezek!");
}
if (betu != 'b') //másik megoldás: (!(betu == 'b'))
{
Console.WriteLine("Hát ez szép, mondhatom.");
Console.WriteLine("Mehetsz vissza az első osztályba!");
}
//2. megoldás - kétágú szelekcióval:
if (betu == 'b')
{
Console.WriteLine("Szép is lett volna, ha nem tudod!");
Console.WriteLine("Legközelebb nehezebbet kérdezek!");
}
else
{
Console.WriteLine("Hát ez szép, mondhatom.");
Console.WriteLine("Mehetsz vissza az első osztályba!");
}
//6.feladat:
//- Kérd be az <igaz> szót angolul. (Használj logikai változót.)
//- Írj ki egy megjegyzést arról, hogy jó-e a válasz.
//- Írj ki még egy mondatot a következő sorba.
Console.Write("Írd be az <igaz> szót angolul: ");
bool log = Convert.ToBoolean(Console.ReadLine());
//1. megoldás - egyágú szelekcióval:
if (log == true) //így is jó: if (log)
{
Console.WriteLine("Szép is lett volna, ha nem tudod!");
Console.WriteLine("Legközelebb nehezebbet kérdezek!");
}
if (log == false) //így is jó: if (!log)
{
Console.WriteLine("Hát ez szép, mondhatom.");
Console.WriteLine("Mehetsz vissza a negyedik osztályba!");
}
//2. megoldás - kétágú szelekcióval:
if (log == true)
{
Console.WriteLine("Szép is lett volna, ha nem tudod!");
Console.WriteLine("Legközelebb nehezebbet kérdezek!");
}
else
{
Console.WriteLine("Hát ez szép, mondhatom.");
Console.WriteLine("Mehetsz vissza a negyedik osztályba!");
}
Console.ReadLine();
}
}
}
2022.11.17. Osztások + Tört formázása a kiírásban
using System;
namespace ConsoleApp21
{
class Program
{
static void Main(string[] args)
{
//Tört formázása a kiírásban:
Console.WriteLine("Az alábbi sorokban egy tört számot írunk ki különbözőképpen formázva: ");
double szam = 16546.6875645;
Console.Write("Mindenféle formázás nélkül:");
Console.WriteLine(szam);
Console.WriteLine();
Console.WriteLine("3 tizedesjeggyel, 15 hosszon jobbra:");
Console.WriteLine("Szám: {0,15:0.000}", szam);
//vagy így:
Console.WriteLine("Szám: {0,15:.000}", szam);
Console.WriteLine();
Console.WriteLine("3 tizedesjeggyel:");
Console.WriteLine("Szám: {0:.000}", szam);
Console.WriteLine();
Console.WriteLine("3 tizedesjeggyel, 15 hosszon balra, kétszer egymás után:");
Console.WriteLine("Szám: {0,-15:.000}{0,-15:.000}", szam);
Console.WriteLine();
Console.WriteLine("Tizedesjegyek nélkül, ekkor kerekít is, nem csak levágja a tizedesjegyeket:");
Console.WriteLine("Szám: {0:0}", szam);
Console.WriteLine();
Console.WriteLine("Függvénnyel kerekítve:");
Console.WriteLine("Szám: {0}", Math.Round(szam,0));
Console.WriteLine("Szám: {0}", Math.Round(szam, 1));
Console.WriteLine("Szám: {0}", Math.Round(szam, 2));
Console.WriteLine("Szám: {0}", Math.Round(szam, 3));
Console.WriteLine("Szám: {0}", Math.Round(szam, 4));
Console.WriteLine();
Console.WriteLine("Az alábbi sorokban egy TÖRTként tárolt EGÉSZ számot írunk ki különbözőképpen formázva: ");
szam = 16546;
Console.WriteLine("3 tizedesjeggyel:");
Console.WriteLine("Szám: {0:0.000}", szam);
Console.WriteLine();
Console.WriteLine("Tizedesjegyek nélkül:");
Console.WriteLine("Szám: {0:0}", szam);
Console.WriteLine();
// Osszunk el egymással két számot!
//Lássuk, milyen eredményeket kaphatunk attól
//függően, hogy milyen számokról volt szó.
int a = 4;
int b = 5;
Console.WriteLine("Két egész számot osztunk el egymással (<a> és <b>). 4 / 5 eredménye: {0}", a / b);
Console.WriteLine("Ha az eredmény tört szám, annak csak egész része jelenik meg.\nMivel két egész számot osztottunk, az eredmény is egész szám lesz. Ezzel elvesztettük a tört részt.\nEz általában nem jó, de néha hasznos.");
Console.WriteLine();
Console.WriteLine("4 / 5 művelet osztási maradéka, vagyis 4 % 5: {0}, hiszen nincs meg benne egyszer sem, és a maradék 4.", a % b);
Console.WriteLine();
Console.WriteLine("Ha meg szeretnénk tudni, hogy két szám osztható-e egymással,\ncsak meg kell nézni, van-e osztási maradék.");
Console.WriteLine("Ha nincs maradék, oszthatók egymással.");
Console.WriteLine("10 / 5 osztás eredménye: {0}", 10/5);
Console.WriteLine("10 / 5 osztás osztási maradéka, vagyik 10 % 5: {0}", 10 % 5);
Console.WriteLine();
Console.WriteLine("Most az <a> és a <b> értékét értékül adjuk egy-egy double típusú változónak.");
double aTortSzam = a;
double bTortSzam = b;
Console.WriteLine("A két egész szám osztásának eredménye, ha törtként számoltunk velük (4 / 5): {0}", aTortSzam / bTortSzam);
Console.WriteLine();
Console.ReadLine();
}
}
}
2022.11.17. Output formázások
Output formázások
namespace adatlopo
{
class Program
{
static void Main(string[] args)
{
//Adatlopó
//Írjunk programot, mely adatokat kér be a
//felhasználótól, majd különböző formában
//kiírja azokat.
Console.Title = "Ez nem adatlopó program :)";
const string hackerCode = "DEVIL"; //ez nem változik a program során: konstans érték
Console.Write("Felhasználónév: ");
string userName = Console.ReadLine();
Console.Write("Jelszó: ");
string password = Console.ReadLine();
Console.Write("IP cím: ");
string ip = Console.ReadLine();
Console.Write("Kedvenc torrent server: ");
string torrent = Console.ReadLine();
Console.Write("Letöltések száma havonta: ");
string downloads = Console.ReadLine();
Console.WriteLine("\n\n");
//Kiírjuk a hacker képernyőjére a megszerzett adatokat:
Console.WriteLine("To: {0} ",hackerCode );
Console.WriteLine("Username: {0} ",userName );
Console.WriteLine("Password: {0} ",password );
Console.WriteLine("IP: {0} ",ip );
Console.WriteLine("Torrent: {0} ",torrent );
Console.WriteLine("Downloads: {0} ",downloads );
Console.WriteLine("\n\n");
//Egy kicsit szebben így néz ki (balra rendezett):
Console.WriteLine("To: {0}",hackerCode );
Console.WriteLine("Username: {0}",userName );
Console.WriteLine("Password: {0}",password );
Console.WriteLine("IP: {0}",ip );
Console.WriteLine("Torrent: {0}",torrent );
Console.WriteLine("Downloads: {0}",downloads );
Console.WriteLine("\n\n");
//Ugyanez elegánsan megoldva (jobbra rendezett):
Console.WriteLine("To: {0,19}",hackerCode );
Console.WriteLine("Username: {0,19}",userName );
Console.WriteLine("Password: {0,19}",password );
Console.WriteLine("IP: {0,19}",ip );
Console.WriteLine("Torrent: {0,19}",torrent );
Console.WriteLine("Downloads: {0,19}",downloads );
Console.WriteLine("\n\n");
//ugyanezeket így is kiírhatnánk (balra rendezett):
Console.WriteLine("To: {0}, Username: {1}, Password: {2}, IP: {3}, Torrent: {4}, Downloads: {5}", hackerCode, userName, password, ip, torrent, downloads);
Console.WriteLine("\n\n");
//vagy így (jobbra rendezett):
Console.WriteLine("To: {0,8}, Username: {1,8}, Password: {2,8}, IP: {3,19}, Torrent: {4,8}, Downloads: {5,4}", hackerCode, userName, password, ip, torrent, downloads);
//Ugyanez két oszloposan megoldva (jobbra rendezett):
Console.WriteLine("\n\n");
Console.WriteLine("To: {0,19} IP: {1,19}", hackerCode,ip);
Console.WriteLine("Username: {0,19} Torrent: {1,19}", userName,torrent);
Console.WriteLine("Password: {0,19} Downloads: {1,19}", password,downloads);
Console.ReadLine();
}
}
Feliratkozás:
Bejegyzések (Atom)
-
1. Be kell fejezni a monitorvásáros feladatsort. 2. Ez egy hosszú feladatsor, jussatok el minél messzebbre. Segítsetek egymásnak. Feladatlap...
-
Ne feledjük, hogy pénteken TZ. using System; using System.Collections.Generic; using System.Linq; namespace monitorAlapOOP { class ...
-
Nézzetek utána, hogy mi az a tesztpiramis. Javaslom innen elindulni. Nyiss egy tesztelési digifüzetet (oszd meg velem). Írj bele egy rész...