Earn More by Sharing What You Love
Do you create content for developers working with .NET, C#, Java, Python, or Node.js? Turn your expertise into extra income!

Layla Porter
7m 37s
W programowaniu w C#, podejmowanie decyzji na podstawie warunków jest fundamentalnym aspektem tworzenia dynamicznych i responsywnych aplikacji. W tym miejscu pojawiają się instrukcje if-else. Instrukcja if-else w C# pozwala programowi wykonać różne bloki kodu w zależności od tego, czy określony warunek jest prawdziwy, czy fałszywy.
Ten przewodnik, zainspirowany wideo 'C# for Beginners Part 2 - Learn how to write an 'if-else' statement and a 'while' loop' autorstwa LaylaCodesIt, przedstawi podstawy instrukcji if-else w C#, korzystanie z operatorów warunkowych i logicznych w pisaniu wyrażeń boolowskich, demonstrując, jak sprawić, by programy inteligentnie reagowały na dane wejściowe użytkownika.
Logika warunkowa pozwala programowi podejmować decyzje na podstawie określonych warunków. Wideo Layli wprowadza koncepcję i składnię instrukcji if-else, przykładu logiki warunkowej, która wykonuje różne bloki kodu w zależności od tego, czy określony warunek jest prawdziwy, czy fałszywy.
W poniższym przykładzie kodu Layla pisze komunikat powitalny, aby zapytać, czy użytkownik lubi ser:
// Asking the user a question and storing their response
Console.WriteLine($"Hello {name}, do you like cheese?");
string doTheyLikeCheese = Console.ReadLine();' Asking the user a question and storing their response
Console.WriteLine($"Hello {name}, do you like cheese?")
Dim doTheyLikeCheese As String = Console.ReadLine()Następnie, to warunkowe wyrażenie if-else sprawdza odpowiedź użytkownika i zmienia swoją odpowiedź na podstawie tego, co użytkownik powiedział. Warunek budowany jest za pomocą operatorów warunkowych, a na podstawie jego wyniku wykonywane są instrukcje wewnątrz bloków if-else. Oto prosty przykład z jednoliniowym wyrażeniem:
// Checking the user's response and providing appropriate output
if (doTheyLikeCheese == "yes")
{
Console.WriteLine("Here is a lump of cheese.");
}
else
{
Console.WriteLine("Here is a lump of coal.");
}' Checking the user's response and providing appropriate output
If doTheyLikeCheese = "yes" Then
Console.WriteLine("Here is a lump of cheese.")
Else
Console.WriteLine("Here is a lump of coal.")
End IfJeśli użytkownik powiedział 'tak', kod wewnątrz instrukcji if wyświetli komunikat z ofertą kawałka sera. Jeśli użytkownik odpowie czymkolwiek innym niż 'tak', wtedy blok else wyświetli "Oto kawałek węgla."
Przy podstawowej instrukcji if-else może wystąpić częsty problem: wrażliwość na wielkość liter. Jeśli użytkownik wpisze 'Tak' zamiast 'tak', program nie rozpoznaje tego jako prawidłowego wejścia. Aby to rozwiazac, Layla uzywa metody ToLower(), ktora automatycznie przeksztalca wprowadzony przez uzytkownika tekst na male litery i unika problemu z rozroznianiem wielkosci liter.
// Using ToLower() to handle case sensitivity in user input
if (doTheyLikeCheese.ToLower() == "yes")
{
Console.WriteLine("Here is a lump of cheese.");
}
else
{
Console.WriteLine("Here is a lump of coal.");
}' Using ToLower() to handle case sensitivity in user input
If doTheyLikeCheese.ToLower() = "yes" Then
Console.WriteLine("Here is a lump of cheese.")
Else
Console.WriteLine("Here is a lump of coal.")
End IfNastępnie Layla wyjaśnia, jak obsługiwać więcej niż dwie możliwe odpowiedzi za pomocą instrukcji else-if. Tutaj program sprawdza wiele instrukcji warunkowych - jeśli użytkownik odpowie 'tak', 'nie' lub cokolwiek innego.
// Checking multiple conditions using else-if
if (doTheyLikeCheese.ToLower() == "yes")
{
Console.WriteLine("Here is a lump of cheese.");
}
else if (doTheyLikeCheese.ToLower() == "no")
{
Console.WriteLine("Here is a lump of coal.");
}
else
{
Console.WriteLine("Please give a yes or no answer.");
}' Checking multiple conditions using else-if
If doTheyLikeCheese.ToLower() = "yes" Then
Console.WriteLine("Here is a lump of cheese.")
ElseIf doTheyLikeCheese.ToLower() = "no" Then
Console.WriteLine("Here is a lump of coal.")
Else
Console.WriteLine("Please give a yes or no answer.")
End IfJak wcześniej, jeśli wyrażenie boolowskie w instrukcji if jest prawdziwe, program oferuje kawałek sera, gdy użytkownik mówi 'tak'. Jednak zamiast oferować kawałek węgla na jakąkolwiek inną odpowiedź, w instrukcji else-if, robi to teraz tylko wtedy, gdy użytkownik odpowie 'nie'. Jeśli użytkownik odpowie czymkolwiek innym niż 'tak' lub 'nie', część else programu poprosi użytkownika o podanie odpowiedzi 'tak' lub 'nie'. Zobaczmy wynik powyższego kodu w akcji: (Obraz można poprawić)

Aby zapewnić, że użytkownik poda prawidłową odpowiedź, wprowadza się pętle. Pętla może wielokrotnie prosić użytkownika o podanie danych, dopóki nie udzieli poprawnej odpowiedzi. Nazywa się to pętlą 'while', a poniższy przykład pokazuje, jak to działa:
// Using a while loop to repeatedly ask for valid input
bool hasAnswered = false;
while (!hasAnswered)
{
// Checking the user's response and setting hasAnswered to true for valid responses
if (doTheyLikeCheese.ToLower() == "yes")
{
Console.WriteLine("Here is a lump of cheese.");
hasAnswered = true;
}
else if (doTheyLikeCheese.ToLower() == "no")
{
Console.WriteLine("Here is a lump of coal.");
hasAnswered = true;
}
else
{
Console.WriteLine("Please give a yes or no answer.");
doTheyLikeCheese = Console.ReadLine();
}
}' Using a while loop to repeatedly ask for valid input
Dim hasAnswered As Boolean = False
While Not hasAnswered
' Checking the user's response and setting hasAnswered to true for valid responses
If doTheyLikeCheese.ToLower() = "yes" Then
Console.WriteLine("Here is a lump of cheese.")
hasAnswered = True
ElseIf doTheyLikeCheese.ToLower() = "no" Then
Console.WriteLine("Here is a lump of coal.")
hasAnswered = True
Else
Console.WriteLine("Please give a yes or no answer.")
doTheyLikeCheese = Console.ReadLine()
End If
End WhileW powyższym przykładzie pętla nadal prosi użytkownika, dopóki nie odpowie 'tak' lub 'nie'. Tutaj możesz zobaczyć to w akcji podczas wykonywania kodu, z wideo Layli:

Podsumowując:
Logika warunkowa jest fundamentalna dla języka programowania C#, dlatego najlepiej ćwiczyć te koncepcje i zacząć je uwzględniać w swoim kodzie. A to dopiero początek. Instrukcja if, instrukcja else, schodki else-if, if-else wewnątrz if-else zwane również zagnieżdżonym if-else, instrukcja switch - logika warunkowa może diametralnie zmienić twój program i jest wiele do nauczenia się.
I wuala! To jest przewodnik dla początkujących po instrukcjach if-else i pętlach while. Jak wspomniano wcześniej, niniejszy przewodnik powstał z inspiracji LaylaCodesIt — zapraszamy do odwiedzenia jej kanału, gdzie można obejrzeć filmy demonstracyjne dotyczące wszystkich powyższych zagadnień oraz uzyskać więcej informacji na temat programowania w języku C#.
Tymczasem zapoznaj się z naszymi innymi zasobami, gdzie dzieli się naszymi ulubionymi twórcami, samouczkami i zasobami do nauki, aby zwiększyć swoje umiejętności w C#. Miłego kodowania!
Do you create content for developers working with .NET, C#, Java, Python, or Node.js? Turn your expertise into extra income!
Join our newsletter, you’ll get exclusive access on article updates. We value your privacy