Arama butonu
Bu konudaki kullanıcılar: 1 misafir
1
Cevap
1013
Tıklama
0
Öne Çıkarma
C'de if-else sorunu
D
7 yıl
Teğmen
Konu Sahibi

uğraştığım bir proje ödevinde if'ten sonraki else if'in içindeki ifade yanlış olsa dahi gerçekleştiriyor.
do
{
system("cls"); // ekranı temizleme
printf("toplanan parcaciklar:") ; // toplanan parçacıkları yazdırıyor
for(i=0;i<=sayac;i++)
printf("%c",toplananlar[i]);
for (i=0; i<n; i++) //labirent ekrana yazdırılıyor
{
printf("\n");
for(k=0;k<m;k++)
printf("%c",Lab[i][k]);
}
printf("\nHamleniz bekleniyor");
a = getch();
if(a=='M') //eğer sağ oka basılırsa
{

if(Lab[konumy][konumx+1]!='1') //eğer sağında duvar(1) yoksa
{
konumx++;
Lab[basy][basx]='G'; // Başlangıç noktasındaki X'in yerine G(iriş) atandı;

hamle=hamle+1;
if(Lab[konumy][konumx]=='K') //eğer sağında kara delik varsa
{
system("cls");
printf("\n\tKARADELIK\n");
break;
}
if(Lab[konumy][konumx]!='0') //eğer yolda atomaltı parçacık varsa
{
toplananlar[sayac]=Lab[konumy][konumx];
sayac++;
} // sadece yol varsa
if(hamle>1)
Lab[konumy][konumx-1]='0'; // geçtiği nokta 0 oldu
Lab[konumy][konumx]='X'; // gittiği noktayı X ile işaretliyor
}
else if (Lab[konumy][konumx+1]=='1') // eğer sağında duvar varsa
{
for (i=0; i<n; i++) //labirent ekrana yazdırılıyor
{
printf("\n");
for(k=0;k<m;k++)
printf("%c",Lab[i][k]);
}
}
}
else if(a=='K'); // Sol ok tuşuna basılırsa
{
printf("yanlıs burada");
sleep(1);
}

} while((konumy==cikisy&&konumx==cikisx)!=1);


Bu kod örneğinde sağa basılsa dahi sola bastığımda yapılması gereken komutları da yerine getiriyor. Herhangi bir sorun göremedim ben ama bilen arkadaşlar bir incelerlerse sevinirim.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



G
7 yıl
Yarbay

Şu şekilde kullanınca düzeliyor.



while (1)
{
a = _getch();

if (a == 77)
{
cout << "merhaba";
}
else if (a == 75) {
cout << "selam";
}
}





< Bu mesaj bu kişi tarafından değiştirildi Guest-DA02D78F4 -- 23 Aralık 2018; 18:43:9 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.