Dev - C++ - Ayuda con un bucle y menu en c++

 
Vista:
sin imagen de perfil

Ayuda con un bucle y menu en c++

Publicado por Daniel (5 intervenciones) el 18/01/2020 20:53:54
Hola gente, necesito ayuda para ponerle un bucle repetitivo (While o do while) a mi código, es decir que pueda dejar vender a muchos clientes y aparte realizar un menú! HELP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#include<iostream>
#include <ctype.h>
#include <string.h>
#include <unistd.h>
 
using namespace std;
 
bool checkRespuesta(char a[]){
	// validación rapida para las preguntas
	if (strcmp(a, "s") != 0 && strcmp(a, "n") != 0){
		cout << "Respuesta incorrecta, saliendo del programa...";
		sleep(3);
		exit(0);
		return false;
	}
	else{
		if (strcmp(a, "s")){
			return true;
		}else{
			return false;
		}
	}
}
 
int porcentaje(int cantidad, int porciento){
	// sacamos la cantidad segun el porcentaje
	return cantidad*(((float)porciento) / ((float)100));
}
 
int main()
{
	// declaracion de variables
 
	int basePoliza = 0;
	char poliza[1], respuesta[1];
 
	// solicitud de numeros
 
	cout << "\n\n Introduzca tipo de poliza (A o B)\t\n";
	cin >> poliza;
 
	if (strcmp(poliza, "A") == 0 || strcmp(poliza, "B") == 0){ // comprobamos que el tipo de poliza es válido
		cout << " -> Poliza seleccionada: " << poliza << "\n\n";
 
		if (strcmp(poliza, "A")){ // checkeamos el tipo de poliza y que base se le debe aplicar según la elección
			basePoliza = 1200000;
		}else{
			basePoliza = 950000;
		}
 
	}
	else{ // si no es válido, salimos
		cout << "Respuesta incorrecta, saliendo del programa...";
		sleep(3);
		exit(0);
	}
 
	cout << " Bebe alcohol? (s/n)\t\n";
	cin >> respuesta;
 
	if (!checkRespuesta(respuesta)){
		cout << " -> Bebe alcohol: si.\n\n";
		basePoliza = basePoliza + porcentaje(basePoliza, 10); // añadimos un 10% por beber alcohol
	}
	else{
		cout << " -> Bebe alcohol: no.\n\n";
	}
 
	cout << " Usa lentes? (s/n)\t\n";
	cin >> respuesta;
 
	if (!checkRespuesta(respuesta)){
		cout << " -> Usa lentes: si.\n\n";
		basePoliza = basePoliza + porcentaje(basePoliza, 5); // añadimos un 5% por usar lentes
	}
	else{
		cout << " -> Usa lentes: no.\n\n";
	}
 
	cout << " Padece alguna enfermedad? (s/n)\t\n";
	cin >> respuesta;
 
	if (!checkRespuesta(respuesta)){
		cout << " -> Padece alguna enfermedad: si.\n\n";
		basePoliza = basePoliza + porcentaje(basePoliza, 5); // añadimos un 5% por enfermedad
	}
	else{
		cout << " -> Padece alguna enfermedad: no.\n\n";
	}
 
	cout << " Tiene más de 40 años? (s/n)\t\n";
	cin >> respuesta;
 
	if (!checkRespuesta(respuesta)){
		cout << " -> Tiene más de 40 años: si.\n\n";
		basePoliza = basePoliza + porcentaje(basePoliza, 20); // añadimos un 20% por ser mayor de 40 años
	}
	else{
		cout << " -> Tiene más de 40 años: no.\n\n";
	}
	cout << "\n\n --------------------------------------------------------\n\n";
	cout << "   El coste de la poliza sera de " << basePoliza;
	cout << "\n Escribe algo y pulsa enter para salir...";
	cin >> respuesta;
	return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alfil
Val: 3.422
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con un bucle y menu en c++

Publicado por Alfil (934 intervenciones) el 18/01/2020 21:10:14
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar