Çözüldü C# kodunda else if çalışıyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

koslowin

Hectopat
Katılım
11 Kasım 2020
Mesajlar
130
Yer
Gaziantep
Daha fazla  
Cinsiyet
Erkek
C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RegisterLoginUygulamasi
{
    class Program
    {
        static void Main(string[] args)
        {
        
            Console.WriteLine("Lütfen sistemde kullanılacak bir kullanıcı adı giriniz.");
            object registerKullaniciAdi = Console.ReadLine();

            Console.WriteLine("Lütfen sistemde kullanılacak bir şifre giriniz.");
            object registerSifre = Console.ReadLine();

            Console.WriteLine("Tebrikler sisteme başarıyla kayıt oldunuz!");

            while (true)
            {
                Console.WriteLine("Giriş yapmak için kullanıcı adınızı giriniz.");
                object loginKullaniciadi = Console.ReadLine();

                Console.WriteLine("Giriş yapmak için şifrenizi giriniz.");
                object loginSifre = Console.ReadLine();

                if (loginKullaniciadi == registerKullaniciAdi && loginSifre == registerSifre)
                {
                    Console.WriteLine("Tebrikler sisteme giriş yaptınız!");
                    Console.ReadLine();
                    break;
                }

                else if(loginKullaniciadi != registerKullaniciAdi && loginSifre != registerSifre)
                {
                    Console.WriteLine("Kullanıcı adı veya şifre yanlış lütfen tekrar deneyiniz.(lütfen enter tuşuna basıp devam ediniz.)");
                    Console.ReadLine();
                }
            }

        




        }
    }
}
Arkadaşlar burada register olduktan sonra ne yaparsam yapayım else if çalışıyor. Kodlamada yeniyim bilmediğim, unuttuğum bir şey olabilir. Sorunu yazarsanız mutlu olurum.
 
Son düzenleyen: Moderatör:
Çözüm
Object kısımları string yap ya da if kısmında. Equals ile karşılaştırma yap. Ayrıca else if kısmındaki koşula gerek yok. Direk else yazmalısın. Kullanıcı ya login olur ya da olmaz. Başka bir ihtimali yok.

While ile bir alakası yok arkadaşlar. Login olana kadar while döngüsü çalışacak. Login olduğu anda while döngüsünden çıkacak. Arkadaş login sistemini simüle etmiş.
Uzun süredir kod yazmadım ama genel olarak bir öneri verebilirim: Sorunun kaynağını bulmak için elseif'in içine karşılaştırdığın değerleri Console.WriteLine ile yazıp hangileri beklediğin gibi değil/neden o kısma giriyor çözebilirsin.
 
Object kısımları string yap ya da if kısmında. Equals ile karşılaştırma yap. Ayrıca else if kısmındaki koşula gerek yok. Direk else yazmalısın. Kullanıcı ya login olur ya da olmaz. Başka bir ihtimali yok.

While ile bir alakası yok arkadaşlar. Login olana kadar while döngüsü çalışacak. Login olduğu anda while döngüsünden çıkacak. Arkadaş login sistemini simüle etmiş.
 
Son düzenleyen: Moderatör:
Çözüm
Object kısımları string yap ya da if kısmında. Equals ile karşılaştırma yap. Ayrıca else if kısmındaki koşula gerek yok. Direk else yazmalısın. Kullanıcı ya login olur ya da olmaz. Başka bir ihtimali yok.

While ile bir alakası yok arkadaşlar. Login olana kadar while döngüsü çalışacak. Login olduğu anda while döngüsünden çıkacak. Arkadaş login sistemini simüle etmiş.

Evet objecti string yaptım ve else if yerine else yaptım sorun çözüldü sağ ol.
 
Çok bilgiye sahip değilim fakat "girildi" diye boolean tarzında bir değişken tanımlayıp false ata, while döngüsü koşuluna "!girildi" diye verip, kullanıcı başarılı şekilde bir giriş yaptıktan sonra bu değişkeni true yaparsan sorun çözülür diye düşünüyorum. Yanlışım varsa düzeltin.
 

Yeni konular

Geri
Yukarı