/// <summary> /// 乘法 /// </summary> /// <param name="digitID"></param> /// <param name="operandID"></param> /// <returns></returns> private List <int> GetMultiplicationInstance() { List <int> instance = null; int product = 0; int min = (int)Mathf.Pow(10, (int)CurCategoryInstance.digitID); int max = (int)Mathf.Pow(10, (int)CurCategoryInstance.digitID + 2); do { instance = GetInstance(min + 1, max, (int)CurCategoryInstance.operandID); product = GetProduct(instance); }while (CanDividedByTen(instance) || HasInstance(instance) || IsRepeat(instance) || !CanMultiply(instance, min)); checkList.Add(instance); instance = Shuffle(instance); instance.Add(product); return(instance); }
/// <summary> /// 加法 /// </summary> /// <param name="digitID"></param> /// <param name="operandID"></param> /// <returns></returns> private List <int> GetAdditionInstance() { List <int> instance = null; int sum = 0; int min = (int)Mathf.Pow(10, (int)CurCategoryInstance.digitID + 1); int max = (int)Mathf.Pow(10, (int)CurCategoryInstance.digitID + 2); do { instance = GetInstance(min, max, (int)CurCategoryInstance.operandID); sum = GetSum(instance); }while (CanDividedByTen(instance) || HasInstance(instance) || IsRepeat(instance)); checkList.Add(instance); instance = Shuffle(instance); instance.Add(sum); return(instance); }
/// <summary> /// 减法 /// </summary> /// <param name="digitID"></param> /// <param name="operandID"></param> /// <returns></returns> private List <int> GetSubtractionInstance() { List <int> instance = null; int difference = 0; int min = (int)Mathf.Pow(10, (int)CurCategoryInstance.digitID + 1); int max = (int)Mathf.Pow(10, (int)CurCategoryInstance.digitID + 2); do { instance = GetInstance(min, max, (int)CurCategoryInstance.operandID); }while (CanDividedByTen(instance) || HasInstance(instance) || IsRepeat(instance) || !CanMinus(instance, min, out difference)); checkList.Add(instance); int minuend = instance[0]; instance.RemoveAt(0); instance = Shuffle(instance); instance.Insert(0, minuend); instance.Add(difference); return(instance); }