Hightempler.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study04
{
public class Hightempler
{
public Hightempler()
// 생성자
{
Console.WriteLine("하이템플러가 생성됩니다.");
}
}
}
Archons.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study04
{
public class Archons
{
public Archons()
// 생성자
{
Console.WriteLine("아칸이 생성되었습니다.");
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study04
{
class App
{
public App()
{
Console.WriteLine("2020-09-25\n");
Hightempler hightempler1 = new Hightempler();
Hightempler hightempler2 = new Hightempler();
Archons archons = this.CreateArchons(hightempler1, hightempler2);
Console.WriteLine(archons);
}
public Archons CreateArchons(Hightempler hightempler1, Hightempler hightempler2)
{
hightempler1 = null;
hightempler2 = null;
return new Archons();
}
}
}
Champion.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study04
{
public class Champion
{
public Champion()
// 생성자
{
Console.WriteLine("1성급 챔피언이 생성되었습니다.\n");
}
}
}
UpgradedChampion.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study04
{
public class UpgradedChampion
{
public UpgradedChampion()
// 생성자
{
Console.WriteLine("2성급 챔피언이 생성되었습니다.");
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Study04
{
class App
{
public App()
{
Console.WriteLine("2020-09-25\n");
Champion champ1 = new Champion();
Champion champ2 = new Champion();
Champion champ3 = new Champion();
UpgradedChampion upgradedChampion = this.Upgrade(champ1, champ2, champ3);
Console.WriteLine(upgradedChampion);
}
public UpgradedChampion Upgrade(Champion champ1, Champion champ2, Champion champ3)
{
champ1 = null;
champ2 = null;
champ3 = null;
return new UpgradedChampion();
}
}
}
BaseItem.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class BaseItem
{
public string baseItemName;
public BaseItem(string baseItemName)
// 생성자
{
this.baseItemName = baseItemName;
Console.WriteLine("재료아이템<{0}>을 획득했습니다.",baseItemName);
}
}
}
Product.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class Product
{
public string productName;
public Product(string productName)
// 생성자
{
this.productName = productName;
Console.WriteLine("<{0}>아이템이 완성되었습니다.", productName);
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class App
{
public App()
{
BaseItem baseItem1 = new BaseItem("철괴");
BaseItem baseItem2 = new BaseItem("칼손잡이");
BaseItem baseItem3 = new BaseItem("칼집");
Console.WriteLine("==========================================");
Product product = this.MakeProduct(baseItem1, baseItem2, baseItem3);
Console.WriteLine(product.productName);
}
public Product MakeProduct(BaseItem baseItem1, BaseItem baseItem2, BaseItem baseItem3)
{
Console.WriteLine("보유하고 있는 <{0}>, <{1}>, <{2}>을 사용합니다.", baseItem1.baseItemName, baseItem2.baseItemName, baseItem3.baseItemName);
baseItem1 = null;
baseItem2 = null;
baseItem3 = null;
return new Product("철검");
}
}
}
Weapon.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class Weapon
{
public string weaponName;
public Weapon(string weaponName)
// 생성자
{
this.weaponName = weaponName;
Console.WriteLine("<{0}> 아이템을 보유하고 있습니다.", weaponName);
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class App
{
public App()
{
Weapon weapon = new Weapon("바스타드 소드");
Enhance(weapon);
}
public void Enhance(Weapon weapon)
{
bool isEnhanced = false;
Random random = new Random();
var enhancedPercent = random.Next(0, 101);
int enhancedCount = 1;
Console.WriteLine("{0} 의 강화를 시작합니다.\n", weapon.weaponName);
Console.WriteLine("해당아이템은 최대 5회 강화가 가능합니다.\n");
Console.Write("연속으로 실행할 강화횟수를 입력해주세요. (1~5) : ");
string enhancedNum1 = Console.ReadLine();
int enhancedNum2 = Convert.ToInt32(enhancedNum1);
Console.WriteLine("강화는 85%의 확률로 성공합니다.\n");
for(int i = 1; i <= enhancedNum2; i++)
{
if (enhancedPercent <= 85)
{
isEnhanced = true;
Console.WriteLine("{0} 강화성공! +{1}{0}", weapon.weaponName, enhancedCount + i);
Console.WriteLine("===========================================\n");
}
}
}
}
}
Monster.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class Monster
{
public string monsterName;
public int monsterHp;
public Monster()
{
}
}
}
Player.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class Player
{
public string playerName;
public int playerHp;
public int playerPower;
public Player()
{
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class App
{
public App()
{
Player player = new Player();
player.playerName = "홍길동";
player.playerHp = 100;
player.playerPower = 40;
Console.WriteLine("<{0}>님이 접속했습니다.", player.playerName);
Console.WriteLine("============================================");
Console.WriteLine("플레이어의 정보를 확인합니다.");
CheckPlayer(player);
Console.WriteLine("============================================");
Monster monster = new Monster();
monster.monsterName = "골렘";
monster.monsterHp = 160;
Console.WriteLine("몬스터가 출현했습니다.");
Console.WriteLine("============================================");
Console.WriteLine("{0}이 몬스터의 정보를 확인합니다.", player.playerName);
CheckMonster(monster);
Console.WriteLine("============================================\n");
}
public void CheckMonster(Monster monster)
{
Console.WriteLine("<몬스터 정보>");
Console.WriteLine("이름 : {0}", monster.monsterName);
Console.WriteLine("체력 : ({0}/{0})", monster.monsterHp);
}
public void CheckPlayer(Player player)
{
Console.WriteLine("<플레이어 정보>");
Console.WriteLine("이름 : {0}", player.playerName);
Console.WriteLine("체력 : ({0}/{0})", player.playerHp);
Console.WriteLine("공격력 : {0}", player.playerPower);
}
}
}
Player.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class Player
{
public string characterName;
public int playerBasicHp;
public int playerBasicMp;
public int playerBasicPower;
public Player()
{
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class App
{
public string characterName;
public App()
{
Player player = new Player();
player.characterName = "홍길동";
player.playerBasicHp = 100;
player.playerBasicMp = 50;
player.playerBasicPower = 10;
Console.WriteLine("캐릭터가 생성됩니다.");
Console.WriteLine("캐릭터정보를 확인합니다.");
Console.WriteLine("============================================");
CheckCharacter(player);
}
public void CheckCharacter(Player player)
{
Console.WriteLine("<캐릭터 정보>");
Console.WriteLine("캐릭터명 : {0}", player.characterName);
Console.WriteLine("체력 : {0}/{0}", player.playerBasicHp);
Console.WriteLine("마나 : {0}/{0}", player.playerBasicMp);
Console.WriteLine("공격력 : {0}", player.playerBasicPower);
}
}
}
BaseItem.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class BaseItem
{
public string itemName;
public BaseItem(string itemName)
{
this.itemName = itemName;
}
}
}
Product.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class Product
{
public string productName;
public Product(string productName)
{
this.productName = productName;
if (productName == "얼어붙은 심장")
{
Console.WriteLine("{0} 아이템이 생성됩니다.", productName);
}
else if (productName == "쇼진의 창")
{
Console.WriteLine("{0} 아이템이 생성됩니다.", productName);
}
else if (productName == "수호천사")
{
Console.WriteLine("{0} 아이템이 생성됩니다.", productName);
}
else if(productName == "조합불가")
{
Console.WriteLine("아이템 조합이 불가능 합니다.");
}
}
}
}
App.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace HomeWork01
{
public class App
{
public App()
{
Console.WriteLine("보유 아이템 리스트");
Console.WriteLine("==========================================");
BaseItem item1 = new BaseItem("여신의 눈물");
BaseItem item2 = new BaseItem("쇠사슬 조끼");
BaseItem item3 = new BaseItem("B.F. 소드");
Console.WriteLine("아이템 1 : {0}", item1.itemName);
Console.WriteLine("아이템 2 : {0}", item2.itemName);
Console.WriteLine("아이템 3 : {0}", item3.itemName);
Console.WriteLine("==========================================");
Product product = this.CreateItem(item1, item2, item3);
}
public Product CreateItem(BaseItem item1, BaseItem item2, BaseItem item3)
{
Console.Write("조합할 아이템의 번호를 선택해주세요. (1 ~ 3): ");
string inputItemName1 = Console.ReadLine();
int inputItemNum1 = Convert.ToInt32(inputItemName1);
Console.Write("조합할 아이템의 번호를 선택해주세요. (1 ~ 3): ");
string inputItemName2 = Console.ReadLine();
int inputItemNum2 = Convert.ToInt32(inputItemName2);
if (inputItemNum1 == 1 && inputItemNum2 == 2)
{
Console.WriteLine("==========================================");
Console.WriteLine("{0} 아이템과 {1} 아이템을 조합합니다.", item1.itemName, item2.itemName);
Console.WriteLine("==========================================");
item1 = null;
item2 = null;
return new Product("얼어붙은 심장");
}
else if (inputItemNum1 == 1 && inputItemNum2 == 3)
{
Console.WriteLine("==========================================");
Console.WriteLine("{0} 아이템과 {1} 아이템을 조합합니다.", item1.itemName, item3.itemName);
Console.WriteLine("==========================================");
item1 = null;
item3 = null;
return new Product("쇼진의 창");
}
else if (inputItemNum1 == 2 && inputItemNum2 == 3)
{
Console.WriteLine("==========================================");
Console.WriteLine("{0} 아이템과 {1} 아이템을 조합합니다.", item2.itemName, item3.itemName);
Console.WriteLine("==========================================");
item2 = null;
item3 = null;
return new Product("수호천사");
}
else
{
Console.WriteLine("==========================================");
return new Product("조합불가");
}
}
}
}
결과화면
'C# > 과제' 카테고리의 다른 글
2020.09.29 과제 (0) | 2020.10.03 |
---|---|
2020.09.28 과제 (0) | 2020.09.28 |
2020.09.24 과제 (0) | 2020.09.24 |
2020.09.23 과제 (0) | 2020.09.23 |
2020.09.22 과제 (0) | 2020.09.22 |