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!"); }

