29/03/2012, 08:48
|
| | | Fecha de Ingreso: abril-2009
Mensajes: 157
Antigüedad: 15 años, 7 meses Puntos: 7 | |
Respuesta: Problemas con un bucle do/while infinito xD Estimado sven_uri, no era necesario tanto while, solo con el primero basta para que se presente nuevamente tu menu si eliges de si (S).
Tu código con unas pequeñas modificaciones quedaría así:
Código:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
float areaTriangulo(float pBase, float pAltura);
float areaRectangulo(float pLado1, float pLado2);
int main(){
float base, altura, lado1, lado2, lado3, area, perimetro;
char seleccion,respuesta
//int deseaContinuar = 1;
do
{
printf("Selecciona el area de un triangulo o un rectangulo(t/r) \n");
scanf("%c",&seleccion);
switch(seleccion)
{
case 't':
system("CLS");
printf("Hola soy un triangulo\n");
printf("Digiste la base: \n");
scanf("%f",&lado1);
printf("Digiste la altura: \n");
scanf("%f",&lado2);
printf("%.2f \n",areaTriangulo(lado1, lado2));
getch();
break;
case 'r':
system("CLS");
printf("Hola soy un rectangulo\n");
printf("Digiste el largo: \n");
scanf("%f",&lado1);
printf("Digiste el ancho: \n");
scanf("%f",&lado2);
printf("%.2f \n",areaRectangulo(lado1, lado2));
getch();
break;
default:
printf("Error: Opcion incorrecta");
printf("Aprieta una tecla correcta ...");
getch();
}/*fin del switch*/
printf("Quieres realizar otra operación?(S/N)");
respuesta=getch();
}while(respuesta!='N'||respuesta!='n');
system("PAUSE");
return 0;
}
float areaTriangulo(float pBase, float pAltura)
{
float areaTriangulo = pBase*pAltura*0.5;
return areaTriangulo;
}
float areaRectangulo(float pLado1, float pLado2)
{
float areaRectangulo = pLado1*pLado2;
return areaRectangulo;
}
saludos
__________________ En programación hay mil y un formas de hacer lo mismo... |