• Miércoles 17 de Abril de 2024, 01:41

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Erick_420

Páginas: [1]
1
C/C++ / Re:Violación de Segmento
« en: Miércoles 20 de Septiembre de 2017, 23:17 »
El código ya corregido esta aquí.



#include<stdio.h>
int main()
{
   int i,j,n,aux;
   printf("\n\t\tPrograma que acomoda n números de menor a mayorr\n\n");
   printf("\n\tIntroduce cuantos números\t ");
      scanf("%d",&n);
   int a[n];
   for (i=1;i<=n;i++)
   {
      printf("\n\tIntroduce un número\t");
         scanf("%d",&a);
   }
   for (i=2;i<=n;i++)
   {
      for(j=n;j>=i;j--)
      {
         if(a[j]>a[j-1])
         {
            aux=a[j];
            a[j]=a[j-1];
            a[j-1]=aux;
         }
      }
   }
   printf("\n\tLos números son:\n\t\t");
   for(i=1;i<=n;i++)
   {
      printf(" %d",a);
   }
   printf("\n");
   return 0;
}



2
C/C++ / Re:Violación de Segmento
« en: Miércoles 20 de Septiembre de 2017, 23:14 »
Gracias por responder.
El error de hecho ya lo solucioné y es precisamente en esa parte que mencionas
El arreglo de a[n] es posible, sólo que primero debes introducir n antes de declarar a[n]
ese era mi error, declaré a[n] antes de conocer el valor de n
Pero ya está solucionado.

3
C/C++ / Violación de Segmento
« en: Domingo 17 de Septiembre de 2017, 21:49 »
Hola a todos
El motivo del post es solicitar su ayuda.
Soy nuevo programando desde linux, programando en general.
Al realizar un programa que acomoda N números de forma ascendente (menor a menor), al ejecutarlo aparece Violación del segmento.
No puedo resolverlo.
Si alguien puede ayudar, se lo agradezco
Incluyo código en c


#include<stdio.h>
int main()
{
   int i,j,n,a[n],aux;
   printf("\tPrograma que acomoda n números de menor a mayorr\n\n");
   printf("Introduce cuantos números\t ");
      scanf("%d",&n);
   for (i=1;i<=n;i++)
   {
      printf("\nIntroduce un número\t");
         scanf("%d",&a[ i ]);
   }
   for (i=2;i<=n;i++)
   {
      for(j=n;j<=i;j--)
      {
         if(a[j]<a[j-1])
         {
            aux=a[j];
            a[j]=a[j-1];
            a[j-1]=aux;
         }
      }
   }
   for(i=1;i<=n;i++)
   {
      printf(" %d",a[  i ]);
   }
   return 0;
}

Páginas: [1]