C#
[이것이 C#이다. 3판] Chapter 05 코드의 흐름 제어하 연습문제
돌맹96
2023. 7. 19. 23:33
728x90
반응형
01 다음과 같은 결과를 출력하는 프로그램을 for 문을 이용하여 작성하세요. 규칙은 첫 번째 줄에 별 1개, 두번째 줄에 별 2개, 세 번째 줄에 별 3개... 이런 식으로 별 5개가 찍힐 때까지 반복합니다.(힌트 : for 문 블록 안에 for 문 블록을 넣으세요).
for(int i = 0; i < 5; i++)
{
for(int j = 0; j <= i; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
02 다음과 같은 결과를 출력하는 프로그램을 for 문을 이용하여 작성하세요.
namespace Test05
{
internal class Program
{
static void Main(string[] args)
{
for(int i = 0; i < 5; i++)
{
for(int j = i; j < 5; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
}
}
}
03 1번과 2번을 for 문 대신 while문과 do문으로 바꿔서 각각 작성하세요.
namespace Test05
{
internal class Program
{
static void Main(string[] args)
{
int i = 0;
while (i < 5)
{
int j = i;
do
{
Console.Write("*");
j++;
}while (j < 5) ;
i++;
Console.WriteLine();
}
}
}
}
2번만 while과 do를 섞어서 만들었다.
04 다음과 같이 사용자로부터 입력받은 횟수만큼 별을 반복 출력하는 프로그램을 작성하세요. 단, 입력받은 수가 0보다 작거나 같을 경우 '0보다 같거나 작은 숫자는 사용할 수 없습니다.'라는 메시지를 띄우고 프로그램을 종료합니다.
namespace Test05
{
internal class Program
{
static void Main(string[] args)
{
Console.Write("반복 횟수를 입력하세요.");
string input = Console.ReadLine();
int Int_input = int.Parse(input);
if(Int_input < 0)
{
Console.WriteLine("0보다 같거나 작은 수는 사용할 수 없습니다.");
return;
}
else
{
for (int i = 0; i < Int_input; i++)
{
for (int j = 0; j <= i; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
}
}
}
}
05 다음 Fibonacci 클래스의 GetNumber() 메소드에서 switch 문을 switch 식으로 변경하세요.
switch 문
namespace Test05
{
internal class Program
{
public static long GetNumber(long index)
{
long result = 0;
switch(index)
{
case 0:
result = 0;
break;
case 1:
result = 1;
break;
default:
result = GetNumber(index - 1) + GetNumber(index - 2);
break;
}
return result;
}
}
}
switch 식
namespace Test05
{
internal class Program
{
public static long GetNumber(long index) =>
index switch
{
0 => 0,
1 => 1,
_ => GetNumber(index - 1) + GetNumber(index - 2),
};
}
}
728x90
반응형