C#/수업 과제
메서드 연습4
Game Client Lee Hwanguk
2023. 1. 4. 01:25
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static System.Net.Mime.MediaTypeNames;
namespace ConsoleApp4
{
class App
{
float nextExp = 115f;
float myExp = 89.5f;
int maxLevel = 2;
int level = 1;
public App()
{
Console.WriteLine("App");
GetExp(19f);
GetExp(33.14f); //경험치 획득, 레벨업, 최대레벨도달
GetExp(33.14f); //실행 X
}
//경험치(19)를 획득 했습니다. (108.50/115) 94%
//경험치(33.14)를 획득 했습니다. (115/115) 100%
//레벨업을 했습니다.
//2레벨이 되었습니다.
//최대 레벨에 도달 했습니다.
void GetExp(float getExp)
{
myExp = myExp + getExp;
float toLevelUp = (myExp / nextExp) * 100;
if (myExp <nextExp)
{
Console.WriteLine("경험치를 {0}획득했습니다. ({1}/{2}){3:0}%", getExp, myExp, nextExp, toLevelUp);
Console.WriteLine();
}
else if(myExp >= nextExp)
{
int levelUp=level++;
Console.WriteLine("경험치를 {0}획득했습니다. ({1}/{1})100%", getExp, nextExp);
Console.WriteLine("레벨업을 하였습니다. 레벨은 {0}입니다", maxLevel);
Console.WriteLine("최대 레벨에 도달하였습니다.");
Console.WriteLine();
if (levelUp == maxLevel)
{
Console.WriteLine("최대 레벨에 도달하였습니다. 더 이상 레벨업을 할 수 없습니다.");
Console.WriteLine();
}
}
}
}
}
#최대 레벨에 도달했지만 경험치 획득 문장이 계속 나온다
#최대레벨과 현재레벨이 같다면 경험치 획득이 뜨지 않아야한다