Antes de nada quiero decir que soy nuevo en el foro, asique si pongo algo mal pido disculpas.
Bueno pues tengo la siguiente duda, el código que os pongo a continuación te pide 3 números y luego los ordena de mayor a menor, hasta aquí sin problema, mi duda viene con lo siguiente: si al programa le metes 3 cifras iguales deja de funcionar. Me gustaría que me ayudaran a modificar el código para que si esto ocurre las cifras iguales se pongan en la misma categoria, es decir:
Código:
Numero: 446
-Mayor: 6
-Mediano:
-Menor: 4, 4
Me gustaría que quedara como en el ejemplo de arriba.
Código:
// Que pida 3 números y los muestre en pantalla de mayor a menor en líneas distintas.
#include <iostream>
using namespace std;
int main() {
int num1, num2, num3, menor, mayor, mediano;
cout << "Introduce el primer numero: " << endl;
cin >> num1;
cout << "Introduce el segundo numero: " << endl;
cin >> num2;
cout << "Introduce el tercer numero: " << endl;
cin >> num3;
if (num1 > num2 && num1 > num3){
mayor=num1;
if(num2 > num3){
mediano=num2;
menor=num3;
}else {
mediano=num3;
menor=num2;
}
}else {
if(num2 > num1 && num2 > num3){
mayor=num2;
if (num1 > num3){
mediano=num1;
menor=num3;
}else {
mediano=num3;
menor=num1;
}
}else {
if(num3 > num1 && num3 >num2){
mayor=num3;
if(num1 > num2){
mediano=num1;
menor=num2;
}else{
mediano=num2;
menor=num1;
}
}else {
cout << "No tengo ni p**a idea de como se hace. xD" << endl;
system("pause");
return 0;
}
}
}
cout << "Los numeros que ha introducido ordenados de mayor a menos son: \n\n"
<< "- Mayor: " << mayor << "\n" << "- Mediano: " << mediano << "\n- Menor: " << menor << endl;
system("pause");
return 0;
}
Muchas gracias de antemano, estoy aprendiendo a programar (bueno, he empezado esta semana xD) y de momento lo llevo bien, si necesitan algo decírmelo.
Un saludo