do while- warunek zakończenia pętli

do while- warunek zakończenia pętli
Tomasz De
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam,
Czemu wnętrze pętli do-while jest wyświetlane skoro warunek powtarzania pętli nie został spełniony? Rozumiem, że zawsze wykonuje się raz, a potem już jest to zależne od warunku? Jak zrobić to żeby zawartość pętli nie była wyświetlana? Z góry dziękuję!

Kopiuj
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            ConsoleKeyInfo Wybór;
            Console.WriteLine("Wciśnij X aby wyjść: ");
            Wybór = Console.ReadKey();
            do
            {
                Console.WriteLine("Nie wciśnięto iksa. Spróbuj ponownie: ");
                Wybór = Console.ReadKey();
            } while (Wybór.Key != ConsoleKey.X);
        }
    }
}

atmal
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 913
1

Zmieniasz do-while na while.

Kopiuj
Wybór = Console.ReadKey();
while(Wybór.Key != ConsoleKey.X)
{
	//... Tak samo jak w do-while
}

BTW - Nie używaj polskich nazw

Tomasz De
  • Rejestracja: dni
  • Ostatnio: dni
0

Dzięki wielkie, działa.
Pozdrawiam!

T7
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Dokładnie.

Do-While wykonuję się przynajmniej raz, po czym następuje sprawdzenie czy powinien kontynuować wywołania.

While takie sprawdzenie ma jeszcze przed wejściem do metody - więc jeżeli warunek nie jest spełniony to nie jest wykonywana w ogóle.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.