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


 


Tema destacado: [Encuesta] ¿Qué editor de código utilizas? (2014)    


  Mostrar Mensajes
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 52
1  Programación / Programación C/C++ / Re: Como convertir int a string y viceversa? en: Ayer a las 21:48
Bueno entonces si se usa std::string no es mejor usar std::stoi ( C++ 11 ).
Sin duda, no sabía de su existencia, gracias x64Core

Saludos  :rolleyes:
2  Programación / Programación C/C++ / Re: Como convertir int a string y viceversa? en: 26 Noviembre 2014, 00:56
La funciones que andas buscando es esta:
Código
  1. string std::to_string (int val);
  2. string std::to_string (long val);
  3. string std::to_string (long long val);
  4. string std::to_string (unsigned val);
  5. string std::to_string (unsigned long val);
  6. string std::to_string (unsigned long long val);
  7. string std::to_string (float val);
  8. string std::to_string (double val);
  9. string std::to_string (long double val);
Para convertir de int a string utiliza la función:
Código
  1. long int strtol (const char* str, char** endptr, int base);
Saludos.
3  Programación / Programación C/C++ / Re: Por que ésta pequeña función de invertir una lista enlazda funciona? en: 25 Noviembre 2014, 01:01
Hola ShadowA7X, es un código muy limpio y la verdad bastante bueno. Te pongo un ejemplo práctico de lo que hace el algoritmo. Tenemos una lista con 4 nodos (o lista da igual como los llames):

P Q R S

Sabemos que esos nodos tienen un puntero al nodo siguiente, y esos estan tal que asi:
P -> Q , Q -> R , R -> S y S -> NULL

(entendiendo esa flechita por, "el nodo P tiene un puntero que apunta a Q")

Lo que hace esto es invertir el sentido, es decir, que P apunte a NULL, Q apunte a P , R apunte a Q y S apunte a R. (entendiendo por apuntar, que el nodo tiene un puntero que apunta a otro nodo). Realmente no modifica la lista en sí, sino a quienes apuntan sus nodos, el meollo del asunto está aqui:
Código
  1. next=aux->sgte;
  2. aux->sgte=*inicio;

Saludos.
4  Programación / Programación C/C++ / Re: en: 21 Noviembre 2014, 16:25
Hombre lo de poner nombre a las variables no se si se puede hacer, creo que no, lo que si puedes hacer es ir declarando punteros y reservando memoria y guardando esos punteros en un vector que luego eliminas, en ese caso es el segundo codigo que te he puesto. Tambien puedes hacer lo que te comenta Miky.
5  Programación / Programación C/C++ / Re: C++ Crear variables y objetos en tiempo de ejecución en: 21 Noviembre 2014, 10:42
No entiendo bien tu pregunta, si ya tienes definidas las cadenas en una variable ¿para qué quieres otras? , o quieres decir esto:
Código
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. int main(int argc, char *argv[])
  5. {
  6.    std::string sValores[3] = {"uno", "dos", "tres"};
  7.  
  8.    //Creamos las variables a partir de sValores
  9.    std::string cadenaUno  = sValores[0];
  10.    std::string cadenaDos  = sValores[1];
  11.    std::string cadenaTres = sValores[2];
  12.  
  13.    // O a un array constante de caracteres.
  14.    const char *cCadenaUno  = sValores[0].c_str();
  15.    const char *cCadenaDos  = sValores[1].c_str();
  16.    const char *cCadenaTres = sValores[2].c_str();
  17.  
  18.    std::cout << cadenaUno  << std::endl;
  19.    std::cout << cadenaDos  << std::endl;
  20.    std::cout << cadenaTres << std::endl;
  21.  
  22.    std::cout << cCadenaUno  << std::endl;
  23.    std::cout << cCadenaDos  << std::endl;
  24.    std::cout << cCadenaTres << std::endl;
  25.  
  26.    return EXIT_SUCCESS;
  27. }
O quizás te refieras a esto:
Código
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <string>
  4. #include <vector>
  5.  
  6. using namespace std;
  7.  
  8. int main(int argc, char *argv[])
  9. {
  10.    string sValores[3] = {"uno", "dos", "tres"};
  11.    vector<string*> variablesNuevas;
  12.    //Creamos las variables a partir de sValores
  13.    for(int i = 0; i!= sizeof(sValores)/sizeof(string); ++i)
  14.    {
  15.        string * tmp = new string(sValores[i]);
  16.        variablesNuevas.push_back(tmp);
  17.    }
  18.  
  19.    for(vector<string*>::iterator it = variablesNuevas.begin(); it != variablesNuevas.end(); ++it)
  20.    {
  21.        cout << **it << endl;
  22.        // Liberamos memoria
  23.        delete *it;
  24.    }
  25.  
  26.    return EXIT_SUCCESS;
  27. }
6  Programación / Programación C/C++ / Re: S.O.S : Programa que solucione sistemas Lineales x método de Gauss :) en: 20 Noviembre 2014, 21:13
Crea una matriz con los coeficientes de las ecuaciones y ya aplicas gauss, resta las filas a lo bestia, aquí puedes multiplicar una fila por 253 si hace falta. De todas maneras despues de aplicar gauss puedes aplicar gauss-jordan y te da las soluciones del sistema.

Un saludo.
7  Programación / Programación C/C++ / Re: Por favor ayuda con un programa en C, números primos en: 8 Noviembre 2014, 19:01
Poneis los códigos tan inentendibles que casi no puedo leerlos jajaja dejo el mío:

EDITO: CORREGIDO GRACIAS crack81 por avisar.

Código
  1. #include <stdio.h>
  2. #include <stdint.h>
  3. #include <stdlib.h>
  4. #include <math.h>
  5.  
  6. /**
  7.  *  \brief Función que calcula los primos que hay que sumar para llegar a un
  8.  *         numero.
  9.  *  \param number Numero al que hay que calcularle esos primos.
  10.  */
  11. void sumOfPrimes(uint64_t number);
  12.  
  13. /**
  14.  *  \brief Función que determina si un numero es primo o no lo es.
  15.  *  \param number Numero al que hay que determinarle su primalidad.
  16.  *  \return Esta función devolvera 1 si el numero es primo o 0 si no lo es.
  17.  */
  18. int  isPrime    (uint64_t number);
  19.  
  20. int main(int argc, char** argv)
  21. {
  22.    uint64_t number;
  23.    printf("Introduzca un numero: ");
  24.    scanf("%llu", &number);
  25.    sumOfPrimes(number);
  26.    return 0;
  27. }
  28.  
  29.  
  30. void sumOfPrimes(uint64_t number)
  31. {
  32.    // Si el numero es primo la suma ya esta hecha.
  33.    if(isPrime(number))
  34.        printf(" %llu", number);
  35.    else
  36.    {
  37.        uint64_t sum = 0;           // Variable para albergar la suma que vamos
  38.                                    // realizando.
  39.        uint64_t iterator = number;  // Iterador de numeros primos.
  40.        /* Si el iterador es par lo disminuimos en una unidad, porque un numero
  41.          * par nunca va a ser primo y así ganamos eficiencia.
  42.          */
  43.  
  44.        if(iterator%2 == 0)
  45.                    --iterator;
  46.        while(sum != number)
  47.        {
  48.            if(isPrime(iterator))
  49.            {
  50.                sum += iterator;
  51.                printf(" %llu", iterator);
  52.                iterator = number - sum;
  53.                if(iterator%2 == 0)
  54.                    --iterator;
  55.            }
  56.            /* Decrementamos iterator en dos porque un numero par no es primo y
  57.              * por tanto no nos interesa.
  58.              */
  59.            else
  60.                iterator -= 2;
  61.        }
  62.    }
  63. }
  64. int  isPrime    (uint64_t number)
  65. {
  66.    // El uno es primo.
  67.    if(number == 1)
  68.        return 1;
  69.    // El dos es primo.
  70.    if(number == 2)
  71.        return 1;
  72.    // Todos los numeros pares no son primos.
  73.    if(number % 2 == 0)
  74.        return 0;
  75.    uint64_t sqr = (uint64_t) sqrt(number);
  76.  
  77.    /*  Si el numero que da la raiz es par, lo decrementamos en una unidad pues
  78.      *  solo nos interesan los numeros impares, ya que un numero impar no es di
  79.      *  visible por un numero par.
  80.      */
  81.    if(sqr % 2 == 0)
  82.        --sqr;
  83.  
  84.    while (sqr > 1)
  85.    {
  86.        if( number % sqr == 0)
  87.            return 0;
  88.        sqr -= 2;
  89.    }
  90.    return 1;
  91. }
8  Programación / Programación C/C++ / Re: Por favor ayuda con un programa en C, números primos en: 8 Noviembre 2014, 18:14
Me alegra tu opinión y , efectivamente se puede mejorar pero tal como indicas, no es plan de hacerle la tarea con virguerias.   ;)

Un fuerte saludo amigo crack81.

¡¡¡¡ Saluditos! ..... !!!!



Se puede afinar incluso un poquito más, descartando los impares del iterador. Pero no sé si poner el codigo, por lo de la tarea y eso..
9  Foros Generales / Foro Libre / Re: ¿qué matrial irradia mas calor? en: 6 Noviembre 2014, 22:38
Ah, pues ahora me ha entrado la curiosidad, cuál es el material que menos absorbe?
Creo que la cerámica.
10  Programación / Programación C/C++ / Re: en: 2 Noviembre 2014, 15:13
Hace tiempo hice un tutorial de como compilar las librerias qt, pero no se si con las nuevas versiones servirá.
11  Programación / Programación C/C++ / Re: estructuras dinamicas en: 2 Noviembre 2014, 11:00
Hola MessageBoxA, está bien que des el código que llevas hasta ahora pero tiene que ser una duda concreta, ¿en que parte te quedas trabado?

Aprovecho para decirte que tu estructura no está completa si no me equivoco. Además, el enunciado te pide el programa en lenguaje C y tu has hecho una mezcla de C y C++ en tu código agregando la biblioteca conio.h que NO es portable.

Saludos.
12  Foros Generales / Sugerencias y dudas sobre el Foro / Re: ¿Hay posibilidad de habilitar o incluir MathJax? en: 1 Noviembre 2014, 13:56
Hola el-brujo, como ya te comenté no tengo ningún conocimiento sobre SMF ni PHP ni nada de nada. Sin embargo monté un foro de ejemplo con SMF 2.0.9 y para añadir MathJax lo que tuve que hacer es entrar en el directorio Sources y en el archivo Subs.php (supongo que será igual en SMF 1.1.x) , luego después de este código:
Código
  1. <script type="text/javascript"><!-- // --><![CDATA[
  2.        var smf_scripturl = "' . $scripturl . '";
  3. // ]]></script>';
Añadir esto:
Código
  1. echo "<script type='text/javascript' src='http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script>";
  2. echo "<script type='text/javascript'>MathJax.Hub.Config({tex2jax:{inlineMath: [['$','$']],processEscapes: true}});</script>";
Así al poner por ejemplo lo siguiente:

$$\int\frac{dx}{x^2-2}$$

Te saldría la integral de 1/(x^2-2) en condiciones(en forma presentada, es decir en medio del post). Si pones doble dólar sale en forma presentada, si pones simple dólar no te separa el párrafo y te pone lo que sea en la misma línea en la que estás escribiendo.

Lo saqué de aquí: http://wiki.math.toronto.edu/TorontoMathWiki/index.php/Forum . Aun así es añadir dos líneas de javascript, no mucho más.

(Acabo de mirar el Subs.php en SMF 1.1.19 y es igual la línea tras la que hay que poner eso)

Un cordial saludo el-brujo y gracias por soportar mi ignorancia  :silbar:.
13  Programación / Programación C/C++ / Re: Duda tonta switch en: 30 Octubre 2014, 18:20
seguro??


Código
  1. switch(opcion){
  2.  
  3.    case 'a':
  4.    case 'A':
  5.          printf("La suma de %g + %g = %g ",num1,num2,num1+num2);            
  6.                 break;
  7.  
  8.  
  9.    }
Es cierto que en el caso del operador de disyunción puedes hacer ese amaño para solucionarlo. Aun así con el operador lógico conjuntivo no te funciona y habría que usar otras maneras. Lo que debe quedar bien claro aquí es que detras del case no puede haber ninguna expresión que contega variables a ser evaluadas lógicamente, solo un valor constante.

Muy inteligente eferion  ;-)

Un cordial saludo.
14  Programación / Programación C/C++ / Re: Duda tonta switch en: 30 Octubre 2014, 18:08
En pocas palabras, no.

Saludos.
Páginas: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 52
Powered by SMF 1.1.19 | SMF © 2006-2008, Simple Machines