Dev - C++ - AYUDA, Maximo y minimo con error en igualdad de numeros

 
Vista:

AYUDA, Maximo y minimo con error en igualdad de numeros

Publicado por Shodelas (1 intervención) el 18/05/2022 06:17:50
Realizar un programa en Lenguaje C que pida n (al menos 5) números cualesquiera (pueden ser positivos o negativo o inclusive cero y tener parte decimal), el programa deberá mostrar al final cual es el valor máximo y cual es el valor mínimo de la lista de valores. Si el valor de n no es correcto se deberá volver a pedir. En caso de que todos los valores sean iguales solo se mandará el mensaje: "Todos los valores son iguales. No hay máximo ni mínimo".

#include<stdio.h>
#include<stdlib.h>

int main ()
{
int n,i;
float x=0,max=0,min=0;
system("cls");
printf("Alumno: Castaneda Gutierrez Gabriel Aaron\n");
printf("Boleta: 2022350295\n");
printf("Alumno: Garc\xa1""a Jim\x82nez Miroslava\n");
printf("Boleta: 2022351506\n");
printf(" Grupo: 1MM15\n");
printf("Equipo: 07\n");
printf("Maximo y minimo\n\n");

do{
printf("\n\n");
printf(" n = ? ");
scanf("%d",&n);
if(n<=4)
printf("\nERROR, numero invalido, la lista debe tener como minimo 5 datos.");
}while(n<=4);

printf("\n\nIntroduzca los valores\n\n");
for(i=1;i<=n;i++){
printf("x%d = ? ",i);
scanf("%f",&x);
if(x>max){
max=x;
}else if(x<min){
min=x;
}else if(x+=x){
max=x;
min=x;
printf("Todos los valores son iguales. No hay maximo ni minimo.\n");

}
}
printf("\n\n");
printf("Maximo = %12.4f\n",max);
printf("Minimo = %12.4f\n",min);


printf("\n\n");
system("pause");
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
sin imagen de perfil
Val: 1
Ha aumentado su posición en 3 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

AYUDA, Maximo y minimo con error en igualdad de numeros

Publicado por antonio (85 intervenciones) el 18/05/2022 16:36:29
Hola buenas este seria una posibilidad de la respuesta porque habría la posibilidad de ir ordenando el array mientras pides los números, pero al ser solo 5 he pensado que era mas fácil pedirlos y después ordenarlos para saber si el primer elemento y el ultimo son iguales:

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
using namespace std;
//Ordenar array
void ordenar(float array[]);
int main ()
{
//Creamos las variables y el array con los numeros
//n ciclos
int n=0;
//Numero a pedir
float numero=0;
//Array para almacenar numeros
float numeros [5];
do{
//Texto a mostrar
cout<<"Introduce un numero: \n";
//Pedir el numero
cin>>numero;
//Comprobar si no es un numero muestra que no es un numero
if(!isdigit(numero)){
cout<<"Ese no es un numero \n";

}
//Si es un numero lo añade al array y suma 1 al n ciclos
else{
numeros[n]=numero;
n=n+1;
}

}while(n!=5);//Hasta 5 ciclos
ordenar(numeros);//Ordenamos el array que tenemos
//Si el primer y ultimo elemento despues de ordenarlos es igual todos los numeros son iguales
if (numeros[0] ==numeros[4]){
cout<<"Todos los numeros son iguales \n";
}
//Si el primero y ultimo no son iguales habra un mayor y menor mostrarlo
else{
cout<<"El menor es : "<<numeros[0]<< "\n";
cout<<"El mayor es : "<<numeros[4]<< "\n";
}
return 0;

}
//Metodo ordenacion burbuja
void ordenar(float array[]){
float temp=0;
for (int i=1; i<5; i++){
for (int j=0 ; j<5 - 1; j++){
if (array[j] > array[j+1]){
temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
}
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