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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Error en el programa
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error en el programa  (Leído 2,883 veces)
Eva93

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Error en el programa
« en: 30 Agosto 2013, 12:22 pm »

Código
  1. #include <stdio.h>
  2. #define DIM 100
  3.  
  4.  
  5. int maximo (int v[], int n);
  6. int minimo (int v[], int n);
  7.  
  8.  
  9. int main()
  10. {
  11.  double v[DIM];
  12.  int numeroValores, i;
  13.  
  14.  printf("Introduzca el número de valores a calcular:\n");
  15.  scanf("%d", &numeroValores);
  16.  printf("\n");
  17.  printf("Introduce los %d valores numéricos:\n", numeroValores);
  18.  for (i = 0; i < numeroValores; i++)
  19.  {
  20.    printf("Valor %d: ", i + 1);
  21. scanf("%lf", &v[i]);
  22.  }
  23.  
  24.  printf("maximo= %5.0lf \n" maximo (v, numeroValores));
  25.  printf("minimo= %5.0lf \n" minimo (v, numeroValores));
  26.  
  27. }
  28.  
  29.  


Estoy haciendo un programa en C para encontrar el maximo y el minimo valor dentro de una matriz, pero al compilarlo me pone que el máximo y el minimo siempre es 0, creo que el error esta en los printf antes de las funciones.

Espero que encuentren el error, gracias de antemano ^^


En línea

do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Error en el programa
« Respuesta #1 en: 30 Agosto 2013, 12:47 pm »

¡Buenas!

Tienes los prototipos de las funciones, pero te falta implementarlas...

¡Saludos!


En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Eva93

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: Error en el programa
« Respuesta #2 en: 30 Agosto 2013, 13:21 pm »

¡Buenas!

Tienes los prototipos de las funciones, pero te falta implementarlas...

¡Saludos!

Perdon tuve un problema de copypaste y no copie el programa entero >.<

Código
  1. #include <stdio.h>
  2. #define DIM 100
  3.  
  4.  
  5. int maximo (int v[], int n);
  6. int minimo (int v[], int n);
  7.  
  8.  
  9. int main()
  10. {
  11.  double v[DIM];
  12.  int numeroValores, i;
  13.  
  14.  printf("Introduzca el número de valores a calcular:\n");
  15.  scanf("%d", &numeroValores);
  16.  printf("\n");
  17.  printf("Introduce los %d valores numéricos:\n", numeroValores);
  18.  for (i = 0; i < numeroValores; i++)
  19.  {
  20.    printf("Valor %d: ", i + 1);
  21. scanf("%lf", &v[i]);
  22.  }
  23.  
  24.  printf("maximo= %5.0lf \n" maximo (v, numeroValores));
  25.  printf("minimo= %5.0lf \n" minimo (v, numeroValores));
  26.  
  27. }
  28.  
  29.  
  30.  
  31.  
  32. int minimo (int v[], int n)
  33. {
  34.  int i;
  35.  double min;
  36.  
  37.  min = v[0];
  38.  for (i = 1; i < n; i++)
  39.    if (v[i] < min)
  40.  min = v[i];
  41.  return (min);
  42. }
  43.  
  44. int maximo (int v[], int n)
  45. {
  46.  int i;
  47.  double max;
  48.  
  49.  max = v[0];
  50.  for (i = 1; i < n; i++)
  51.    if (v[i] > max)
  52.  max = v[i];
  53.  return (max);
  54. }
  55.  
En línea

do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Error en el programa
« Respuesta #3 en: 30 Agosto 2013, 13:43 pm »

¡Buenas!

Lo mas gordo que se ve, y por esto no debería de compilar, es:

1: Dices que máximo y mínimo van a recibir vectores de enteros, pero les estás pasando un vector de double.

2: Dices que las dos funciones devuelven un valor entero, pero en printf estás utilizando el especificador de conversión de double.

3: En los dos últimos printf no has puesto la coma para separar los argumentos.

4: No se si me he dejado algo.  :P

Cambia eso y nos cuentas.

¡Saludos!

PD: Vaya tirón de orejas que te iba a dar Angel Francés si te vieses haciendo esto... (o igual es Ricardo el que te da la asignatura).
« Última modificación: 30 Agosto 2013, 13:46 pm por do-while » En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Eva93

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: Error en el programa
« Respuesta #4 en: 30 Agosto 2013, 18:48 pm »

"creo" que ya he arreglado lo que has dicho, ya no me saltan errores ni recomendaciones pero... a la hora de mostrarlo por pantalla me sigue saliendo max=0
min= 0
ahora realmente si que estoy perdida.

dejo la correccion:

Código
  1. #include <stdio.h>
  2. #define DIM 100
  3.  
  4.  
  5. int maximo (int v[], int n);
  6. int minimo (int v[], int n);
  7.  
  8.  
  9. int main()
  10. {
  11.  int v[DIM];
  12.  int numeroValores, i;
  13.  
  14.  printf("Introduzca el número de valores a calcular:\n");
  15.  scanf("%d", &numeroValores);
  16.  printf("\n");
  17.  printf("Introduce los %d valores numéricos:\n", numeroValores);
  18.  for (i = 0; i < numeroValores; i++)
  19.  {
  20.    printf("Valor %d: ", i + 1);
  21. scanf("%lf", &v[i]);
  22.  }
  23.  
  24.  printf("maximo= %5.0lf \n" , maximo (v, numeroValores));
  25.  printf("minimo= %5.0lf \n" ,  minimo (v, numeroValores));
  26.  
  27. }
  28.  
  29.  
  30.  
  31.  
  32. int minimo (int v[], int n)
  33. {
  34.  int i;
  35.  int min;
  36.  
  37.  min = v[0];
  38.  for (i = 1; i < n; i++)
  39.    if (v[i] < min)
  40.  min = v[i];
  41.  return (min);
  42. }
  43.  
  44. int maximo (int v[], int n)
  45. {
  46.  int i;
  47.  int max;
  48.  
  49.  max = v[0];
  50.  for (i = 1; i < n; i++)
  51.    if (v[i] > max)
  52.  max = v[i];
  53.  return (max);
  54. }
  55.  


PD: todos los programitas los hemos hecho con Richi xD, por casualidad ese tal angel es un tipo que siempre lleva una cantimplora?
En línea

do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: Error en el programa
« Respuesta #5 en: 30 Agosto 2013, 18:53 pm »

¡Buenas!

No has cambiado los especificadores de conversión de printf. Siguen siendo los de double. Cambia eso y te dará el resultado correcto.

¡Saludos!
En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Eva93

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Re: Error en el programa
« Respuesta #6 en: 30 Agosto 2013, 19:15 pm »

Al fin me sale el programa, el problema estaba en que tenia uno original en double, y al pasarlo a int tenia esos problemas -.-, bueno gracias por la ayuda  :P :rolleyes:
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error en programa
.NET (C#, VB.NET, ASP)
zhynar_X 4 3,794 Último mensaje 8 Mayo 2007, 15:35 pm
por zhynar_X
Error en programa c++
Programación C/C++
z_ane_666 1 3,584 Último mensaje 9 Diciembre 2010, 15:50 pm
por winroot
programa en c++ el programa me da un error dice que la llave correspondiente a {
Programación C/C++
eduardo17445 2 4,772 Último mensaje 5 Junio 2012, 19:51 pm
por eduardo17445
Error en programa
Programación C/C++
apoeti 6 2,790 Último mensaje 7 Septiembre 2012, 18:29 pm
por apoeti
Programa error « 1 2 »
Programación C/C++
elkiy 11 7,396 Último mensaje 19 Febrero 2013, 18:59 pm
por elkiy
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines