Ya había escritos varios posts sobre las condiciones if else en c++, pero algo que hace falta saber es que dentro de una estructura if puede haber otra estructura if tantos veces como sea necesario. Es decir:
if ( condicion ) { instrucciones if ( condicion ) { instrucciones } } else { if ( condicion ) { instrucciones } else { instrucciones } instrucciones }
¿Y como para qué? Pues hay algunas situaciones que así lo requieren. Por ejemplo:
“Si un alumno tiene un promedio mayor o igual a 9 se le hara un 20% de descuento en la colegiatura, si tiene un promedio mayor o igual a 8 pero menor que 9 el descuento será del 10%, si su promedio es menor que 8 pero mayor o igual a 7 el descuento será del 5% y si promedia con 7 o menos no tendrá descuento.”
La solución de este problema en c++ sería así:
#include<stdio.h> #include<conio.h> int main() { float promedio=0,descuento=0,colegiatura=1500,total=0; printf("\n\tCual fue tu promedio?: ");scanf("%f",&promedio); if(promedio>=9) { descuento=0.2; } else { if(promedio>=8 && promedio <9) { descuento=0.1; } else { if(promedio>=7 && promedio <8) { descuento=0.05; } else { descuento=0; } } } total=colegiatura-colegiatura*descuento; printf("\n\tTu colegiatura sera de %.2f",total); getch(); }
Ya que sabemos esto podemos ahorrarnos algunas llaves {} usando el else if, vean:
#include<stdio.h> #include<conio.h> int main() { float promedio=0,descuento=0,colegiatura=1500,total=0; printf("\n\tCual fue tu promedio?: ");scanf("%f",&promedio); if(promedio>=9) { descuento=0.2; } else if(promedio>=8 && promedio <9) { descuento=0.1; } else if(promedio>=7 && promedio <8) { descuento=0.05; } else { descuento=0; } total=colegiatura-colegiatura*descuento; printf("\n\tTu colegiatura sera de %.2f",total); getch(); }
Man me sacaste de un apuro…
se agradece un buennnn …
los if anidados son la ley …!
EEE Muy interesante me gustaria conocer mas sobre los vectores y el metodo burbuja… suerte q “DIOS LOS VENDIGA”
muy bueno prof
esto me es muy util. GRACIAS.
necesito saber ue es el if
el else y el
if else
Puedes leer esto http://codigoc.org/134-condiciones-decisiones-en-c-if-else :D
necesito que me digas como hacer un programa donde pida 3 cantidades y luego mostrarlas en forma ascendente y descendente te lo agradeceria mucho…..
Deberías leer estos posts primero y si aún así hay dudas, puedes preguntar con toda confianza.
http://codigoc.org/134-condiciones-decisiones-en-c-if-else
http://codigoc.org/126-pedir-datos-en-c-scanf
me sirvio , muchas gracias
hola, me gustaria saber por que no funsiona el verdadero de esta pregunta:
char x
if (x=”carlos”)
{
cuando es verdadero e ingresamos carlos solo va por el falso
que se puede ghacer para q esta condicion sea valida
gracias
es porque a las variables tipo char solo les cabe un caracter, si tu condición fuera x=’c’ funcionaria (comillas simples). O puedes declarar x como tipo string: string x ; y hacer la condición como tu la hiciste: if(x = “carlos”) con comillas dobles. Aunque ahora que estoy escribiendo esto estoy sospechando que tu pregunta iba enfocada hacia otra cosa ¿no?
si no deje muy clara la pregunta pero es asi..
char o[30];
gotoxy(30,5);cout<<"* 1-RENAULT SANDERO *";
gotoxy(30,6);cout<<"* 2-TOYOTA COROLA *";
gotoxy(30,7);cout<<"* 3-VOLWSWAGEN *";
gotoxy(30,8);cout<<"* 4-CORSA *";
gotoxy(10,11);cout<>o;
if(o!=”RENAULT sandero”)
{
gotoxy(10,8);cout<>op;
if(op==1)
{
gotoxy(10,10);cout<>p;
gotoxy(10,11);cout<>c;
v=p*c;
d=v*25/100;
vt=v-d;
gotoxy(10,13);cout<<"El descuento es..";
gotoxy(55,13);cout<<d;
gotoxy(10,14);cout<<"El valor final pagar es..";
gotoxy(55,14);cout<<vt;
}
else
{
clrscr();
gotoxy(10,15);cout<<"Marca de vehiculo incorrecta..";
}
ahora le en la variable O le coloque !, y me corre en verdadero, pero ya no en falso todas las palabras que coloque son verdaderas…
te agradesco la ayuda q me brindas..
#include
using namespace std;
int main()
{
double num_metros,precio,subtotal,descuento,total_pagar,codigo;
cout<<"**Bienvenidos a empresa maderera**";
cout<<"productos disponible";
cout<<"-1.-pino";
cout<<"-2.-cedro";
cout<<"-3.-roble";
cout<>codigo;
cout<>num_metros;
if (codigo=1)
{precio=256;
subtotal=num_metros*precio;
descuento=0;
total_pagar=subtotal-descuento;
cout<=150)
{precio=567;
descuento=(num_metros*precio)*0.30;
subtotal=(num_metros*precio)-descuento;
total_pagar=subtotal-descuento;
cout<<"el producto adqirido es cedro:";}
else
{
if (codigo=2 & num_metros<150)
{precio=567;
descuento=0;
subtotal=(num_metros*precio)-descuento;
total_pagar=subtotal-descuento;
cout<<"el producto adqirido es cedro:";}
else
{
if (codigo=3)
{ precio=345;
subtotal=num_metros*precio;
descuento=0;
total_pagar=subtotal-descuento;
cout<<"el producto adqirido es roble:";}
}
}
}
cout<<"cantidad de metros comprados:"<<num_metros<<endl;
cout<<"el descuento es de:"<<descuento<<endl;
cout<<"subtotal:"<<subtotal<<endl;
cout<<"total a pagar:"<<total_pagar<<endl;
cout<<"***gracias por su compra****";
system("pause");
return 0;
}
TENGO PROBLEMAS CON ESTE PROGRAMITA ALGIEN ME PUEDE AYUDAR
POR FAVOR AYUDENME A VER QUE ESTÁ MAL..U.U
#include
#include
void main()
{
int numhij,prestamo;
float s;
cout<>s;
cout<>numhij;
if (s>12000 & numhij=0)
cout<<"se le aprueba el prestamo"<<endl;
else if(10000<s<12000 & numhij=1)
cout<<"se le concede el prestamo"<<endl;
else
cout<<"no se le concede el prestamo"<<endl;
else if (10000<s<12000 & numhij=2)
cout<<"se le concede el prestamo"<<endl;
else
cout<<"no se le concede el credito"<<endl;
else if(8000<s<10000 & numhij=0)
cout<<"se le concede el prestamo"<<endl;
else
cout<<"no se le concede el prestamo"<<endl;
getch();
}
alguien me podria ayudar con este problema de if
x fiiss se los agradeceria muchiixximoo
En un hospital se han realizado analisis a pacientes en los ultimos años, con el objetivo de hacer una aproximacion a los costos por paciente.
se obtuvo un costo diario segun el tipo de analisis, ademas se determina que los pacientes con edad de entre 14 y 22 años implican un costo adicional del 10%
la siguiente tabla expresa los costos diarios de acuerdo a los analisis realizados.
Dar solucion al problema que permita calcular y mostrar el costo total que representa un pciente
tipos de analisis 1=250 2=365 3=500