martes, 13 de diciembre de 2016

ARREGLOS PRACTICA

#include<stdio.h>
#include<conio.h>
//inciso a
void introducir(int NUMEROS[10])
{
     printf("Introduciendo datos al arreglo\n");
     for (int i=0;i<10;i++)//contador i controla la posicion del arreglo
     {
         printf("Elemento en la posicion [%d]\n",i);
         scanf("%d",&NUMEROS[i]);
         }
     }
//inciso b
void imprimir (int NUMEROS[10])
{
     printf("Desplegando datos del arreglo\n");
     for (int i=0;i<10;i++)
     {
         printf("Elemento en la posicion [%d] =%d\n",i,NUMEROS[i]);
     }
 }
       //c
         int suma (int NUMEROS[10])
         {
                  int totsuma=0;//acumulador
                  for (int i=0;i<10;i++)
                  {
                      totsuma=totsuma+NUMEROS[i];
                  }
                  return totsuma;
                  }
         //d
         float promedio(int NUMEROS[10])
         {
               float p;
               p=float(suma(NUMEROS))/10;
               return (p);
             
         }
          //e
           void max_min(int NUMEROS[10])
           {
                int posmax=0, posmin=0;
                int max=NUMEROS[0],min=NUMEROS[0];//Referencia el primer elemnto al angulo
                for(int i=1;i<10;i++)
                {
                        if(max<NUMEROS[i])
                        {
                           max=NUMEROS[i];
                           posmax=i;
                        }
                        else if(min>NUMEROS[i])
                        {
                             min=NUMEROS[i];
                             posmin=i;
                        }
                }
         printf("El valor maximo del arreglo =%d ubicado en la posicion %d\n",max,posmax);
         printf("El valor minimo del arreglo =%d ubicado en la posicion %d\n",min,posmin);
                }                      
         //F
         void busqueda(int NUMEROS[10])
         {
              int N,cont=0;
              printf("Introduce el valor busqueda\n");
              scanf("%d",&N);
              for (int i=0;i<10;i++)
              {
                  if(N==NUMEROS[i])
                 
                  cont++;
                  }
               
              printf("El valor se repite =%d",cont);
         }    
       
         //g
         void ordenamientoascendente (int NUMEROS[10])
{
     int aux,f,g,h;
   
     for(f=0;f<9;++f)
     {
         for (g=0;g<9;++g)
         {
             if (NUMEROS[g]<NUMEROS[g+1])
             {
                aux=NUMEROS[g];
                NUMEROS[g]=NUMEROS[g+1];
                NUMEROS[g+1]=aux;
             }
         }
     }
     for(h=0;h<10;++h)
     {
        printf("El orden ascendente es=%i.\n",NUMEROS[h]);
     }
}        
void ordenamientodescendente (int NUMEROS[10])
{
     int aux1,f1,g1,h1;
   
     for(f1=0;f1<9;++f1)
     {
         for (g1=0;g1<9;++g1)
         {
             if (NUMEROS[g1]>NUMEROS[g1+1])
             {
                aux1=NUMEROS[g1];
                NUMEROS[g1]=NUMEROS[g1+1];
                NUMEROS[g1+1]=aux1;
             }
         }
     }
     for(h1=0;h1<10;++h1)
     {
        printf("El orden ascendente es=%i.\n",NUMEROS[h1]);
     }
}                
       
         int main ()
{
         int NUMEROS [10];//declaro arreglo
         introducir (NUMEROS);//llamada a la funcion
         imprimir(NUMEROS);//llamda a la funcion
         printf("La suma de los elementos =%d\n",suma(NUMEROS));
         printf("El promedio total es=%f\n",promedio(NUMEROS));
         max_min(NUMEROS);
         busqueda(NUMEROS);
         ordenamientoascendente(NUMEROS);
         ordenamientodescendente(NUMEROS);
       
         getch ();
         }
       

No hay comentarios:

Publicar un comentario