-
2020-04-18/19 [1차원 배열 활용]C#/과제 2020. 4. 20. 01:12123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Serialization;namespace practice009{class Character{public string name;public Recipe[] arrRecipe; //소지중인 레시피들public int recipeindex = 0;public Recipe[] arrCookRecipe; // 요리가능 레시피public int arrCoookRecipeindex = 0; // 배열에 쓸 인트public int foundrecipeindex = 0;public FoodIngredient[] arrmaterial;public int materialindex;public FoodIngredient[] myarrmaterial;public Character(string name){this.name = name;this.arrRecipe = new Recipe[6];this.arrCookRecipe = new Recipe[6];this.arrmaterial = new FoodIngredient[6];this.myarrmaterial = new FoodIngredient[6];}public void GetRecipe(Recipe recipe){this.arrRecipe[recipeindex++] = recipe;Console.WriteLine("{0}을 습득했습니다.", recipe.GetName());}public void PrintGetRecipe(){Console.WriteLine("***소지중인 레시피***");foreach (Recipe recipe in arrRecipe){if (recipe != null){}else{Console.WriteLine("[ ]");}}}public void UseRecipe(string name) // 우선 같은 값 찾기{Recipe foundrecipe = null;{if (this.arrRecipe != null){if (this.arrRecipe[i].name == name){Console.WriteLine("검색: {0} / 검색어 : {1} / 일치", this.arrRecipe[i].name, name);Console.WriteLine("--->> 동일한 레시피 발견");Console.WriteLine("{0}가 사용됩니다.", this.arrRecipe[i].name);foundrecipe = this.arrRecipe[i];this.arrCookRecipe[arrCoookRecipeindex++] = foundrecipe;this.arrRecipe[i] = null;arrCoookRecipeindex++;break;}else{Console.WriteLine("검색: {0} / 검색어 : {1} / 불일치", this.arrRecipe[i].name, name);}}}}public void PrintCookRecipe(){Console.WriteLine("***요리가능레시피***");{if (this.arrCookRecipe[i] != null){Console.WriteLine(this.arrCookRecipe[i].name);}else{Console.WriteLine("[ ]");}}}public void PrintRecipeInfo(string name){// 배운 배열 요소 이름name 같은거 찾아내기Recipe foundRecipe = null;foreach (var recipe in this.arrCookRecipe){if (this.arrCookRecipe != null){{foundRecipe = recipe;break;}}}Console.WriteLine("*** 선택한 레시피 재료정보***");Console.WriteLine(foundRecipe.GetName());foreach (string ingredientname in foundRecipe.arrFoodIngredinets)Console.WriteLine(ingredientname);}public void Cook(string name){Recipe foundRecipe = null;foreach (Recipe recipe in this.arrCookRecipe){if (recipe != null){foundRecipe = recipe;}}foreach (FoodIngredient material in this.arrmaterial){if(material != null){foreach (FoodIngredient mat in this.myarrmaterial){if (mat != null){Console.WriteLine("필요: {0}x{1}, 소지: {2}x{3}", material.name, material.amount, mat.name, mat.amount);break;}}}}}}}http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
한 내용들은 쓰겠지만 머리굴려가며 응용이 안된다..
'C# > 과제' 카테고리의 다른 글
2020-04-23 [JSON 활용 및 초반 과정 및 생각 정리] (0) 2020.04.23 객체지향 3요소 / 5 원칙 둘러보고 간단 서술 (0) 2020.04.23 2020-04-15 [인벤토리 구축] (0) 2020.04.15 2020-04-14 (1) 2020.04.14 연습 [2020-04-12] (2) 2020.04.12