안녕하세요!
c#을 오늘부터 독학하고 있는 학생입니다.
구구단을 출력한 뒤에
종료하시겠습니까?라는 출력문 뒤에
Y를 누르면 반복문(while)을 종료하도록 하고싶은데용
일단 Y와 N외에 다른 문자가 눌린다면 "Y또는 N만 입력해주세요." 라는 문자가 나와야 하는데
출력이 안되고 다시 몇단을 출력하시겠습니까?로 돌아갑니당
두번째로
Y를 누르게 된다면
Y또만 N만 눌러주세요 라고 뜹니당...흑흑
핳..마구잡이로 짠 것 같네요ㅠㅠㅠ
잘 부탁 드립니다(_ _)
static void Main(string[] args)
{
string theEnd = "";
string x = "";
int i = 0;
while (theEnd != "Y") //theEnd변수에 는Y가 입력될 때 까지 돌아가는 반복문
{
Console.Clear();
Console.WriteLine("구구단 프로그램 입니다.");
Console.WriteLine("몇 단을 출력 하시겠습니까?");
try // 밑에 문장을 실행했을 때 에러가 나면 catch문으로 간다.
{
i = Convert.ToInt16(Console.ReadLine()); // 데이터를 받고 정수형으로 바꿔 변수 i에 저장한다.
}
catch // 에러(정수가 아닌 문자를 입력했을 때)가 났을 경우에 밑에 문장들이 출력된다.
{
Console.Write("입력이 잘 못 되셨습니다.");
Console.Write("숫자만 입력해 주세요.");
}
Console.WriteLine("< " + i + "단을 출력하겠습니다. >");
for (int y = 1; y < 10; y++) //구구단 반복문
{
Console.WriteLine(i + "*" + y + "=" + i * y);
}
Console.WriteLine("< 구구단 끝 >");
Console.WriteLine("");
Console.WriteLine("프로그램을 종료 하시겠습니까?(Y/N)");
x = Console.ReadLine();
if(x != "Y")
{
Console.WriteLine("Y또는 N만 입력해 주세요.");
}
if(x != "N")
{
Console.WriteLine("Y또는 N만 입력해 주세요.");
}
if (x == "Y")
{
theEnd = x;
}
}
}
}
}