동구의_C# & Unity_개발일지
2024.01.12 내일배움캠프 15일차 TIL C#_ProGramming(알고리즘, C# 심화) 본문
알고리즘 코드카타 2일차
두 수의 곱
문제 설명
정수 num1, num2가 매개변수 주어집니다. num1과 num2를 곱한 값을 return 하도록 solution 함수를 완성해주세요.
using System;
public class Solution {
public int solution(int num1, int num2) {
int answer = num1 * num2;
return answer;
}
}
팀 과제 던전 게임 만들기
using System.Reflection.Emit;
using System.Xml.Linq;
namespace spartaTextDungeon.finalFile
{
internal class Program
{
static Player? _player;
static List<Monster>? _monsters;
static void Main(string[] args)
{
GameDataSetting();
PrintStartLogo();
StartMenu();
}
private static void GameDataSetting()
{
_player = new Player("Chad", "전사", 100, 100, 10, 5, 1500, 1);
List<Monster> createMonster = new List<Monster>{
new Monster("Lv.2 미니언", 15, 5, 6,0),
new Monster("Lv.5 대포미니언", 25, 8, 10,1),
new Monster("LV.3 공허충", 10, 3, 8,2) };
_monsters = RandomMonster(createMonster);
}
private static List<Monster> RandomMonster(List<Monster> monsters)
{
List<Monster> saveMonster = new List<Monster>();
Random random = new Random();
int rndcnt = random.Next(1, 5);
for (int i = 0; i < rndcnt; i++)
{
int rndIndex = random.Next(0, monsters.Count);
foreach (Monster monster in monsters)
{
if (rndIndex == monster.CheckIndex)
{
saveMonster.Add(monster);
break;
}
}
}
return saveMonster;
}
private static void StartMenu()
{
Console.Clear();
Console.WriteLine($"◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆");
Console.WriteLine($"스파르타 마을에 오신 여러분 환영합니다.");
Console.WriteLine($"이곳에서 던전으로 들어가기 전 활동을 할 수 있습니다.");
Console.WriteLine($"◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆");
Console.WriteLine();
Console.WriteLine("1.상태 보기");
Console.WriteLine("2.전투 시작");
Console.WriteLine("원하시는 행동을 입력해주세요.");
Console.WriteLine(">>");
switch (CheckVailedInput(1, 2))
{
case 1:
State();
break;
case 2:
Battle();
break;
}
}
private static void Battle()
{
}
private static void State()
{
Console.Clear();
Console.WriteLine("상태보기"); //글씨 색 넣기 추가
Console.WriteLine("캐릭터의 정보가 표시됩니다.");
Console.WriteLine();
Console.WriteLine
($" LV. {_player.Level}\n " +
$"{_player.Name} ( {_player.Class} )\n " +
$"공격력 : {_player.Attack}\n " +
$"방어력 : {_player.Def}\n " +
$"체 력 : {_player.HP}\n " +
$"Gold : {_player.Gold}");
Console.WriteLine("");
Console.WriteLine("0. 나가기");
Console.WriteLine("");
Console.Write("원하시는 행동을 입력 해주세요.\n>>");
switch (CheckVailedInput(0, 0))
{
case 0:
StartMenu();
break;
}
}
private static int CheckVailedInput(int min, int max)
{
int saveIndex;
while (true)
{
string input = Console.ReadLine();
if (string.IsNullOrWhiteSpace(input))
{
Console.WriteLine("잘못된 입력입니다");
continue;
}
if (!int.TryParse(input, out saveIndex))
{
Console.WriteLine("잘못된 입력입니다");
continue;
}
if (saveIndex < min || saveIndex > max)
{
Console.WriteLine("잘못된 입력입니다");
continue;
}
break;
}
return saveIndex;
}
static void PrintStartLogo()
{
Console.WriteLine($"▄████████ ▄███████▄ ▄████████ ▄████████ ███ ▄████████\n" +
$"███ ███ ███ ███ ███ ███ ███ ███ ▀█████████▄ ███ ███\n" +
$"███ █▀ ███ ███ ███ ███ ███ ███ ▀███▀▀██ ███ ███\n" +
$"███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▀ ███ ███\n" +
$"▀███████████ ▀█████████▀ ▀███████████ ▀▀███▀▀▀▀▀ ███ ▀███████████\n" +
$" ███ ███ ███ ███ ▀███████████ ███ ███ ███\n" +
$" ▄█ ███ ███ ███ ███ ███ ███ ███ ███ ███\n" +
$"▄████████▀ ▄████▀ ███ █▀ ███ ███ ▄████▀ ███ █▀\n" +
$"\n" +
$"████████▄ ███ █▄ ███▄▄▄▄ ▄██████▄ ▄████████ ▄██████▄ ███▄▄▄▄\n" +
$"███ ▀███ ███ ███ ███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███▀▀▀██▄\n" +
$"███ ███ ███ ███ ███ ███ ███ █▀ ███ █▀ ███ ███ ███ ███\n" +
$"███ ███ ███ ███ ███ ███ ▄███ ▄███▄▄▄ ███ ███ ███ ███\n" +
$"███ ███ ███ ███ ███ ███ ▀▀███ ████▄ ▀▀███▀▀▀ ███ ███ ███ ███\n" +
$"███ ███ ███ ███ ███ ███ ███ ███ ███ █▄ ███ ███ ███ ███\n" +
$"███ ▄███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███\n" +
$"████████▀ ████████▀ ▀█ █▀ ████████▀ ██████████ ▀██████▀ ▀█ █▀\n" +
$"================================================================================\n" +
$" PRESS ANYKEY TO START \n" +
$"================================================================================\n");
Console.ReadKey();
}
}
}
지금 까지 팀원들이 작성한 코드를 한번 병합해봤다!
다행이 운이좋게? 실행은 잘 된다!
이젠 주말동안 갈아서 필수 부분을 완성만 하면...^^ㅏㅏ
'C#' 카테고리의 다른 글
2024.01.16 내일배움캠프 17일차 TIL C#_ProGramming(알고리즘, C# 심화) (0) | 2024.01.16 |
---|---|
2024.01.15 내일배움캠프 16일차 TIL C#_ProGramming(알고리즘, C# 심화) (0) | 2024.01.15 |
2024.01.11 내일배움캠프 14일차 TIL C#_ProGramming(알고리즘, C# 심화) (0) | 2024.01.11 |
2024.01.10 내일배움캠프 13일차 TIL C#_ProGramming(알고리즘, C# 심화) (0) | 2024.01.10 |
2024.01.09 내일배움캠프 12일차 TIL C#_ProGramming(알고리즘, C# 심화) (0) | 2024.01.09 |