[SOLUCIONADO] Ayuda con codigo en c

Iniciado por xc0d3, Junio 11, 2012, 11:30:35 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Junio 11, 2012, 11:30:35 PM Ultima modificación: Febrero 08, 2014, 05:04:09 PM por Expermicid
Elaborar un programa que acepte por teclado números hasta que exista la condición de término -99. Cada vez que se ingrese un número este debe indicar si es menor o mayor que el ingresado anteriormente.
Código: c

#include <cstdlib>
#include <iostream>
#include <conio.h>
float numero=0;
float mayor=0 , menor=99999999;
int main()
{
   
   
do
{
    printf ("ingrese el numero : ");
    scanf("%f",& numero);

if (numero<menor)
{
menor=numero;

}

if (numero>mayor)
{
mayor=numero;

}



printf("El Mayor es: %f\n", mayor);
printf("El Menor es: %f\n", menor); 


} while (numero !=-99);
   

    getch ();
   
}
help
Tengo una pregunta que a veces me tortura "estoy loco yo o los locos son los demás"

Hola, bien veo que cometes muchos errores,

1)

Código: cpp

#include <cstdlib>
#include <iostream>


Estas bibliotecas son de C++ las de C son :

Código: c

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


y conio.h es una biblioteca basura, es decir, no es necesaria para nada, el getch (); lo puedes reemplazar por getchar(); o en caso de ser necesario doble  getchar();

2)

Usas variables globales, nunca las uses, son mala practica de programación.


3)

Entrando en materia, supongo que el error que tienes es que no muestra si el número ingresado es mayor que el anterior ingresado, si no que por el contrario muestra el mayor de todos los ingresados y el menor de los mismos, de ser eso acá te lo dejo corregido :

Código: c

#include <stdio.h>
//#include <stdlib.h> // No es necesaria.

int main(void){
    float numero,         // nuemro actual
          anterior = -99; // nuemro anterior

    do{
        printf("Ingrese un numero : ");
        scanf("%f", &numero);

        // Se mira si es la primera vez que ingresa un numero
        if(anterior == -99)
            printf("El numero ingresado es el mayor\n");
        else { // Si no es la primera vez
            // Se mira cual es mayor
            if (numero > anterior)
                printf("El numero ingresado es el mayor\n");
            else
                printf("El nuemro anterior es el mayor\n");
        }

        //Se guarda el numero
        anterior = numero;

    }while(numero!=-99);

    getchar();
    getchar();

    return 0;
}


$4!u2
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Que es mi ordenador mi tesoro que todo el mundo ha de temer. Mi ley, el ratón y el módem. Mi única patria, la red

Junio 12, 2012, 01:29:17 PM #2 Ultima modificación: Junio 12, 2012, 01:37:08 PM por xc0d3
bro cada ves k ingrese un numero ejmplo ingreso 2 luego el 3 entonces 3 es mayor k dos luego ingreso 5 entonce 5 mayor q 3 asi debe ser :D y tiene k aver una condicion si los dos numeros son iguales :D gracias bro :D
Tengo una pregunta que a veces me tortura "estoy loco yo o los locos son los demás"

simplemente modifica los printf que están dentro del else y  listo, lo de si son iguales simplemente es añadirle una condición :

Código: c

...
        if(anterior == -99)
            printf("El numero ingresado es el mayor\n");
        else { // Si no es la primera vez
            // Se mira si son iguales
            if (numero == anterior)
                printf("Los numeros son iguales\n"); // modificar para mostrar los numeros
            // Se mira cual es mayor
            else if (numero > anterior)
                printf("El numero ingresado es el mayor\n"); // Modificar para mostrar los numeros
            else
                printf("El nuemro anterior es el mayor\n"); // modificar para mostrar los numeros
        }
...


$4!u2
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Que es mi ordenador mi tesoro que todo el mundo ha de temer. Mi ley, el ratón y el módem. Mi única patria, la red

Luego avisen si quedo solucionado para modificar el titulo


Junio 12, 2012, 03:44:36 PM #5 Ultima modificación: Junio 16, 2012, 10:51:59 PM por Snifer
Código: cpp
#include<iostream>//LIBRERIAS
#include <conio.h>
using namespace std;
int main() {

int acu;
int n;
int numero;

numero=0;
acu=0;
do {//SIRVE PARA HACER MENUS
printf ("igrese un  numero\n");//SALIDA DE DATOS
scanf ("%d", & numero);//ENTRADA DE DAATOS
if (acu>numero) {
printf("%d Mayor Que \n" ,numero);
} else {
if (acu==numero) {
printf ( "%d El numero es  Igual A %d\n", numero,acu);
} else {
printf("%d el numero es menor Que %d\n",numero, acu );
}
}
acu=numero;
} while (numero!=-99);
printf("como presiono -99 ahora saldra del programa ");
getch ();
return 0;

}



#define SIN_TIPO string


int main() {

int acu;
SIN_TIPO n;
int numero;

numero=0;
acu=0;
do {
cout<<"igrese un  numero"<<endl;
cin>>numero;
if (acu>numero) {
cout<<n<<" Mayor Que "<<numero<<endl;
} else {
if (acu==numero) {
cout<<acu<<" El numero es  Igual A "<<numero<<endl;
} else {
cout<<acu<<" el numero es menor Que "<<numero<<endl;
}
}
acu=numero;
} while (numero!=-99);
cout<<"como presiono -99 ahora saldra del programa "<<endl;

return 0;

}

este seria en c++ muchas gracias por la ayuda :D
Tengo una pregunta que a veces me tortura "estoy loco yo o los locos son los demás"

Junio 12, 2012, 04:18:19 PM #6 Ultima modificación: Febrero 08, 2014, 05:04:24 PM por Expermicid
bien ^^

en el código de C++ te hace falta el uso del std, usalo como

Código: cpp
using namespace std;


antes del main, y me queda la duda, para que usas el string n?

$4!u2
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Que es mi ordenador mi tesoro que todo el mundo ha de temer. Mi ley, el ratón y el módem. Mi única patria, la red