메서드 연습 1
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study0121
{
class App
{
int heroMaxHp = 10;
int heroHp;
string heroName = "홍길동";
//생성자
public App()
{
heroHp = heroMaxHp;
HitHero(3);
HealHero(1);
HealHero(1);
HealHero(1);
HealHero(1);
HitHero(100);
//홍길동이 3 만큼 피해를 입었습니다. (7/10)
//홍길동이 1만큼 회복 되었습니다 (8/10)
//홍길동이 1만큼 회복 되었습니다 (9/10)
//홍길동이 1만큼 회복 되었습니다 (10/10)
//더이상 치유 할수 없습니다.
//홍길동이 100 만큼 피해를 입었습니다. (0/10)
//홍길동이 죽었습니다.
}
void HitHero(int damage)
{
heroHp = heroHp - damage;
if(heroHp >= 0)
{
Console.WriteLine("홍길동이 {0}만큼 피해를 입었습니다. ({1}/{2})", damage, heroHp, heroMaxHp);
}
else
{
heroHp = 0;
Console.WriteLine("홍길동이 {0}만큼 피해를 입었습니다. ({1}/{2})", damage, heroHp, heroMaxHp);
Console.WriteLine("홍길동이 죽었습니다.");
}
}
void HealHero(int heal)
{
heroHp = heroHp + heal;
if(heroHp <= 10)
{
Console.WriteLine("홍길동이 {0}만큼 회복 되었습니다 ({1}/{2})", heal, heroHp, heroMaxHp);
}
else
{
Console.WriteLine("더이상 치유 할수 없습니다.");
}
}
}
}
메서드 연습 2
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study0121
{
class App
{
int hp = 10;
int maxHp = 10;
bool isDie = false;
//생성자
public App()
{
Hit(3);
Hit(3);
Hit(3);
Hit(3);
Hit(3);
Hit(3);
Hit(3);
Hit(3);
Hit(3);
Hit(3);
}
void Hit(int damage)
{
if (hp <= 0) return;
hp = hp - damage;
if(hp > 0)
{
Console.WriteLine("피해를 받았습니다. {0}/{1}", hp, maxHp);
}
else
{
hp = 0;
Console.WriteLine("피해를 받았습니다. {0}/{1}", hp, maxHp);
Console.WriteLine("죽었습니다.");
}
}
}
}
메서드 연습 3
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study0121
{
class App
{
enum MenuType
{
CHARACTER,
SHOP,
PET
}
//생성자
public App()
{
Console.WriteLine("App");
SelectMenu(MenuType.SHOP);
SelectMenu(MenuType.CHARACTER);
}
void SelectMenu(MenuType myMenuType)
{
if (myMenuType == MenuType.CHARACTER)
Console.WriteLine("캐릭터 메뉴를 선택 했습니다.");
else if (myMenuType == MenuType.PET)
Console.WriteLine("펫 메뉴를 선택 했습니다.");
else
Console.WriteLine("상점 메뉴를 선택 했습니다.");
}
}
}
메서드 연습 4
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study0121
{
class App
{
float nextExp = 115f;
float myExp = 89.5f;
int maxLevel = 2;
int level = 1;
int maxExp = 115;
//생성자
public App()
{
Console.WriteLine("App");
GetExp(19f);
GetExp(33.14f);
GetExp(33.14f);
}
void GetExp(float getExp)
{
if (level >= maxLevel)
Console.WriteLine("최대 레벨에 도달하였습니다.");
else
{
if (myExp + getExp < maxExp)
{
myExp = myExp + getExp;
float per = myExp / maxExp * 100;
Console.WriteLine("경험치({0})를 획득 했습니다. ({1}/{2}) {3:0}%", getExp, myExp, maxExp, per);
}
else
{
myExp = 115f;
float per = myExp / maxExp * 100;
Console.WriteLine("경험치({0})를 획득 했습니다. ({1}/{2}) {3}%", getExp, myExp, maxExp, per);
Console.WriteLine("레벨업을 했습니다.");
level = level + 1;
Console.WriteLine("{0}레벨이 되었습니다.", level);
}
}
}
//경험치(19)를 획득 했습니다. (108.50/115) 94%
//경험치(33.14)를 획득 했습니다. (115/115) 100%
//레벨업을 했습니다.
//2레벨이 되었습니다.
//최대 레벨에 도달 했습니다.
}
}
'c# > 복습' 카테고리의 다른 글
(재연습) 시즈탱크(탱크모드/공성모드) (0) | 2023.01.21 |
---|---|
(재연습)클래스 연습 (0) | 2023.01.21 |
(재연습)for문 연습 고블린 사냥 (0) | 2023.01.21 |
(재연습) 별(*)찍기 & 역 별(*)찍기 (0) | 2023.01.21 |
(재연습)구구단&2중 for문 구구단 (0) | 2023.01.21 |