Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 20 de 23

Tema: haciendo mi primer programa en c++

  1. #1 haciendo mi primer programa en c++ 
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    buenas, estoy aprendiendo c++ y necesito hacer un programa que me sume 10 numeros introducidos por teclado, me de el promedio y me de el mayo y menor, por ahora me estoy centrando en el promedio, el codigo es este:

    #include <iostream>
    using namespace std;

    int main ()
    {
    int s;
    s=0;
    double promedio;
    int numero[10];
    int i;
    int suma;
    char resp[12];

    for (i = 0; i < 10; i++)
    {
    cout << "introduce un numero entero "<<i<<": ";
    cin >> numero[i];
    s += numero[i];
    }
    {
    double promedio = s /= i;
    cout << "El promedio es: " << promedio;
    cout << endl;
    }


    cout << numero << endl;
    cout << "Desea entrar otros numeros?(s/n): ";
    cin >> resp;

    while(resp[0] == 's' || resp[0] == 's');
    return 0;
    }
    me da el promedio pero redondeado, como puedo hacer para que me lo de con los decimales???

    ademas abajo de promedio me larga este codigo:

    0x22ff28
    eso es un numero en hexadecimal? osea que esos sean los decimales? por que no entiendo de donde sale.

    Saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  2. #2  
    Co-Admin HackHispano.com Avatar de clarinetista
    Fecha de ingreso
    Jan 2004
    Ubicación
    HackHispano/SM
    Mensajes
    7.698
    Descargas
    30
    Uploads
    8
    Yo creo que es porque todas las variables las pones como int, o sea de tipo entero.
    Usa Tipo "float" o coma flotante
    Citar  
     

  3. #3  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    bien, muchas gracias clarinetista, tenias razon, ya me da el promedio con decimales. ya resolvi el problema del numero en hexadecimal, ahora mi unico proble es que cuando me hace la pregunta de si quiero volver a hacerlo se planta, osea queda titilando el cursor pero no vuleve a preguntarme los numeros, que puede ser :S

    Saludos
    Última edición por ancabi; 15-02-2005 a las 20:05
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  4. #4  
    Co-Admin HackHispano.com Avatar de clarinetista
    Fecha de ingreso
    Jan 2004
    Ubicación
    HackHispano/SM
    Mensajes
    7.698
    Descargas
    30
    Uploads
    8
    Cita Iniciado por ancabi

    cout << numero << endl;
    cout << "Desea entrar otros numeros?(s/n): ";
    cin >> resp;

    while(resp[0] == 's' || resp[0] == 's');
    return 0;
    Creo que el problema es la condicion del final, que has puesto repe.
    Mira a ver eso
    Citar  
     

  5. #5  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    clarinetista cambie por otra letra la comparacion y sigue igual, ademas la puse con mayuscula a la s y sigue igual, pero eso ya no me importa, ahora estoy intentando que el programa te pregunte cuantos numeros queres poner en el programa, pero i toma el valor de z y te pide un solo numero y termina con la suma y el promedio, alguien sabe por que???


    include <iostream>
    using namespace std;

    int main ()
    {
    double s;
    s=0;
    double promedio;
    double numero[10];
    int z;
    z=0;
    int i;
    char resp[12];



    {
    cout << "cuantos numeros va a ingresar?: ";
    cin >> z;
    }

    for (i = 0; i < z; i++);
    {
    cout << "introduce un numero entero "<<i<<" : ";
    cin >> numero[i];
    s += numero[i];
    }

    {
    cout << "La suma es: " << s;
    cout << endl;
    }

    {
    double promedio = s / i;
    cout << "El promedio es: " << promedio;
    cout << endl;
    }


    cout << "Desea entrar otros numeros?(s/n): ";
    cin >> resp;

    while(resp[0] == 's' || resp[0] == 'S');
    return 0;
    }
    Saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  6. #6  
    Moderador HH
    Fecha de ingreso
    Sep 2002
    Ubicación
    Entre C# y PHP
    Mensajes
    1.813
    Descargas
    3
    Uploads
    0
    Código:
      while(resp[0] == 's' || resp[0] == 'S'); //-->Este punto y coma sobra
    Por otro lado, en realidad lo que te falla es el algoritmo.

    el código fuente que debería funcionar es el siguiente:

    Código:
    include <iostream>
    using namespace std;
    
    int main ()
    {
        double s;
        s=0;
        double promedio;
        double numero[10];
        int z;
        z=0;
        int i;
        char resp[12];
        resp="s";
        while(resp[0] == 's' || resp[0] == 'S')
        {
            cout << "cuantos numeros va a ingresar?: ";
            cin >> z;
            for (i = 0; i < z; i++);
            {
                cout << "introduce un numero entero "<<i<<" : ";
                cin >> numero[i];
                s += numero[i];
            }
            cout << "La suma es: " << s;
            cout << endl;
            double promedio = s / i;
            cout << "El promedio es: " << promedio;
            cout << endl;
            cout << "Desea entrar otros numeros?(s/n): ";
            cin >> resp;
         }
    
    return 0;
    }
    Última edición por <PICCOLO>; 17-02-2005 a las 22:24
    Quien no sabe lo que busca no entiende lo que encuentra.
    Usa Firefox, Redescubre la web
    Citar  
     

  7. #7  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    siento decirte que no funciono, por ej en lo de "resp="s"" me dice que es incompatible y despues se salta la pregunta de la cantidad de numeros por lo cual todo lo demas ya no funciona bien, la verdad que ya no entiendo el porque si el codigo a mi parecer esta perfecto , de todas formas gracias piccolo seguramente me servira para cuando le encuentre el error.

    Saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  8. #8  
    Moderador HH
    Fecha de ingreso
    Sep 2002
    Ubicación
    Entre C# y PHP
    Mensajes
    1.813
    Descargas
    3
    Uploads
    0
    El siguiente código me funciona correctamente, compilado desde anjuta. Los errores eran los siguientes:
    He cambiado resp por el tipo char normal ya que no es una cadena, por lo que de esa forma ahorras memoria.
    En el For tenías un punto y coma después del paréntesis.

    Código:
    #include <iostream.h>
    
    int main ()
    
    {
        double s;
        s=0;
        double promedio;
        double numero[10];
        int z;
        z=0;
        int i;
        char resp;
        resp='s';
        while(resp == 's' || resp == 'S')
        {
            cout << "cuantos numeros va a ingresar?: ";
            cin >> z;
            for (i = 0; i < z; i++)
            {
                cout << "introduce un numero entero "<<i<<" : ";
                cin >> numero[i];
                s += numero[i];
            }
            cout << "La suma es: " << s;
            cout << endl;
            double promedio = s / i;
            cout << "El promedio es: " << promedio;
            cout << endl;
            cout << "Desea entrar otros numeros?(s/n): ";
            cin >> resp;
         }
    
    return 0;
    }
    Saludos
    Quien no sabe lo que busca no entiende lo que encuentra.
    Usa Firefox, Redescubre la web
    Citar  
     

  9. #9  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    MUCHISIMAS GRACIAS PICCOLO!!!!!! funciono perfecto lo venia buscando desde hace dias a ese problema y vos en unos minutos me lo resolviste, mil gracias!!!

    saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  10. #10  
    Medio
    Fecha de ingreso
    Nov 2003
    Mensajes
    131
    Descargas
    0
    Uploads
    0
    guau, y en visual basic tb programan?
    No tengo firma!
    Citar  
     

  11. #11  
    Moderador HH
    Fecha de ingreso
    Dec 2001
    Ubicación
    Galiza
    Mensajes
    3.129
    Descargas
    0
    Uploads
    0
    Sip, visual basic tb!!! Aki le pegamos a todo
    Las ideas son como las pulgas, saltan de unos a otros pero no pican a todos... (George Bernard Shaw)
    Citar  
     

  12. #12  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    buenas, sigo este tema para no abrir otro, siguiendo mi manual, estoy en estructuras "struct" y me da un problema para hacer, que es hacer una "mini agenda" en donde el usuario entre nombres y numeros de telefono, los guarde en memoria y despues los pueda buscar por nombre o por telefono, no quiero que me lo den resuelto, lo que pido es si me pueden decir como hacer para que el valor quede guardado y despues que lo lea, como seria el comando??

    PD mire en muchos manuales pero no encuentro y en el mio dice algo asi como "LeeX () {return X}" pero el compilador no me lo toma

    Saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  13. #13  
    Moderador HH
    Fecha de ingreso
    Feb 2002
    Ubicación
    México
    Mensajes
    1.155
    Descargas
    4
    Uploads
    0
    Para guardarlos, debes usar un arreglo en tu estructura, y al finalizar el programa escribir todo en un archivo de texto plano (la forma más fácil) en c++ están las funciones de fprintf y fscanf que son iguales que scanf y printf pero escriben en un archivo en lugar de escribir a la pantalla.
    Mientras el mundo permanezca no acabarán la fama y la gloria de México-Tenochtitlan
    Citar  
     

  14. #14  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    ok, me pondre a buscar en el manual coo hacerlo, porque yo no uso printf, ni scanf, sino que uso cout y cin, pero nunca esta de mas aprenderlo

    gracias, saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  15. #15  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    buenas, buscando un poco encontre la forma de escribir y leer ficheros mediante streams, pero el problema es que cuando cierro el programa y lo vuelvo a abrir me borra lo anterior, como puedo hacer para que siga desde donde se quedo???

    aca les dejo el codigo de ese bloque:

    Código:
    ntronombre:
    		cout<<endl;
    		cout<<"Introduzca el nombre: ";
    		cin>>nombrecompleto.Nombre;
    		fs<<nombrecompleto.Nombre;
    		cout<<endl;
    		cout<<"Introduzca el apellido: ";
    		cin>>nombrecompleto.Apellido;
    		fs<<" ";
    		fs<<nombrecompleto.Apellido;
    		fs<<endl;
    		cout<<endl;
    		cout<<"Desea introducir otro nombre?(s/n): ";
    		cin>>resp;
    		while (resp == 's' || resp == 'S') goto intronombre;
    		goto start;
    Saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  16. #16  
    Moderador HH
    Fecha de ingreso
    Feb 2002
    Ubicación
    México
    Mensajes
    1.155
    Descargas
    4
    Uploads
    0
    Al momento de inicializar el archivo, talvez hayas puesto sobreescribir el archivo, entonces, deberías cambiarlo a agregar.
    Mientras el mundo permanezca no acabarán la fama y la gloria de México-Tenochtitlan
    Citar  
     

  17. #17  
    Avanzado
    Fecha de ingreso
    Nov 2002
    Ubicación
    Ciudad de México
    Mensajes
    297
    Descargas
    0
    Uploads
    0
    Crea tu fstream asi:

    fstream of;
    of.open("prueba.txt", ios::out | ios::app);
    of.close();

    El ios::app es para que busque el final del archivo y ahi empiece a escribir.
    Scar_T
    Citar  
     

  18. #18  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    es verdad, muchas gracias!! pero me di cuenta que desde un txt no puedo hacer que el programa busque info, no??

    tengo que hacer una base de datos, lo que no se es como decirle al programa que busque el telefono de alguien en una base de datos , me pueden ayudar???

    gracias y saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

  19. #19  
    Moderador HH
    Fecha de ingreso
    Feb 2002
    Ubicación
    México
    Mensajes
    1.155
    Descargas
    4
    Uploads
    0
    Si tu archivo no es demasiado grande, es recomendable que "bajes" todo el archivo a una estructura, sería algo como:
    struct gente{
    char nombre[50];
    char telefono[20];
    }
    y luego, con una variable, digamos:
    struct gente amigos[100];
    vas bajando del archivo los nombres y teléfonos a tu array amigos, así, una estructura es más fácil de trabajar que un archivo. Por supuesto, al final, vuelves a escribir el archivo con los datos de tu estructura. Y sólamente te meterás con el archivo al principio y al final del programa.
    Mientras el mundo permanezca no acabarán la fama y la gloria de México-Tenochtitlan
    Citar  
     

  20. #20  
    Avanzado
    Fecha de ingreso
    Sep 2004
    Ubicación
    Me in the middle
    Mensajes
    375
    Descargas
    2
    Uploads
    0
    si mal no entendi, lo que decis que haga es que ya declare los nombre y los telefonos en un array??? si es asi ya se como hacer y en el manual eso era lo que decia pero como lo quise complicar un poco quise que se puedan introducir los nombre y para eso usar una base de datos o lo que sea, pero tampoco es de vida o muerte, sigo estudiando y algun dia lo podre hacer.

    gracias igualmente

    Saludos
    "Las repisas que corroen el saber de la zanahoria, estan estimulando e instituyendo a los colombos de la epoca..."
    Citar  
     

Temas similares

  1. Haciendo telnet...
    Por karlos007 en el foro INTRUSION
    Respuestas: 5
    Último mensaje: 17-02-2008, 13:53
  2. Qué estoy haciendo mal???
    Por Lagarto en el foro GENERAL
    Respuestas: 16
    Último mensaje: 08-04-2003, 11:46
  3. Que estoy haciendo mal?
    Por twilight en el foro GENERAL
    Respuestas: 6
    Último mensaje: 12-02-2003, 10:33
  4. Haciendo un Makefile
    Por Scar_T en el foro GENERAL
    Respuestas: 2
    Último mensaje: 29-01-2003, 16:32
  5. Haciendo una pagina web
    Por HAGEN en el foro REDES Y TECNOLOGIAS WIRELESS
    Respuestas: 2
    Último mensaje: 26-02-2002, 12:15

Marcadores

Marcadores

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •