miércoles, 31 de mayo de 2017

Programa y codigo en C con funciones y metodos que divide un número en partes

#include <stdio.h>
#include <conio.h>
#include <math.h>

int determinadigitos(int numero);
void separadigitos(int num,int tn);
int separaDigitos(int num, int tdigitos, int pot);
int main(){
    int numero,digitos;
        printf("DAME UN NUMERO: ");
        scanf("%i",&numero);
            digitos=determinadigitos(numero);
            separadigitos(numero,digitos);
        getch();
    return 0;
    }

//------------------------------------------------------------------------------
int determinadigitos(int numero){
    int contador=2,cociente,divisor=10;
   do{
           cociente=numero/divisor;
          if(cociente==0){
                return contador-1;
          }   
           else {
            contador++;
            divisor=pow(10,contador-1);
           }
    }
   while(cociente!=0);

}
//-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
    void separadigitos(int num,int tn){
          int cociente,residuo,i;
   for(i=tn;i>=1;i--){
       cociente=num/pow(10,i-1);
       residuo=num%(int)pow(10,i-1);
       printf("%i \n",cociente);
       num=residuo;
       }
    }
    int separaDigitos(int num, int tdigitos, int pot){
        int cociente,residuo,j, suma=0, contador=0;
        for(j=tdigitos; j>=1;j--){
            cociente=num/pow(10,j-1);
            residuo=num%(int)pow(10,j-1);
            suma=suma+cociente;
            num = residuo;
        }
        return(pow(suma,pot));
           
    }


   

Programa y codigo en C que imprime una linea de cantidad N de unos en diagonal desde usuario

#include <stdio.h>
#include <conio.h>

void dibujaSerie3(int lado);
int main(){
  int n;
  printf("n? ");
  scanf("%i",&n);
  dibujaSerie3(n);
  getch();
  return 0;
}

void dibujaSerie3(int lado){
   int fila,columna;
   for(fila=1;fila<=lado;fila++){
     for(columna=1;columna<=lado;columna++){
        if(fila==columna){
           printf("1\t");
        }
        else
        printf("0\t");
     }
     printf("\n");
   }
}



Programa y Codigo en C que crea un cuadrado con números en incrementos desde el usuario

#include <stdio.h>
#include <conio.h>

void dibujaSerie4(int fil,int col,int ini,int inc);
int main(){
  int n,fila,columna,inicio,incremento;
  printf("filas? ");
  scanf("%i",&fila);
  printf("columnas? ");
  scanf("%i",&columna);
  printf("inicio? ");
  scanf("%i",&inicio);
  printf("incremento? ");
  scanf("%i",&incremento);
  dibujaSerie4(fila,columna,inicio,incremento);
  getch();
  return 0;
}

void dibujaSerie4(int fil,int col,int ini,int inc){
   int fila,columna;
   int aux=ini;
   for(fila=1;fila<=fil;fila++){
      for(columna=1;columna<=col;columna++){
        printf("%i\t",aux);
        aux=aux+inc;
     }
     aux=aux-(inc*(col-1));
     printf("\n");
   }
}


Programa con codigo C que imprime un cuadrado con números en aumento de 3

#include <stdio.h>
#include <conio.h>

void dibujaSerie2(int lado);
int main(){
  dibujaSerie2(4);
  getch();
  return 0;
}

void dibujaSerie2(int lado){
   int fila,columna;
   int aux=3;
   for(fila=1;fila<=lado;fila++){
     for(columna=1;columna<=lado;columna++){
        printf("%i\t",aux);
        aux=aux+3;
     }
     aux=aux-9;
     printf("\n");
   }
}