Dev - C++ - Porfa ayuden a un novato

 
Vista:
sin imagen de perfil

Porfa ayuden a un novato

Publicado por Franklin (1 intervención) el 21/07/2022 01:40:22
Una vez ingreso una opción y esta opción me da un resultado el programa termina automáticamente, quisiera saber como hacer para que una vez la opción que elegí se resuelve, me salga el menú de ingrese una opción nuevamente y no se cierre el programa

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
107
108
109
110
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
using namespace std;
 
void Ordenar(double V[], int Dim, int F) {
	int aux,i,j;
	for (i = 0; i < Dim-1; i++) {
		for (j = 0; j < Dim-1; j++) {
			if (V[j] > V[j + 1]) {
				aux = V[j];
				V[j] = V[j + 1];
				V[j + 1] = aux;
			}
		}
	}
	if (F == 1) {
		cout << "De Menor a Mayor" << endl;
		for (int i = 0; i < Dim; i++) {
			cout << i + 1 << "- " << V[i] << endl;
		}
	}
	else {
		cout << "De Mayor a Menor" << endl;
		int h = 1;
		for (int i = Dim-1; i >= 0; i--) {
			cout << h << "- " << V[i] << endl;
			h++;
		}
	}
}
void Promedio_Aritmetico(double V[], int Dim) {
	double acum = 0;
	for (int i = 0; i < Dim; i++) {
		acum = acum + V[i];
	}
	cout << "El promedio aritmetico es: " << acum / Dim << endl;
}
 
void Imprimir(double V[], int Dim) {
	for (int i = 0; i < Dim; i++) {
		cout << i + 1 << "- " << V[i] << endl;
	}
}
void Borrar(double V[], int Dim, double y, int x) {
	if (x == 0) {
		for (int i = 0; i < Dim; i++) {
			if (V[i] == y) {
				V[i] = 0;
			}
		}
	}
	else {
		for (int i = 0; i < Dim; i++) {
			if (i = y) {
				V[i] = 0;
			}
		}
	}
}
int main(void) {
	double num[100];
	int a, b,z;
	double y;
	cout << "Cuantos numeros va a ingresar? (maximo 100):" << endl;
	cin >> a;
	for (int i = 0; i < a; i++) {
		cout << "Ingrese un numero: ";
		cin >> num[i];
	}
	do {
		cout << "Ingrese una opcion: " << endl;
		cout << "[1] Ordenar de mayor a menor:" << endl;
		cout << "[2] Ordenar de menor a mayor:" << endl;
		cout << "[3] Calcular el promedio aritmetico:" << endl;
		cout << "[4] Imprimir numeros ingresados:" << endl;
		cout << "[5] Borrar uno de los numeros ingresados" << endl;
		cin >> b;
	} while (b<0 || b>6);
 
	switch (b) {
			case 1: Ordenar(num,a,0);break;
			case 2: Ordenar(num,a,1);break;
			case 3: Promedio_Aritmetico(num,a);break;
	        case 4: Imprimir(num,a); break;
			case 5:
				do {
					cout << "Elija una opcion:"<<endl;
					cout << "[1] Borrar un numero especifico"<<endl;
					cout << "Si el numero ingresado coincide con mas de una posicion en el vector las posiciones en cuestion se borraran "<<endl;
					cout << "Si el numero ingresado no coincide con ninguna posicion en el vector no sucedera nada"<<endl;
					cout << "[2] Borrar una posicion del vector especifica"<<endl;
					cin >> z;
				} while (z<0 || z>2);
				if (z == 1) {
					int x = 0;
					cout<<"Escriba el numero a borrar:" << endl;
					cin >> y;
					Borrar(num, a, y, x);
				}
				else {
					int x = 1;
					cout << "Escriba la posicion en el vector a borrar (de 0 a la cantidad de numeros -1):" << endl;
					cin >> y;
					Borrar(num, a, y, x);
				}
	}
}
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: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Porfa ayuden a un novato

Publicado por Alfil (1444 intervenciones) el 21/07/2022 04:55:48
En el menú debes añadir la opción salir:

1
cout << "[6] Salir" << endl;

y la línea 81 cambiarla por:
1
} while (b != 6);
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