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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  No Imprime
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: No Imprime  (Leído 3,998 veces)
hzre

Desconectado Desconectado

Mensajes: 5


Ver Perfil
No Imprime
« en: 23 Noviembre 2020, 18:44 pm »

Código
  1. #include<stdio.h>
  2. int main(void) {
  3.  // El arreglo
  4.  int arreglo[] = {28, 11, 96, -5, 21, 18, 12, 22, 30, 97, -1, -40, -500};
  5.  /*Calcular la longitud, puede ser definida por ti o calculada:*/
  6.  int longitud = sizeof arreglo / sizeof arreglo[0];
  7.  /*Imprimirlo antes de ordenarlo*/
  8.  printf("Imprimiendo arreglo antes de ordenar...\n");
  9.  for (int x = 0; x < longitud; x++) {
  10.    printf("%d ", arreglo[x]);
  11.  }
  12.  // Un salto de línea
  13.  printf("\n");
  14.  /*Invocar a quicksort indicando todo el arreglo, desde 0 hasta el índice final */
  15.  quicksort(arreglo, 0, longitud - 1);
  16.  /*Imprimirlo después de ordenarlo*/
  17.  printf("Imprimiendo arreglo despues de ordenar...\n");
  18.  for (int x = 0; x < longitud; x++)
  19.    printf("%d ", arreglo[x]);
  20.  return 0;
  21. }

Me marca error en quicksort, tengo la idea pero no se si me falte otra libreria o asi algo por el estilo


MOD: El código debe estar publicado entre etiquetas de Código GeSHi


« Última modificación: 23 Noviembre 2020, 23:08 pm por K-YreX » En línea

Danielㅤ


Desconectado Desconectado

Mensajes: 1.826


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: No Imprime
« Respuesta #1 en: 23 Noviembre 2020, 18:55 pm »

Hola, aquí está el error:

  printf("%d ", arreglo
);

Ese paréntesis no puede ir abajo así, dará error.


Saludos


« Última modificación: 23 Noviembre 2020, 18:58 pm por [D]aniel » En línea

hzre

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: No Imprime
« Respuesta #2 en: 23 Noviembre 2020, 18:58 pm »

quicksort(arreglo, 0, longitud - 1);

Este seria mi error mas bien
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.958


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: No Imprime
« Respuesta #3 en: 23 Noviembre 2020, 19:55 pm »

Te falta el codigo  ;D  Si uso Google para buscar el siguiente comentario lo encuentro completo: "/*Invocar a quicksort indicando todo el arreglo, desde 0 hasta el índice final */".
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
K-YreX
Moderador
***
Desconectado Desconectado

Mensajes: 1.008



Ver Perfil
Re: No Imprime
« Respuesta #4 en: 23 Noviembre 2020, 23:20 pm »

Me marca error en quicksort, tengo la idea pero no se si me falte otra libreria o asi algo por el estilo
Efectivamente, como dice Eternal Idol, lo que te falta es el código; es decir, la función. La función:
Código
  1. quicksort(int[], int, int);
no existe por lo que tienes que implementarla tú.
Eso es lo que pasa cuando se copia el código tal cual de Github.

PD: Espero por tu propio bien que ese programa no sea una tarea que tengas que entregar pues ya ves lo fácil que ha sido encontrar el código original.
En línea

Código
  1. cout << "Todos tenemos un defecto, un error en nuestro código" << endl;
Danielㅤ


Desconectado Desconectado

Mensajes: 1.826


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: No Imprime
« Respuesta #5 en: 23 Noviembre 2020, 23:54 pm »

Aquí está la función que falta (quicksort):

Código
  1. void quicksort(int arr[], int left, int right) {
  2.      int i = left, j = right;
  3.      int tmp;
  4.      int pivot = arr[(left + right) / 2];
  5.  
  6.      /* partition */
  7.      while (i <= j) {
  8.            while (arr[i] < pivot)
  9.                  i++;
  10.            while (arr[j] > pivot)
  11.                  j--;
  12.            if (i <= j) {
  13.                  tmp = arr[i];
  14.                  arr[i] = arr[j];
  15.                  arr[j] = tmp;
  16.                  i++;
  17.                  j--;
  18.            }
  19.      };
  20.  
  21.      /* recursion */
  22.      if (left < j)
  23.            quickSort(arr, left, j);
  24.      if (i < right)
  25.            quickSort(arr, i, right);
  26. }


Saludos
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.958


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: No Imprime
« Respuesta #6 en: 24 Noviembre 2020, 08:06 am »

Aquí está la función que falta (quicksort):

Por algo no la pusimos antes  :rolleyes:
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Por que no me imprime en mi fichero?
Java
negux 3 3,293 Último mensaje 13 Diciembre 2010, 20:01 pm
por .mokk.
Impresora imprime en blanco
Hardware
Ershin 5 7,085 Último mensaje 21 Enero 2011, 20:05 pm
por .:Snifer:.
No me imprime los decimales
Programación C/C++
Crutchlow_13 5 11,921 Último mensaje 7 Noviembre 2011, 01:01 am
por rir3760
imprime basura
Java
m@o_614 0 1,470 Último mensaje 15 Septiembre 2014, 01:27 am
por m@o_614
echo no imprime
PHP
BJM 4 1,960 Último mensaje 10 Febrero 2016, 18:16 pm
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines