none
introducir varios valores en una misma textBox haciendo uso de condicionales repetitivas RRS feed

  • Pregunta

  • hola

    estoy practicando con algunos problemas básicos en C#

    recientemente hice uno mediante consola 
    en el cual yo introduzco un número que define el limite para las notas que deseo promediar
    y luego introduzco nota por nota
    al cumplir el tope de notas deseadas simplemente me da el promedio

    quiero hacer lo mismo mediante Windows Form haciendo uso de un textBox para introducir el tope de notas deseadas
    y otro para introducir nota por nota esto oprimiendo el botón ok  o enter para que almacene las notas actuales y solicite introducir la siguiente nota en la misma caja de texto

    normalmente se tiene un textBox para cada nota cuando se sabe que es un numero reducido

    pero en caso de tener 10 o 20 notas esto se vuelve tedioso  ya que se llena la aplicación con muchas cajas de texto

    se que esto se logra mediante una condicional repetitiva pero aún no se me ocurre como hacer para que luego de introducir la nota en la caja de texto y luego oprimir el botón ok o enter almacene la nota y me pida introducir la siguiente
    en la misma caja

    de antemano agradezco la ayuda que me puedan brindar 



    sábado, 21 de junio de 2014 19:49

Todas las respuestas

  • Hola:

     introducir una nota en donde? en un control textbox? las notas que tipo de dato es y de cuantos caracteres?...


    Saludos desde Monterrey, Nuevo León, México!!!

    sábado, 21 de junio de 2014 22:18
  • Hola:

     introducir una nota en donde? en un control textbox? las notas que tipo de dato es y de cuantos caracteres?...


    Saludos desde Monterrey, Nuevo León, México!!!


    son notas de materias de tipo float

    ejemplo: lenguaje 4.5, matemáticas 5.0, viologia 4.2, etc.

    se introducen solo los numeros equivalentes a las notas (calificaciones) de cada materia para obtener el promedio

    esto usando una misma caja de texto para todas las notas

    espero ahora si esté un poco más claro
    sábado, 21 de junio de 2014 22:28
  • Hola.

     De acuerdo solo un comentario, salvo que tengas una materia especial, se escribe Biología con "B" y no Viologia con "V" :-D

      Una pregunta mas, donde es que iras almacenando las notas, ¿Quieres que dentro de un mismo textbox insertar tantas notas como necesites o es que quieres insertar en el textbox y al dar enter se almacenen en un Array hasta llegar al limite?


    Saludos desde Monterrey, Nuevo León, México!!!

    sábado, 21 de junio de 2014 22:50
  • Hola.

     De acuerdo solo un comentario, salvo que tengas una materia especial, se escribe Biología con "B" y no Viologia con "V" :-D

      Una pregunta mas, donde es que iras almacenando las notas, ¿Quieres que dentro de un mismo textbox insertar tantas notas como necesites o es que quieres insertar en el textbox y al dar enter se almacenen en un Array hasta llegar al limite?


    Saludos desde Monterrey, Nuevo León, México!!!

    jajajaja si apenas estoy leyendo un libro de ortografia pss soy pesimo

    despues de introducir la calificación (nota) se alacenará en una variable de tipo float llamada "Acum" creada para almacenar el resultado de la suma de todas las notas
    y la caja de texto se limpiará para introducir la siguiente nota

    "Not" es la variable temporal para almacenar la nota que acabamos de introducir en la caja de texto mientras pasa a  se almacenada junto con las demás notas en "Acum"

    "Prom" será el promedio de las notas que es igual a "Acum/NumNot"

    "NumNot" es la cantidad de notas que deceamos introducir

    "contador" es la variable que se incrementará en cada siclo hásta que se cumpla la condicion establecida

    esto es lo que hasta ahora tengo:

     
    float Not, Acum=0, Prom;
                int contador=0,NumNot;
                NumNot = int.Parse(textBoxCanNot.Text);
                while (contador < NumNot)
                {
                    Not = float.Parse(textBoxNot.Text);
                    Acum = Acum + Not;
                    contador = contador + 1;
                    textBoxNot.Clear();

                }
                    Prom = Acum / contador;
                    MessageBox.Show("el promedio de las " + NumNot + " notas es: " + Prom);



    sábado, 21 de junio de 2014 23:25
  • Te dejo este ejemplo generalizado para que lo adaptes a tus necesidades:

    private contador = 0;	
    private void AcumularNotas()
    {
    	if(contador <= NumeroTotalDeNotas)
    	{
    		Acum = Acum + Not;
    		textBoxNot.Clear();
    		contador += 1;
    	}
    	else
    		MessageBox.Show("Se llego al limite de notas");
    }
    			
    private void textBoxNot_KeyDown(...)
    {
    	if(e.KeyData = Keys.enter)
    	{
    		AcumularNotas();
    	}
    }
    
    private void button1_Click(...)
    {
    	AcumularNotas();
    }


    Saludos desde Monterrey, Nuevo León, México!!!

    sábado, 21 de junio de 2014 23:46
  • no tengo  muy clara la sintaxis pero voy entendiendo

    veré que puedo hacer

    Gracias
    domingo, 22 de junio de 2014 0:01
  • De acuerdo, espero puedas descifrarlo.

    Saludos desde Monterrey, Nuevo León, México!!!

    domingo, 22 de junio de 2014 0:11
  • mmm si no estoy mal
    esto ya es crear una clase o algo así pero no veo como soluciona mi problema en una estructura condicional repetitiva

    quizas puedas explicarme un poco



    domingo, 22 de junio de 2014 1:55