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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: [1] 2
1  Programación / PHP / Re: Se me ven los "echos" ayuda! en: 11 Marzo 2018, 22:54 pm
Tiene pinta de que no se está interpretando el código PHP, esto puede ocurrir porque no tengas instalado un servidor web por ejemplo, ¿como estás ejecutando el código?

Crea un fichero phpinfo.php y dentro pon únicamente:
Código
  1. <?php
  2.  

Y ejecútalo, a ver que pasa, si aparece el texto del fichero es que no se está ejecutando, qué servidor tienes instalado?
2  Programación / Programación C/C++ / Re: duda en: 11 Marzo 2018, 12:55 pm
Suponiendo que tienes una estructura algo así:
Código
  1. struct persona {
  2.    char nombre[20];
  3.    char sexo; // 'M' o 'H'
  4.    int fumador; // 1 o 0
  5.  

La condición quedaría así:
Código
  1. struct persona p;
  2. if (p.sexo == 'M' && p.fumador == 1) {
  3.    printf("%s\n", p.nombre);
  4. }
  5.  
3  Programación / Programación C/C++ / Re: Leer dos archivos csv en: 5 Marzo 2018, 00:49 am
Y el código? Qué dudas tienes?

EDITO: Te faltan datos amigo, del cliente solo tenemos el id en ese fichero y tu quieres imprimir TODA su información...
4  Programación / Programación C/C++ / Re: Leer dos archivos csv en: 5 Marzo 2018, 00:38 am
Soy nuevo en tu lenguaje

Necesito una respuesta que me diga qué llevas hecho, la estructura de los ficheros csv que estás leyendo gracias...
5  Programación / Programación C/C++ / Re: Presentación y exposición de dudas en: 26 Febrero 2018, 15:56 pm
No vas mal, deberías separar las tareas (como obtener media, moda, mediana y desviación) en funciones
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef unsigned short ushort;
  5.  
  6. void leer(float*, ushort);
  7. void ordenar(float*, ushort);
  8. void imprimir(float*, ushort);
  9.  
  10. float moda(float*, ushort);
  11. float media(float*, ushort);
  12. float mediana(float*, ushort);
  13. float desviacion(float*, ushort);
  14.  
  15. int main(void) {
  16.    const ushort longitud = 5;
  17.    float notas[longitud];
  18.  
  19.    leer(notas, longitud);
  20.    ordenar(notas, longitud);
  21.    imprimir(notas, longitud);
  22.  
  23.    printf(
  24.        "Menor: %.1f\n"
  25.        "Mayor: %.1f\n"
  26.        "Moda: %.1f\n"
  27.        "Media: %.1f\n"
  28.        "Mediana: %.1f\n"
  29.        "Desviación: %.1f\n",
  30.        notas[0],
  31.        notas[longitud - 1],
  32.        moda(notas, longitud),
  33.        media(notas, longitud),
  34.        mediana(notas, longitud),
  35.        desviacion(notas, longitud)
  36.    );
  37.  
  38.    return EXIT_SUCCESS;
  39. }
  40.  
  41. void leer(float* notas, ushort longitud) {
  42.    for(ushort nota = 0; nota < longitud; nota++) {
  43.        printf("Nota %hu > ", nota + 1);
  44.        scanf("%f", &notas[nota]);
  45.    }
  46. }
  47.  
  48. void ordenar(float *notas, ushort longitud) {
  49.    for(ushort vuelta = 1; vuelta < longitud; vuelta++) {
  50.        for(ushort nota = 0; nota < longitud - vuelta; nota++) {
  51.            if (notas[nota] > notas[nota + 1]) {
  52.                float actual = notas[nota];
  53.                notas[nota] = notas[nota + 1];
  54.                notas[nota + 1] = actual;
  55.            }
  56.        }
  57.    }
  58. }
  59.  
  60. void imprimir(float *notas, ushort longitud) {
  61.    for(ushort nota = 0; nota < longitud; nota++) {
  62.        printf("%.1f%s", notas[nota], nota < longitud - 1 ? ", " : "\n");
  63.    }
  64. }
  65.  
  66. float moda(float *notas, ushort longitud) {
  67.    float moda = 0, anterior = 0;
  68.    for (ushort vuelta = 0; vuelta < longitud; vuelta++) {
  69.        ushort repeticiones = 0;
  70.        for (ushort nota = 0; nota < longitud; nota++) {
  71.            if (notas[vuelta] == notas[nota]) {
  72.                repeticiones++;
  73.            }
  74.        }
  75.        if (repeticiones > anterior) {
  76.            anterior = repeticiones;
  77.            moda = notas[vuelta];
  78.        }
  79.    }
  80.    return moda;
  81. }
  82.  
  83. float media(float *notas, ushort longitud) {
  84.    float suma = 0;
  85.    for(ushort nota = 0; nota < longitud; nota++) {
  86.        suma += notas[nota];
  87.    }
  88.    return suma / longitud;
  89. }
  90.  
  91. float mediana(float *notas, ushort longitud) {
  92.    return
  93.        longitud % 2 != 0 ?
  94.        notas[(ushort) (longitud - 1) / 2] :
  95.        (notas[(longitud - 1) / 2] + notas[(longitud - 1) / 2 + 1]) / 2;
  96. }
  97.  
  98. float desviacion(float *notas, ushort longitud) {
  99.    float suma = 0;
  100.    for(ushort nota = 0; nota < longitud; nota++) {
  101.        suma += pow(notas[nota] - media(notas, longitud), 2);
  102.    }
  103.    return sqrt(suma/longitud);
  104. }
  105.  
6  Programación / Programación C/C++ / Re: duda numeros complejos ec segundo grado en: 20 Febrero 2018, 19:23 pm
En la wikipedia tienes las fórmulas, según este artículo el discriminante se representa por la letra "D"
https://es.wikipedia.org/wiki/Ecuaci%C3%B3n_de_segundo_grado#Discriminante

Dentro de la cabecera "complex.h" existe una macro llamada "I", que sí, se trata de la constante imaginaria
http://en.cppreference.com/w/c/numeric/complex

Código
  1. float discriminante(float a, float b, float c) {
  2.    sqrt(pow(b, 2) - 4 * a * c);
  3. }
  4.  
  5. float solucionRealDoble(float a, float b) {
  6.    return (-b / (2 * a));
  7. }
  8.  
  9. float solucionReal1(float a, float b, float D) {
  10.    return (-b + sqrt(D)) / (2 * a);
  11. }
  12.  
  13. float solucionReal2(float a, float b, float D) {
  14.    return (-b - sqrt(D)) / (2 * a);
  15. }
  16.  
  17. float solucionCompleja1(float a, float b, float D) {
  18.    return (-b / (2 * a)) + I * (sqrt(-D) / (2 * a));
  19. }
  20.  
  21. float solucionCompleja2(float a, float b, float D) {
  22.    return (-b / (2 * a)) - I * (sqrt(-D) / (2 * a));
  23. }
  24.  
7  Programación / Programación C/C++ / Re: Programa de votos en C en: 20 Febrero 2018, 19:13 pm
Perdón supuse que tenías que guardar en ficheros, pero si sabes manejar arrays seguramente debas resolver el problema por ese camino.

Ahora que ya tienes las estructuras, puedes empezar a preguntarte qué necesitas para trabajar:

- 1 array donde quepan 10 canciones
- 1 array donde quepan los oyentes (los oyentes, como puedes comprobar en las estructuras, ya almacenan sus 3 votos en su array de canciones)

Una vez tengas toda esa memoria reservada, el siguiente paso es pedir al usuario que ingrese toda esa información (canciones y oyentes) o ponerla directamente en el código para probar más fácil la aplicación.

Siguiente: recorrer el array de oyentes y sus arrays de canciones para determinar cuales son la 1ra y la 2da más votadas.

Siguiente: recorrer el array de oyentes y sus canciones para comprobar si habría que asignarle puntos por tener una de las canciones más votadas entre sus favoritas. Durante este recorrido podrías crear un array donde guardes la cedula del oyente y la suma de sus puntos (lo ideal sería un campo puntuacion en la estructura del oyente, el cual irías acumulando), para más tarde obtener la cédula del que mayor puntuación ha obtenido y mostrarlo en pantalla.
8  Programación / Programación C/C++ / Re: Programa de votos en C en: 20 Febrero 2018, 16:39 pm
Bastante verde sí...

Empieza por definir lo que necesitas, podrías definir una cabecera con los tipos de datos, no ibas mal con el "Oyente", pero seguramente la cedula sea una string (char[]), también te pide sus 3 canciones favoritas, etc...

Código
  1. //Género de las canciones
  2. typedef enum {
  3.    Pop, Rap, Rock, Romantica
  4. } Genero;
  5.  
  6. //Sexo de los oyentes
  7. typedef enum {
  8.    Femenino, Masculino, Otro
  9. } Sexo;
  10.  
  11. //Canción con los datos requeridos
  12. typedef struct {
  13.    unsigned short codigo;
  14.    char* nombre;
  15.    Genero genero;
  16. } Cancion;
  17.  
  18. //Oyente con los datos requeridos
  19. typedef struct {
  20.    char* cedula;
  21.    Sexo sexo;
  22.    unsigned short edad;
  23.    Cancion canciones[3];
  24. } Oyente;
  25.  

Ten en cuenta que para resolver este problema necesitas manejar ficheros y punteros por todos lados, así que ya puedes espabilar!
9  Programación / Programación C/C++ / Re: Programa de votos en C en: 20 Febrero 2018, 07:06 am
Está interesante!! Pero antes de nada queremos ver lo que tienes hecho y que dudas te atañen, un saludo!
10  Programación / Programación C/C++ / Re: Perimetro de cuadrado en: 20 Febrero 2018, 02:21 am
Compi, no se trata de que en 'main'' hagas todo el trabajo, debes repasar conceptos como 'encapsulación', los objetos son los que saben sobre sí mismos y como comportarse, echa un ojo, en main simplemente los creas y los muestras, incluso podríamos haberles dado la capacidad de imprimirse ellos solos (incluso sobrecargando el operador <<) pero es demasiado, repasa...

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Cuadrado {
  6. private:
  7.    float lado;
  8.  
  9. public:
  10.  
  11.    Cuadrado(float lado) {
  12.        this->lado = lado;
  13.    }
  14.  
  15.    float obtenerLado() {
  16.        return this->lado;
  17.    }
  18.  
  19.    float obtenerArea() {
  20.        return this->lado * this->lado;
  21.    }
  22.  
  23.    float obtenerPerimetro() {
  24.        return this->lado * 4;
  25.    }
  26.  
  27. };
  28.  
  29. int main(void) {
  30.    Cuadrado c1(2), c2(7);
  31.  
  32.    cout
  33.        << "Cuadrado 'c1'" << endl
  34.        << "Lado: " << c1.obtenerLado() << endl
  35.        << "Área: " << c1.obtenerArea() << endl
  36.        << "Perímetro: " << c1.obtenerPerimetro() << endl << endl;
  37.  
  38.    cout
  39.        << "Cuadrado 'c2'" << endl
  40.        << "Lado: " << c2.obtenerLado() << endl
  41.        << "Área: " << c2.obtenerArea() << endl
  42.        << "Perímetro: " << c2.obtenerPerimetro() << endl << endl;
  43. }
  44.  
Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines