Programování C#
Název školy | Vyšší odborná škola obalové techniky a Střední škola, Štětí, příspěvková organizace | ||
Adresa školky | Kostelní 134, 411 08 Štětí | ||
IČ | 46773509 | ||
Název operačního programu | OP Vzdělávání pro konkurenceschopnost | ||
Registrační číslo | CZ.1.07/1.5.00/34.1006 | ||
Označení vzdělávacího materiálu | VY_32_INOVACE_23_PRG_456 | ||
Název tématické oblasti (sady) | Programování | ||
Název materiálu | Logické operátory | ||
Anotace | Text shrnuje poznatky o logických operátorech. Přidává operátor logické negace. Dále předkládá cvičení na procvičení nasazení logických operátorů. | ||
Autor | Ivan Pomykacz | Jazyk | čeština |
Očekávaný výstup | Rozhodne o použití logického operátoru. Používá logické operátory v kódu. | ||
Klíčová slova | logický součet, logický součin, logická negace, výraz, operátor | ||
Druh výukového zdroje | Pracovní list | Věková skupina žáků | 15+ |
Typ interakce | aktivita | Ročník | 1. |
Speciální vzdělávací potřeby | žádné | ||
Zhotoveno, (datum/období) | 21.10.2013 | Celková velikost |
Obsah
Zadání
Vytvořte aplikaci, která bude vyžadovat přihlášení uživatele. Náš program bude značně omezený, ale jen do té doby, než se seznámíme s dalšími metodami a technikami programování.
Postup
-
Program vyzve uživatele k zadání uživatelského jména a hesla. Použijte metodu
Console.ReadLine()
pro získání uvedených dat. -
Proveďte ověření totožnosti uživatele. V naší aplikaci bude veden pouze jeden uživatelský účet. Pro úspěšné přihlášení je potřeba aby přihlašovací jméno a heslo byly stejné jako ty, co jsou uložené v programu.
Můžete použít logický součin k vyřešení autentizace.
-
Vypište informaci o úspěchu či neúspěchu přihlášení.
Pozor! Z bezpečnostního hlediska byste neměli uživatele informovat o tom, zda-li zadal chybné jméno nebo heslo. Útočník zpravidla nezná ani jméno ani heslo. A pokud mu napovíte tím, že uhádl heslo chybovou hláškou "Špatně zadané heslo", je na půl cesty k tomu, aby získal i heslo.
Verze 1.1
Schovejme heslo před zraky náhodných čumilů.
Pomocí vlastností Console.ForegroundColor
a Console.ForegroundColor
můžeme dočasně dosadit barvu pozadí do barvy popření a tím vlastně zneviditelnit psaný text.
Deklarujme novou proměnnou barva
typu ConsoleColor
, do které uložíme aktuální barvu popření (písma).
ConsoleColor barva; barva = Console.ForegroundColor;
Následně můžeme změnit barvu popření na barvu pozadí.
Console.ForegroundColor = Console.BackgroundColor;
Po zadání hesla to ovšem musíme vrátit zpět :)
Console.ForegroundColor = barva;
Řešení
Console.WriteLine("Program: Login v1.1\n"); string secretName = "root"; string secretPass = "toor"; string loginName; string loginPass; Console.WriteLine("Přihlášení"); Console.Write("login: "); loginName = Console.ReadLine(); // příprava na změnu barvy ConsoleColor barva; barva = Console.ForegroundColor; Console.Write("heslo: "); // záměna barvy Console.ForegroundColor = Console.BackgroundColor; // načtení hesla loginPass = Console.ReadLine(); // barva zpět Console.ForegroundColor = barva; // autentizace if (secretName == loginName && secretPass == loginPass) { Console.WriteLine("\nPřihlášení proběhlo úspěšně"); } else { Console.WriteLine("\nChybně zadané jméno nebo heslo!"); }