Autor
|
Tema: Dejar de evaluar if? (Leído 4,462 veces)
|
Di3goXx
Desconectado
Mensajes: 9
|
Hola Di3goXx soy nuevo el el foro este mi primer tema con una pequeña duda en realidad soy medio newbie.. estoy primer ciclo en el instituto. Me dejaron una serie de ejercicios en c # bien faciles a decir verdad pero en uno tenia un problemita... que una ves que se cumpliera un if me dejara de evaluar los siguientes . les dejo el ejercicio Calcule la calificación de un alumno en base a 3 notas, validar el ingreso de notas entre 0 y 100, considerar la siguiente tabla: Promedio Calificación 90-100 A 80-89 B 70-79 C 50-69 D 0-49 Eeste es mi codigo hay 3 text box, 2 labels para salida de datos y un boton para calcular double n1, n2, n3,s; string fuerarango;
n1 = double.Parse(textBox1.Text); n2 = double.Parse(textBox2.Text); n3 = double.Parse(textBox3.Text);
if (n1 > 100 || n1 < 0) label4.Text = "Ud ingreso un(os) valores mayor a 100"; if(n2>100 || n2<0) label4.Text = "Ud ingreso un(os) valores mayor a 100"; if (n3>100 || n3<0) label4.Text = "Ud ingreso un(os) valores mayor a 100";
s = (n1 + n2 + n3) / 3;
if (s >= 90 && s <= 100)
label4.Text = "Su calificacion es : A";
if (s >= 80 && s <= 89)
label4.Text = "Su calificacion es : B";
if (s >= 70 && s <= 79)
label4.Text = "Su calificacion es : C";
if (s >= 50 && s <= 69)
label4.Text = "Su calificacion es : D";
if (s >= 0 && s <= 49)
label4.Text = "Su calificacion es : E";
label5.Text = " Usted obtuvo : " + s;
aca mi problema es q cuando se ingresa una nota mayor a 100 sale un label con fuera de rango en este punto es donde quiero q deje de evaluar los siguientes if s ya q si la suma es menor a 100 sale la calificacion igual. aver si me pueden ayudar aunque no se si se pueda hacer.....
|
|
|
En línea
|
|
|
|
$Edu$
Desconectado
Mensajes: 1.842
|
Ese codigo va en el evento del boton no? pues yo juntaria esos ifs para ver si son mayores a 100 es decir en vez de : if (n1 > 100 || n1 < 0) label4.Text = "Ud ingreso un(os) valores mayor a 100"; if(n2>100 || n2<0) label4.Text = "Ud ingreso un(os) valores mayor a 100"; if (n3>100 || n3<0) label4.Text = "Ud ingreso un(os) valores mayor a 100";
Lo haria asi: if (n1 > 100 || n1 < 0) || (n2>100 || n2<0) || (n3>100 || n3<0) { label4.Text = "Ud ingreso un(os) valores mayor a 100"; return;}
Y ahi ya te solucione la salida de tu procedimiento en el caso de que la condicion se cumpla.
|
|
|
En línea
|
|
|
|
Di3goXx
Desconectado
Mensajes: 9
|
Graxias $Edu$ me sirvio lo q recomendaste
|
|
« Última modificación: 2 Octubre 2011, 18:45 pm por Di3goXx »
|
En línea
|
|
|
|
$Edu$
Desconectado
Mensajes: 1.842
|
Pero entendiste porque? lo de los ifs, si una de las condiciones de los parentesis da verdadero, ya nos sirve y muestra el mensaje, y como el mensaje es el mismo para cualquiera sea la condicion que se cumpla, lo hicimos asi.
Lo del return, eso lo usas siempre que quieras salir de un procedimiento void, ya que ves que no le indicamos que devolver, porque no tiene q devolver nada por eso ponemos "return;" pero si fuera una funcion que devuelva un valor en string ahi tendriamos que hacer "return "Error";" por ejemplo. Saludos
|
|
|
En línea
|
|
|
|
Di3goXx
Desconectado
Mensajes: 9
|
Lo de los ifs si esta facil de entender lo del return aun no me lo explican pero creo q es para dar devolver el control al programa principal o algo asi y que en voids solo se pone return para acabar la ejecucion ...
|
|
|
En línea
|
|
|
|
$Edu$
Desconectado
Mensajes: 1.842
|
Mmm, has creado alguna funcion booleana por ejemplo? que devuelve True o False, eso lo devolves poniendo return false; o return true; y como void no retorna nada, ni string, ni true o false, ni un numero, nada, entonces se hace return; que es decir que devuelva nada, pero en este caso lo usas porque una vez q se usa return se termina el procedimiento void o si estas en una funcion tambien se termina devolviendo su valor.
|
|
|
En línea
|
|
|
|
Di3goXx
Desconectado
Mensajes: 9
|
una expresion booleana no es lo va luego de un if?
|
|
|
En línea
|
|
|
|
Keyen Night
Desconectado
Mensajes: 496
Nothing
|
Bool, booleana, boolean es un tipo así como string ó int, no solo cuando haces un condicional (if) aplicas boolean sino tambien como dice $Edu$ si tienes una función de tipo boolean, retorna true o false así como una función int puede retornar 1 ó 0 por ejemplo.
|
|
|
En línea
|
La Fé Mueve Montañas... ...De Dinero
La programación es más que un trabajo es más que un hobby es una pasión...
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Evaluar formulas.
Programación Visual Basic
|
mdg
|
4
|
2,726
|
22 Enero 2007, 04:26 am
por mdg
|
|
|
Evaluar Variable cuando esta vacia
Java
|
^Tifa^
|
8
|
11,055
|
4 Diciembre 2008, 19:57 pm
por ^Tifa^
|
|
|
Evaluar mejor antivirus
« 1 2 »
Seguridad
|
washoavila
|
13
|
10,177
|
25 Noviembre 2010, 19:22 pm
por washoavila
|
|
|
Evaluar rendimiento de la aplicación
Programación General
|
najmuddin
|
6
|
3,510
|
10 Enero 2013, 11:48 am
por ABDERRAMAH
|
|
|
Evaluar función en puntos con c++
Programación C/C++
|
csergioc
|
2
|
3,242
|
23 Junio 2016, 01:43 am
por csergioc
|
|