Mit rontottam el ebben a kódban? C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace hazifeladat2
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Kérem válasszon az alábbi lehetőségek közül: k, p, o");
string lehet = Console.ReadLine();
string k = "Kő";
string o = "Olló";
string p = "Papír";
if (lehet == "k")
{
Console.WriteLine("Kő");
}
if (lehet == "p")
{
Console.WriteLine("Papír");
}
if (lehet == "o")
{
Console.WriteLine("Olló");
}
else if(lehet != k || lehet != o ||lehet != p)
{
Console.WriteLine("Nem megfelelő karakter!");
}
Console.ReadKey();
}
}
}
Most kezdtem programozást tanulni. Egyszerű kő papír olló játék. De amint beírom azt hogy k vagy p, egyből kiírja azt is, hogy nem megfelelő karakter. Pedig elv az benne van a kivételekben. Az o-nál érdekes mód nem írja ki. Mi itt a probléma?
Persze, hogy kiírja, hogy nem megfelelő karakter, mivel az utolsó feltételben vagy kapcsolat van és helyett! És persze, hogy az o-ra nem írja ki, mert ott az else if.
else if(lehet != k && lehet != o && lehet != p)
Azaz, ha sem k-val, sem o-val, sem p-vel nem egyenlő, akkor írja ki. És akkor az else if sem kell, csak sima if.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!