private void ResolucionPeriodicoMixto() { if (paso == 20) { lbExplicacion.Text += "\nComenzamos construyendo un número con la parte entera, el anteperiodo y el periodo. "; label1.Show(); string parteenteras = tbFilas.Text.Substring(0, tbFilas.Text.IndexOf(',')); parteentera = Int64.Parse(parteenteras); Racional numeror = (Racional)(numero); anteperiodo = numeror.AntePeriodo(); string anteperiodos = anteperiodo.ToString(); periodo = numeror.Periodo(); string periodos = periodo.ToString(); string aux = parteenteras + anteperiodos + periodos; auxi1 = Int64.Parse(aux); label1.Text = aux; paso++; } else if (paso == 21) { lbExplicacion.Text += "\nAhora construimos otro número con la parte entera seguida del anteperiodo y se lo restamos al número contruido anteriormente, obteniendo así el numerador de la fracción:"; string aux = parteentera.ToString() + anteperiodo.ToString(); auxi2 = Int64.Parse(aux); numerad = auxi1 - auxi2; label1.Text += " - " + aux + " = " + numerad.ToString(); paso++; } else if (paso == 22) { lbExplicacion.Text += "\nPara obtener el denominador de la fracción, construimos un número compuesto por tantos nueves como digitos tenga el periodo, y tantos ceros como digitos tenga el anteperiodo:"; string denominads = ""; for (int i = 0; i < periodo.ToString().Length; i++) { denominads += "9"; } for (int i = 0; i < anteperiodo.ToString().Length; i++) { denominads += "0"; } denominad = Int64.Parse(denominads); label1.Text += "\n Denominador = " + denominads; paso++; } else if (paso == 23) { lbExplicacion.Text += "\nPor último construimos el racional simplificando numerador y denominador:"; label2.Show(); label2.Location = new Point(label1.Location.X, label1.Location.Y + label1.Height + 5); label2.Text = new Racional(numerad, denominad).ToString(); btContinuar.Hide(); lbExplicacion.Focus(); } }
/// <summary> /// /// CONVIERTE EL PERIODICO PURO EN RACIONAL, PASO A PASO /// /// </summary> /// private void ResolucionPeriodicoPuro() { if (paso == 10) { lbExplicacion.Text += "\nPara convertir el periodico puro en fracción, primero construimos un número compuesto por la parte entera y el periodo. A este número se le resta la parte entera, obteniendo así el numerador de la fracción:"; label1.Show(); string parteenteras = tbFilas.Text.Substring(0, tbFilas.Text.IndexOf(',')); Racional numeror = numero; string periodos = numeror.Periodo().ToString(); parteentera = Int64.Parse(parteenteras); periodo = Int64.Parse(periodos); string aux = parteenteras + periodos; long auxi = Int64.Parse(aux); numerad = auxi - parteentera; label1.Text = parteenteras + periodos + " - " + parteenteras + " = " + numerad.ToString(); paso++; } else if (paso == 11) { lbExplicacion.Text += "\nEl denominador de la fracción, es un número compuesto por tantos ' 9 ' como digitos tenga el periodo:"; string denominads = ""; for (int i = 0; i < periodo.ToString().Length; i++) { denominads += "9"; } label1.Text += "\n" + denominads; denominad = Int64.Parse(denominads); paso++; } else if (paso == 12) { lbExplicacion.Text += "\nPor último, simplificando el numerador y denominador, obtenemos el racional equivalente al decimal periodico puro introducido."; label2.Show(); label2.Location = new Point(label1.Location.X, label1.Location.Y + label1.Height + 5); label2.Text = new Racional(numerad, denominad).ToString(); btContinuar.Hide(); } }