elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


  Mostrar Mensajes
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 47
1  Programación / Programación C/C++ / Re: [?] Error fgets en: 19 Enero 2014, 15:30
Hola MeCraniDOS mira esto:
Citar
Código
  1. char * fgets ( char * str, int num, FILE * stream );

Get string from stream
Reads characters from stream and stores them as a C string into str until (num-1) characters have been read or either a newline or the end-of-file is reached, whichever happens first.
Fuente http://www.cplusplus.com/reference/cstdio/fgets/
Es decir que fgets por definición lee carácteres del stream y los almacena en str hasta un número de (num-1) carácteres, así que para arreglar tu codigo, o igualas MAX a 5 o pones MAX+1 en fgets como te he puesto en tu código:
Código
  1.    #include <stdio.h>
  2.  
  3.    #define MAX 4
  4.    #define TONUM 48
  5.  
  6.    int main()
  7.    {
  8.    char Cadena[MAX];
  9.    int Numero[MAX];
  10.  
  11.           printf("Introduce un numero de 4 digitos: ");
  12.           fgets(Cadena, MAX+1, stdin);
  13.           getchar();
  14.  
  15.           // Ahora convertimos la cadena a numerico
  16.  
  17.           for(int i=0;i<MAX;i++)
  18.           {
  19.               Numero[i] = Cadena[i] - TONUM;
  20.               printf("%d", Numero[i]);
  21.           }
  22.  
  23.           return 0;
  24.    }
¡Un saludo!
2  Foros Generales / Foro Libre / Re: Re: Re: A ver, físic@s o aficionad@s, aclárenme esta duda: en: 16 Enero 2014, 02:26
Hola seba123neo ¿cómo has calculado el de la luna-sol si el radio es variable?
Un saludo.
3  Foros Generales / Foro Libre / Re: A ver, físic@s o aficionad@s, aclárenme esta duda: en: 16 Enero 2014, 00:45
Suponiendo órbitas circulares podemos ver que un objeto,satélite o lo que sea se mantiene en órbita porque la fuerza gravitatoria lo mantiene como muchos citan aquí "atado" al astro, pero este fenómeno se explica porque la luna realmente tiene una velocidad lineal al igual que la Tierra y la Fuerza Centrípeta,Normal o Gravitatoria se gasta íntegramente en cambiar la dirección del vector velocidad. Esto viene dado por:
Tengan en cuenta que la fuerza gravitatoria que ejerce la Tierra sobre la Luna es abismalmente superior(como el radio Luna-Tierra es menor que el Luna-Sol entonces v2/R será mayor para el sistema Luna-Tierra que para el Luna-Sol)a la que ejerce el Sol, por esto al doblar la dirección del vector velocidad de la Luna el sol interviene poco y la tierra bastante, lo que hace que el vector velocidad cambie su sentido más rápido que por ejemplo el vector velocidad de la Tierra con respecto al Sol que tiene una órbita más amplia. Por tanto el sol no se "llevaría" a la Luna ni orbitaría directamente alrededor de él ya que la fuerza gravitatoria que hace que su vector velocidad cambie a mayor velocidad es la de la tierra, por eso gira alrededor de ella. Una ilustración de lo de los vectores que digo ya que eso quizás no lo conozcan algunas personas interesadas en el hilo:
Puedes verlo también como una membrana deformada, aquí se ve más claro o eso creo:

Corríganme si ven algo fuera de lo normal.
4  Programación / Programación C/C++ / Re: Cambiar una sentencia if else if por un if else en: 12 Noviembre 2013, 00:36
¿Qué error te da al compilar? A mi me va perfectamente, hay que detallar más las preguntas.

Esperando tu respuesta para poder ayudarte.

¡Un saludo!
5  Programación / Programación C/C++ / Re: Contar el numero de arrays en una funcion en: 27 Agosto 2013, 12:46
Tienes que pasarle el largo de la función al array, porque el sizeof en la función no te vale, sin embargo si te da el valor correcto dentro del ámbito en el que fue declarado el array. Bueno aquí tienes el código con esa modificación:
Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4.  
  5. // Exercise 9-5: Write a function that returns the maximum value of an array of
  6. // numbers.
  7.  
  8.  
  9. int maximo(int numeros[], int index)
  10. {
  11.    int i = 0;
  12.    int numTotal = 0; // index into the string
  13.    int numMaximo = 0;
  14.  
  15.    numMaximo = numeros[0];
  16.  
  17.    for (i = 0; i < index ; ++i)
  18.    {
  19.        if (numMaximo <= numeros[i])        
  20.            numMaximo = numeros[i];
  21.  
  22.        printf("de momento es %d\n", nummaximo);
  23.    }
  24.  
  25.    return numMaximo;
  26. }
  27.  
  28. int main(int argc, char *argv[])
  29. {
  30.    int bingo[] = {1,2,3, 4, 4, 4, 4, 4, 5, 4, 66, 3, 4, 3, 2, 67,2};
  31.  
  32.    int index = sizeof (bingo) / sizeof (bingo[0]);
  33.  
  34.    printf("##El total de numeros en bingo es de: %d\n", index);
  35.  
  36.    printf("El valor maximo es %d\n", maximo(bingo,index));
  37.  
  38.    return (0);
  39. }
En C++11 puedes hacer esto:
Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main(int argc, char *argv[])
  6. {
  7.    int bingo[] = {1, 2, 3, 4, 4, 4, 4, 4, 5, 4, 66, 3, 4, 3, 2, 67, 2};
  8.  
  9.    int maxNum(0);
  10.    for(auto &currentNum : bingo)
  11.        if(currentNum > maxNum)
  12.            maxNum = currentNum;
  13.  
  14.    cout << "The maximum value is: " << maxNum;
  15.  
  16.    return (0);
  17. }

¡Un saludo!
6  Programación / Programación C/C++ / Re: temperatura con funcion en: 16 Agosto 2013, 20:41
Hola deberías editar el post si quieres decir algo nuevo en vez de enviar un comentario nuevo, con eso le ahorras trabajo a los moderadores. Te voy a ir diciendo lo que está mal y tu ya lo arreglaras(algunos) porque son fallos muy básicos que mirando en cualquier lado te das cuenta de lo que pasa.

1. La librería iostream.h no existe es iostream:
Código
  1. #include <iostream>
2. La librería iomanip.h no existe es iomanip:
Código
  1. #include <iomanip>
3. cin endl ios setiosflags y cout no están declarados en este ámbito líneas del error:
Código
  1. cout<<"Ingrese la temperatura a convertir: ";
  2. cin>>temp;
  3. cout<<"Si desea la temperatura en Fahrenheit presione f"
  4.    <<"o c si la desea en Celsius: ";
  5. cin>>letratemp;
  6. cout<<setiosflags (ios::fixed)
  7.    <<setiosflags (ios::showpoint)
  8.    <<setprecision(2);
Motivo del error: que cin endl ios setiosflags y cout pertenecen a la clase std. Posibles soluciones: o antepones std:: a todos los cin y cout o usas el namespace std para no tener que escribir std:: todas las veces:
Código
  1. using namespace std;
4. Otras cosas a tener en cuenta, no te voy a decir donde está el error para que lo investiges , el operador == es el de COMPARACIÓN y el = es el de ASIGNACIÓN.

Revisa tu código.

¡Un saludo! Avesudra.
7  Programación / Programación General / Re: Algoritmo simulador de batallas en: 15 Agosto 2013, 23:52
Teniendo en cuenta que estos IDE's tienen chat el IRC es un poco inútil, un foro o google groups estaría bien.

0xDani yo tambien prefiero un foro por el tema de la organización.
8  Programación / Programación General / Re: Algoritmo simulador de batallas en: 15 Agosto 2013, 16:27
Qué tal un grupo de Skype? O un IRC?
El problema es que en el grupo de Skype no puedes poner temas como en cualquier foro o en google groups.
9  Programación / Programación General / Re: Algoritmo simulador de batallas en: 15 Agosto 2013, 11:47
Sí, lo necesitamos. ¿Google Groups?
Saludos!
Me es indiferente, por mi vale :)

¡Un saludo!
10  Programación / Programación General / Re: Algoritmo simulador de batallas en: 15 Agosto 2013, 01:03
Confirmo.

@avesudra, en los setters, como este:

Código
  1. void        setID                           (std::string newID);

es mucho más óptimo pasar una referencia al objeto, en vez del objeto en sí mismo, para no hacer una copia local de un objeto que no se va a modificar. Para garantizar que no se modifique, también se suele poner el modificador const a la referencia, quedando así:

Código
  1. void        setID                           (const std::string& newID);

Saludos.
Tienes muchísima razón, voy a cambiarlo, voy a añadirle sobrecarga de operadores ya vereis para qué y me comentais, el caso es que deberiamos hacer algo para hablar, o un foro o un chat, prefiero un foro.
11  Programación / Programación General / Re: Algoritmo simulador de batallas en: 14 Agosto 2013, 00:31
Confirmo.

PD: ya he terminado las implementaciones y la documentación de todos los métodos setters y getters.
12  Programación / Programación C/C++ / Re: Duda c_str() en ejemplo libro Prata en: 13 Agosto 2013, 16:11
A un string no, es un puntero a un char vamos lo que retorna contiene es (char*) la dirección de una cadena, que será el parámetro ubicado en la posición numero.


13  Programación / Programación C/C++ / Re: Duda c_str() en ejemplo libro Prata en: 13 Agosto 2013, 16:02
Hola skan en ese caso no utiliza .c_str()  porque le pasa como argumento el parámetro o los parámetros que se le pasan al programa por consola.
14  Programación / Programación General / Re: Algoritmo simulador de batallas en: 13 Agosto 2013, 14:03
Sí, en principio no tengo problema en colaborar, tengo tiempo.

En el código que habéis puesto sugiero que se establezcan los atributos de las clases como privados, y métodos getters y setters.

Qué opináis de usar C++ 11?
Yo también voto por poner los atributos como privados, es más lo iba a publicar ahora. En  cuanto a lo de C++11 me parece una buena idea, así practicamos. Solo tengo el header de momento pero bueno, las funciones get ya están implementadas:
Código
  1. #ifndef UNITY_H
  2. #define UNITY_H
  3. #include <string>
  4.  
  5. class Unity
  6. {
  7.    public:
  8.        Unity();
  9.  
  10.        void        setID                           (std::string newID);
  11.        void        setGeneralType                  (std::string newType);
  12.        void        setName                         (std::string newName);
  13.        void        setNumberOfSoldiers             (int newNumberOfSoldiers);
  14.        void        setInjuredSoldiers              (int newInjuredSoldiers);
  15.        void        setMotivation                   (float newMotivation);
  16.        void        setPhysicalState                (float newPhysicalState);
  17.        void        setFavourableWeather            (std::string newFavourableWeather);
  18.        void        setHarmfulWeather               (std::string newHarmfulWeather);
  19.        void        setFavourableTerrain            (std::string newFavourableTerrain);
  20.        void        setHarmfulTerrain               (std::string newHarmfulTerrain);
  21.        void        setMeleeAttack                  (float newMeleeAttack);
  22.        void        setMeleeDefense                 (float newMeleeDefense);
  23.        void        setLongDistanceAttack           (float newLongDistanceAttack);
  24.        void        setLongDistanceDefense          (float newLongDistanceDefense);
  25.        void        setDiscipline                   (float newDiscipline);
  26.        void        setSpeed                        (float newSpeed);
  27.        void        setGeneralTypeFavourable        (std::string newGeneralTypeFavourable);
  28.        void        setGeneralTypeHarmful           (std::string newGeneralTypeHarmful);
  29.        void        setConcreteTypeFavourable       (std::string newConcreteTypeFavourable);
  30.        void        setConcreteTypeHarmful          (std::string newConcreteTypeHarmful);
  31.        void        setNutrition                    (float newNutrition);
  32.        void        setResistence                   (float newResistence);
  33.  
  34.        std::string getID()                         const{return id;}
  35.        std::string getGeneralType()                const{return generalType;}
  36.        std::string getName()                       const{return name;}
  37.        int         getNumberOfSoldiers()           const{return numberOfSoldiers;}
  38.        int         getInjuredSoldiers()            const{return numberOfInjuredSoldiers;}
  39.        float       getMotivation()                 const{return motivation;}
  40.        float       getPhysicalState()              const{return physicalState;}
  41.        std::string getFavourableWeather()          const{return favourableWeather;}
  42.        std::string getHarmfulWeather()             const{return harmfulWeather;}
  43.        std::string getFavourableTerrain()          const{return favourableTerrain;}
  44.        std::string getHarmfulTerrain()             const{return harmfulTerrain;}
  45.        float       getMeleeAttack()                const{return meleeAttack;}
  46.        float       getMeleeDefense()               const{return meleeDefense;}
  47.        float       getLongDistanceAttack()         const{return longDistanceAttack;}
  48.        float       getLongDistanceDefense()        const{return longDistanceDefense;}
  49.        float       getDiscipline()                 const{return discipline;}
  50.        float       getSpeed()                      const{return speed;}
  51.        std::string getGeneralTypeFavourable()      const{return generalTypeFavourable;}
  52.        std::string getGeneralTypeHarmful()         const{return generalTypeHarmful;}
  53.        std::string getConcreteTypeFavourable()     const{return concreteTypeFavourable;}
  54.        std::string getConcreteTypeHarmful()        const{return concreteTypeHarmful;}
  55.        float       getNutrition()                  const{return nutrition;}
  56.        float       getResistence()                 const{return resistence;}
  57.  
  58.        virtual ~Unity();
  59.  
  60.    private:
  61.  
  62.        std::string id;
  63.        std::string generalType;
  64.        std::string name;
  65.        int numberOfSoldiers;
  66.        int numberOfInjuredSoldiers;
  67.        float motivation;
  68.        float physicalState;
  69.        std::string favourableWeather;
  70.        std::string harmfulWeather;
  71.        std::string favourableTerrain;
  72.        std::string harmfulTerrain;
  73.        float meleeAttack;
  74.        float meleeDefense;
  75.        float longDistanceAttack;
  76.        float longDistanceDefense;
  77.        float discipline;
  78.        float speed;
  79.        std::string generalTypeFavourable;
  80.        std::string generalTypeHarmful;
  81.        std::string concreteTypeFavourable;
  82.        std::string concreteTypeHarmful;
  83.        float nutrition;
  84.        float resistence;
  85. };
  86.  
  87.  
  88. #endif // UNITY_H
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 47
Powered by SMF 1.1.19 | SMF © 2006-2008, Simple Machines