public static CaptchaNumbers HideData(CaptchaNumbers res) { Random random = new Random(Guid.NewGuid().GetHashCode()); List <int> temp = new List <int> { 0, 1, 2 }; int r_convert = temp[random.Next(0, temp.Count)]; switch (r_convert) { case 0: res.num1 = "(" + ConvertToWords.ToWords(Convert.ToInt32(res.num1)) + ")"; break; case 1: res.num2 = "(" + ConvertToWords.ToWords(Convert.ToInt32(res.num2)) + ")"; break; case 2: res.sum = "(" + ConvertToWords.ToWords(Convert.ToInt32(res.sum)) + ")"; break; } temp.Remove(r_convert); int r_encode = temp[random.Next(temp.Count)]; switch (r_encode) { case 0: res.val = res.num1; res.num1 = "blank"; break; case 1: res.val = res.num2; res.num2 = "blank"; break; case 2: res.val = res.sum; res.sum = "blank"; break; } return(res); }
public static string ToWords(int number) { string statement = ""; List <int> stack = new List <int>(); { int position = 0; while (number != 0 || position == 0) { int mod = (number % 10); stack.Add(mod); number = number / 10; position++; } } string tempstatement = ""; for (int index = 0; index < stack.Count; index++) { int num = stack[index]; if (index == 0 && num == 0 && stack.Count > 1) //skip if num is 0 and stack count is > 0 { continue; } if (index == 1 && num == 1)//check for teen { tempstatement = ConvertToWords.ToWords(index, stack[index - 1]); break; } if (index > 0) { index++; } int power = Convert.ToInt32(Math.Pow(10, index)); int multiples = (power != 0 ? power : 1); int t = num * multiples; tempstatement = ConvertToWords.ToWords(index, num) + " " + tempstatement; } statement += tempstatement; return(statement.Trim()); }