lunes, 23 de noviembre de 2020

UNIDAD 5

 PROGRAMAS U5  

Programa 1.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    //declaracion de arreglo unidimencional

    double x[3];   // x dato de tipo double;

    float c[5];

    int p[2];

    char ape[15];

    x[0]=7;

    x[1]=78.90;

    x[2]=1234567.0987654;

    //x[3]=5; overflow, se sale de los parametros

    printf("prog1U5!\n");

    return 0;

}


Programa 2.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    int z[4];

    int r;

    printf("prog2U5 asignar valores en arreglos\n");

    z[0]=12, z[1]=4;

    z[2]=z[0]+2*z[1];

    z[3]=z[2]++;

    for(r=0;r<4;r++){

        printf("    %i\n",z[r]);

    }

    return 0;

}


Programa 3.

#include <stdio.h>

#include <stdlib.h>
int main()
{
    double y[3]={7,0.5,-2.718};
    int i;
    printf("asignar valores en arreglos!\n");
    //printf("%.2f\n",y[0]);
    for(i=0;1<3;i++)
    {
        printf("%.2f \n",y[i]);
    }
    return 0;
}


Programa 4.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    double y[]={7,0.58,-12.36987,54,-89.36}; //double para todos los numeros

    int i,tam,tam2,lon;

    printf("asignar valores 3!\n");

    tam=sizeof(y);

    tam2=sizeof(y[0]);

    printf("tamaño es: %d\n",tam);

    printf("tamaño2 es: %d\n",tam2);

    lon=tam/tam2; //formula para sacar la longitud porque la desconozco

    printf("longitud es: %d\n",lon);

    for(i=0; i<lon;i++)

    {

        printf("%f\n",y[i]);

    }

/*https://parzibyte.me/blog/2018/09/21/longitud-de-un-arreglo-en-c/#Obtener_longitud_de_un_arreglo_en_C

informacion de la formula

http://www.it.uc3m.es/pbasanta/asng/course_notes/ch06s04.html

es la funcion sizeof*/

    return 0;

}


Programa 5.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    char mensaje[]="Todo bien";

    int i;

    size_t lon;

    printf("Programa 5\n");

    lon=sizeof(mensaje)/sizeof(mensaje[0]); //para sacar la longitud del arreglo

    printf("%d \n",lon);

    for(i=0;i<lon;i++)

    {

        printf("posicion %i, %c\n",i,mensaje[i]); //aqui imprime caracter de cada posicion

    } //al final de la cadena se toma en cuenta el "/0" que es null, por eso son 10

    puts("  ");

    printf("Completo: %s\n",mensaje); //aqui esta completo el mensaje

    return 0;

}



Programa 6.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    printf("prog6U5 Declaracion arreglos 4\n");

    char men[10]={'T','o','d','o',' ','b','i','e','n','\0'};

    int men1[10];

    men1[0]='T';

    men1[1]='o';

    puts("...");

    men1[10]='\0';


    return 0;

}


Programa 7.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    int i;

    printf("prog7U5\n");

    int num[10];

    //el for es para capturar

    for(i=0;i<10;i++){

        puts("Dame un numero");

        scanf("%i",&num[i]);

    }

    //el for imprime para visualizar

    for(i=0;i<10;i++){

        printf("%i ",num[i]);

    }

    return 0;

}


Programa 8.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    char nom[5];

    int i;

    printf("prog8U5\n");

    puts("Dame un nombre");

    //El siguiente comentario no se puede

    /*for(i=0;i<5;i++){

        scanf("%s",&nom[i]);

    }

    for(i=0;i<5;i++){

        printf("%s",nom[i]);

    }*/

    scanf("%s",nom);

    printf("Nombre dado es: %s",nom);

    return 0;

}


Programa 9.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    int i,n;

    printf("prog9U5\n");

    puts("De el tamaño del vector");

    scanf("%d",&n);

    float x[n];

    for(i=0;i<n;i++){

        printf("valor dado %f\n",i);

        scanf("%f",x[i]);

    }


    return 0;

}


Programa 10.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    int i, n;

    printf("prog10U5\n");

    puts("Dame el tamanio:");

    scanf("%i",&n);

    int arr[n];

    for(i=0;i<n;i++){

        printf("%i: \n",i);

        scanf("%i",&arr[i]);

    }

    for(i=0;i<n;i++){

        printf("%i",arr[i]);

    }

    return 0;

}


Programa 11.

#include <stdio.h>

#include <stdlib.h>


/*pedir 5 nombres de estudiantes y luego el numero de calificaciones de cada

estudiante y promedio*/

int main()

{

    typedef char letrasest[20];

    int ne,i;

    puts("Cuantos estudiantes son");

    scanf("%i",&ne);

    letrasest est[ne];

    printf("estudiantes son: %i\n",ne);

    for(i=0;i<ne;i++)

    {

        printf("Dame el nombre del estudiante en la posicion %i\n",i);

        scanf("%s",est[i]); //para capturar

    }

     for(i=0;i>ne;i++)

    {

        printf("estudiante en la posicion %i es: %s\n",est[i]);

    }

    return 0;

}


Programa 12.

#include <stdio.h>

#include <stdlib.h>

/*en arreglo guardar articulos, en otro precios, en otro el

total a pagar sin iva*/

int main()

{

    int tm;

    puts("cuantos articulos diferentes son: ");

    scanf("%i",&tm);

    int art[tm]; float precio[tm];

    float pago[tm];

    int i;

    for(i=0;i<tm;i++){

        printf("cuantos articulos de mercancia %i son?= ",i+1);

        scanf("%i",&art[i]);

        printf("precio del articulo %i= ",i+1);

        scanf("%f",&precio[i]);

    }

    for(i=0;i<tm;i++)

    {

        pago[i]=art[i]*precio[i];

    }

    for(i=0;i<tm;i++)

    {

        printf("pago de mercancia %i= %.2f\n",i+1,pago[i]);

    }

    return 0;

}


Programa 13.

#include <stdio.h>

#include <stdlib.h>


/*printf("Dame un numero para elevarlo al cuadrado");

    scanf("%d",&num);

    elev=(pow(num,2));

#include  <math.h>*/

int main()

{

    int tx;

    puts("Deme el numero de items para x");

    scanf("%i",&tx);

    float x[tx];

    int i;

    for(i=0;i<tx;i++)

    {

        printf("Deme el valor de item = \n");

        scanf("%f",&x[i]); /*la mascara es muy importante!*/

    }

    for(i=0;i<tx;i++)

    {

        printf("%.1f elevado al cuadrado es= %.2f\n",x[i],(x[i]*x[i]));

        printf(" %.1f +5 es= %.2f\n",x[i],(x[i] +5 ));

        printf("%.1f cuadrada + %.2f +5= %.2f\n",x[i],(x[i]*x[i])+(x[i]+5));

    }

    return 0;

}


Programa 14.

#include <stdio.h>

#include <stdlib.h>

    /*en un arreglo guardamos los articulos,

    en otro arreglo los precios,

    guardamos en un 3er arreglo

    el total a pagar sin iva

    cuantos articulos en total: 4

    articulos       precio      pago

    2               20          40

    3               30          90

    4               100         400

    5               10          50

    */

int main()

{

    printf(" programa 14 factura!\n");

    puts("Articulos disponibles");

    int op,i,j,suma,preciot,iva;


    int producto [4][3];

    producto[0][1]=12;

    producto[1][1]=17; 

    producto[2][1]=34;

    producto[3][1]=52;

   do

    {

     puts("1.- Sopa         $12");

     puts("2.- Tortillas    $17");

     puts("3.- Frijoles     $34");

     puts("4.- Peras        $52");

     puts("5.- SALIR");

     puts("Ingrese el producto a agregar:");

     scanf("%i",&op);

    switch(op)

    {

    case 1:

        do

        {

            puts("Ingrese el numero de sopas"); 

            scanf("  %i",&producto[0][0]);

            puts(" ");

        }while(producto[0][0]<0 || producto[0][0]>100);

        break;

    case 2:

         do

        {

            puts("Ingrese el numero de tortillas");

            scanf("%i",&producto[1][0]);

            puts(" ");

        }while(producto[1][0]<0 || producto[1][0]>100);

        break;

    case 3:

         do

        {

            puts("Ingrese el numero de frijoles");

            scanf("%i",&producto[2][0]);

            puts(" ");

        }while(producto[2][0]<0 || producto[2][0]>100);

        break;

    case 4:

         do

        {

            puts("Ingrese el numero de peras");

            scanf("%i",&producto[3][0]);

            puts(" ");

        }while(producto[3][0]<0 || producto[3][0]>100);

        break;

    default:

        puts("      Escogio SALIR del menu.");

        puts(" ");

    }

    }while((op>=1 && op<5));

    puts("Productos seleccionados");

    printf("   %c %i sopas\n",251,producto[0][0]);

    printf("   %c %i tortillas \n",251,producto[1][0]);

    printf("   %c %i frijoles \n",251,producto[2][0]);

    printf("   %c %i peras \n",251,producto[3][0]);

    puts(" ");

    suma= ( (producto[0][0]* producto[0][1]) + (producto[1][0]* producto[1][1]) + (producto[2][0]* producto[2][1]) + (producto[3][0]* producto[3][1]) );

    iva= (suma + (suma*.16));

    preciot= (iva+suma);

    puts("--------------------------------------------------------");

    puts("Producto     N Articulos    Precio/u        Precio/m");

    printf("SOPA        %i              $ %i            $ %i\n",producto[0][0], producto[0][1], producto[0][0]* producto[0][1]);

    printf("TORTILLAS   %i              $ %i            $ %i\n",producto[1][0], producto[1][1], producto[1][0]* producto[1][1]);

    printf("FRIJOLES    %i              $ %i            $ %i\n",producto[2][0], producto[2][1], producto[2][0]* producto[2][1]);

    printf("PERAS       %i              $ %i            $ %i\n",producto[3][0], producto[3][1], producto[3][0]* producto[3][1]);

    puts(" ");

    printf("IVA= $ %i\n",iva);

    printf("TOTAL  A PAGAR= $ %i\n",preciot);

    puts("--------------------------------------------------------");

    return 0;

}


Programa 15.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    //matriz tiene tipo, identificador[renglones][columnas];

    float m[12][8];

    char li[7][8];

    double a[3][4];

    a[0][0]=1.1;

    a[0][1]=1.2;

    a[0][2]=1.3;

    a[0][3]=1.4;

    a[1][0]=2.1; /*no se vale int x[][];*/

    a[1][1]=2.2; /*int [2][];*/

    a[1][2]=2.3; /*b[][3] {1,2,3,4,5} es necesario el = */

    a[1][3]=2.4;

    a[2][0]=3.1;

    a[2][1]=3.2;

    a[2][2]=3.3;

    a[2][3]=3.4;

    int b[][3]= {1,2,3,4,5,6};

    return 0;

}


Programa 16.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    printf("prog16U5 Matriz1\n");

    /*matríz

    Tipo    Identificador   [Renglones][Columnas];

    */


    float m[12][8];

    char li[7][8];

    double a[3][4];

    a[0][0]=1.1;

    a[0][1]=1.2;

    a[0][2]=1.3;

    a[0][3]=1.4;

    a[1][0]=2.1;

    a[1][1]=2.2;

    a[1][2]=2.3;

    a[1][3]=2.4;

    a[2][0]=3.1;

    a[2][1]=3.2;

    a[2][2]=3.3;

    a[2][3]=3.4;

    /*Incorrectos, no se vale

    int x[][];

    int x[2][];

    b [][];

    */

    int b[][3]={1,2,3,4,5};


    return 0;

}


Programa 17.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    int tr, tc;

    printf("prog17U5 M3\n");

    puts("Cuantos renglones");

    scanf("%i",&tr);

    puts("Cuantas columnas");

    scanf("%i",&tc);

    int mat[tr][tc];

    int i,j;

    for(i=0;i<tr;i++){

        for(j=0;j<tc;j++){

            printf("(%i,%i) : ",i,j);

            scanf("%i",&mat[i][j]);

        }

        puts(" ");

    }

    puts("Datos:");

    for(i=0;i<tr;i++){

        for(j=0;j<tc;j++){

            printf("(%i) ",mat[i][j]);

        }

        puts(" ");

    }

    return 0;

}


Programa 18.

#include <stdio.h>

#include <stdlib.h>

int v1[5], v2[5], v3[5];

int m[5][3];

capturanumv1()

{

    puts("Captura vector 1");

    int i;

    for(i=0;i<5;i++){

        do{

        printf("Datos %i\n",i+1);

        scanf("%i",&v1[i]);

        }while(v1[i]<1 || v1[i]>10);

    }

}

capturanumv2()

{

    puts("Captura vector 2");

    int i;

    for(i=0;i<5;i++){

        do{

        printf("Datos %i\n",i+1);

        scanf("%i",&v2[i]);

        }while(v2[i]<1 || v2[i]>10);

    }

}

capturanumv3()

{

    puts("Captura vector 3");

    int i;

    for(i=0;i<5;i++){

        do{

        printf("Datos %i\n",i+1);

        scanf("%i",&v3[i]);

        }while(v3[i]<1 || v3[i]>10);

    }

}

depliega()

{

    int i,j;

    for(i=0;i<5;i++){

        for(j=0;j<3;j++){

            printf("(%i)",m[i][j]);

        }

        puts(" ");

    }

}


int main()

{

    printf("prog18U5 M\n");


    /*Hacer un programa que llene 3 vectores pedir

    al usuario los datos que estén entre 1 y 10.


    El tamaño del vector es de 5 y pasar el

    contenido a una matríz

    */

    capturanumv1();

    capturanumv2();

    capturanumv3();

    int i,j;

    for(j=0;j<3;j++){

        for(i=0;i<5;i++){

        if(j==0){

            m[i][j]=v1[i];

        }

        if(j==1){

            m[i][j]=v2[i];

        }

        if(j==2){

            m[i][j]=v3[i];

        }

        }

    }

    printf("La Matr%cz es:\n",161);

    depliega();

    return 0;

}


Programa 19.

#include <stdio.h>

#include <stdlib.h>

int v1[5],v2[5],v3[5];

int m[5][3];

capturanumv(int n){

    printf("vector %i\n",n);

    int i;

    for(i=0;i<5;i++){

        do{

        printf("Datos %i\n",i+1);

        if (n==1){

        scanf("%i",&v1[i]);

        }

        if (n==2){

        scanf("%i",&v2[i]);

        }

        if (n==3){

        scanf("%i",&v3[i]);

        }

        }while(v1[i]<1 || v1[i]>10 || v2[i]<1 || v2[i]>10 || v3[i]<1 || v3[i]>10);

    }

}


despliega(){

int i,j;

    printf("La matr%cz obtenida es:\n",161);

    for(i=0;i<5;i++){

         for(j=0;j<3;j++){

        printf("    (%i)",m[i][j]);

        }

        puts(" ");

    }

}


int main()

{

    /*hacer un programa que llene 3 vectores

  pedir al usuario los datos que esen entre

  1 y 10.

  el tamaño del vector es de  5

  y pasar el contenido a una matriz

  de 5 renglones y 3 columnas*/

  capturanumv(1);

  capturanumv(2);

  capturanumv(3);


  int i,j;

  for(j=0;j<3;j++){

    for(i=0;i<5;i++){

        if (j==0){

        m[i][j]=v1[i];

        }

        if (j==1){

        m[i][j]=v2[i];

        }

        if (j==2){

        m[i][j]=v3[i];

        }

    }

  }

despliega();

    return 0;

}

Programa Factura.

#include <stdio.h>

#include <stdlib.h>


int i;

int j;

float total;

float IVA;

int num;

float pago;

int aux[4];

int lista[4][3];


validar()

{

    while(aux[num]<1 || aux[num]>100)

    {

        puts("******Error******");

        puts("No se puden agregar numeros negativos");

        puts("No podemos vender más de 100 articulos de un mismo producto");

        scanf("%i",&aux[num]);

    }

}

factura()

{

      puts("______________________________________________________");

      puts(" Prodcutos:    Cantidad:   Precio unitario:  Total:");

    printf(" Sopas         %i        X  %i............... %i\n",lista[0][0],lista[0][1],lista[0][2]);

    printf(" Tortillas     %i        X  %i............... %i\n",lista[1][0],lista[1][1],lista[1][2]);

    printf(" Frijoles      %i        X  %i............... %i\n",lista[2][0],lista[2][1],lista[2][2]);

    printf(" Peras         %i        X  %i............... %i\n",lista[3][0],lista[3][1],lista[3][2]);

    printf("                                      Precio  %.2f\n",pago);

    printf("                                         IVA  %.2f\n",IVA);

    printf("                               Total con IVA  %.2f\n",total);

      puts("______________________________________________________");

}


int main()

{

    lista[0][1]=12;

    lista[1][1]=17;

    lista[2][1]=34;

    lista[3][1]=52;

    do

    {

    printf("ExamenU5 Factura\n\n");

    puts("Producto:           Precio unitario:");

    printf("1.- Sopa            %c12\n",36);

    printf("2.- Tortilla        %c17\n",36);

    printf("3.- Frijoles        %c34\n",36);

    printf("4.- Peras           %c54\n",36);

    puts("5.- Salir/Facturar\n\n");

    puts("Ingrese el numero del producto que le gustaria comprar");

    scanf("%i",&num);

    switch(num)

    {

    case 1:

        puts("Ingrese el numero de sopas a pagar");

        num--;

        scanf("%i",&aux[num]);

        validar();

        lista[num][0]=lista[num][0]+aux[num];

        num++;

    break;

    case 2:

        puts("Ingrese el numero de tortillas a pagar");

        num--;

        scanf("%i",&aux[num]);

        validar();

        lista[num][0]=lista[num][0]+aux[num];

        num++;

    break;

    case 3:

        puts("Ingrese el numero de frijoles a pagar");

        num--;

        scanf("%i",&aux[num]);

        validar();

        lista[num][0]=lista[num][0]+aux[num];

        num++;

    break;

    case 4:

        puts("Ingrese el numero de peras a pagar");

        num--;

        scanf("%i",&aux[num]);

        validar();

        lista[num][0]=lista[num][0]+aux[num];

        num++;

    break;

    case 5:

        num=5;

    break;

    default:

    break;

    }

    system("cls");

    }while(num!=5);

    system("cls");

    for(i=0;i<4;i++){

        lista[i][2]=lista[i][0]*lista[i][1];

        pago+=lista[i][2];

    }

    IVA=pago*.16;

    total=pago*1.16;

    factura();

    return 0;

}


Programas Dumis.

Dumi 1.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    int x[]={15,56,346,235,345,12,321}; 

    int i,lon;

    printf("Reforzar longitud de arreglo!\n");

    lon=((sizeof(x))/(sizeof(x[0]))); 

    for(i=0; i<lon;i++)

    {

        printf("%d, posicion %d\n",x[i],i); 

    }

    return 0;

}


Dumi 2.

#include <stdio.h>

#include <stdlib.h>

#include <math.h>


int main()

{

    printf("Doomi n+1\n");

    /*pedir cuantos items

    x

    2

    5

    6

    1

    2*/

    int tx;

    puts("No. Items para X");

    scanf("%i",&tx);

    float x[tx];

    int i;

    for(i=0;i<tx;i++){

        scanf("%f",&x[i]);

    }

    for(i=0;i<tx;i++){

        printf("x^2 v1: %.2f\n",x[i]*x[i]);

        printf("x^2 v2: %.2f\n",pow(x[i],2));

        printf("x+5: %.2f\n",x[i]+5);

        printf("(x^2)+(x+5): %.2f\n",x[i]*x[i]+x[i]+5);

    }

    return 0;

}

Dumi 3.

#include <stdio.h>

#include <stdlib.h>


int main()

{

    // Pide los caracteres para una cadena

    int i,n;

    puts("Deme cuantos caracteres quiere guardar en la cadena porfa");

    scanf("%i",&n);

    char cad[n];

    for(i=0;i<n;i++)

    {

        printf("Deme el caracter para la posicion %i: ",i);

        scanf("%s",&cad[i]);

    }

    for(i=0;i<n;i++)

    {

        printf("El valor dado es: %c\n",cad[i]);

    }

    return 0;

}


Entregables.

Entregable 1.

Inciso b)

1. 

#include <stdio.h>

#include <stdlib.h>


int main()

{

    float a[3][3];

    float b[3][3];

    float c[3][3];

    printf("Entregable1U5 a)\n");

    //Matríz A

    a[0][0]=2;

    a[0][1]=4;

    a[0][2]=1;

    a[1][0]=1;

    a[1][1]=-2;

    a[1][2]=3;

    a[2][0]=5;

    a[2][1]=0;

    a[2][2]=-1;

    //Matríz B

    b[0][0]=3;

    b[0][1]=-1;

    b[0][2]=-2;

    b[1][0]=0;

    b[1][1]=5;

    b[1][2]=6;

    b[2][0]=0;

    b[2][1]=0;

    b[2][2]=9;

    //Matríz C

    c[0][0]=2;

    c[0][1]=0;

    c[0][2]=-1;

    c[1][0]=0;

    c[1][1]=-1;

    c[1][2]=2;

    c[2][0]=1;

    c[2][1]=-2;

    c[2][2]=5;

    //Operación

    int i,j;

    puts("                  - A - B + C\n");

    for(i=0;i<3;i++){

        printf("  -");

        for(j=0;j<3;j++){

            printf("(%i) ",a[i][j]);

        }

        printf("  -");

        for(j=0;j<3;j++){

            printf("(%i) ",b[i][j]);

        }

        printf("  +");

        for(j=0;j<3;j++){

            printf("(%i) ",c[i][j]);

        }

    puts("\n");

    }

    puts("RESULTADO\n");

    for(i=0;i<3;i++){

        for(j=0;j<3;j++){

            printf("    (%i) ",-a[i][j]-b[i][j]+c[i][j]);

        }

        puts("\n");

    }

    return 0;

}

2. 

#include <stdio.h>

#include <stdlib.h>


int main()

{

    float a[3][3];

    float b[3][3];

    float c[3][3];

    printf("Entregable1U5 a)\n");

    //Matríz A

    a[0][0]=2;

    a[0][1]=4;

    a[0][2]=1;

    a[1][0]=1;

    a[1][1]=-2;

    a[1][2]=3;

    a[2][0]=5;

    a[2][1]=0;

    a[2][2]=-1;

    //Matríz B

    b[0][0]=3;

    b[0][1]=-1;

    b[0][2]=-2;

    b[1][0]=0;

    b[1][1]=5;

    b[1][2]=6;

    b[2][0]=0;

    b[2][1]=0;

    b[2][2]=9;

    //Matríz C

    c[0][0]=2;

    c[0][1]=0;

    c[0][2]=-1;

    c[1][0]=0;

    c[1][1]=-1;

    c[1][2]=2;

    c[2][0]=1;

    c[2][1]=-2;

    c[2][2]=5;

    //Operación

    int i,j;

puts("                   A + B - C\n");

    for(i=0;i<3;i++){

        for(j=0;j<3;j++){

            printf("(%i) ",a[i][j]);

        }

        printf("  +");

        for(j=0;j<3;j++){

            printf("(%i) ",b[i][j]);

        }

        printf("  -");

        for(j=0;j<3;j++){

            printf("(%i) ",c[i][j]);

        }

    puts("\n");

    }

    puts("RESULTADO\n");

    for(i=0;i<3;i++){

        for(j=0;j<3;j++){

            printf("    (%i) ",a[i][j]+b[i][j]-c[i][j]);

        }

        puts("\n");

    }

    return 0;

}

3. 

#include <stdio.h>

#include <stdlib.h>


int main()

{

    float a[3][3];

    float b[3][3];

    float c[3][3];

    printf("Entregable1U5 a)\n");

    //Matríz A

    a[0][0]=2;

    a[0][1]=4;

    a[0][2]=1;

    a[1][0]=1;

    a[1][1]=-2;

    a[1][2]=3;

    a[2][0]=5;

    a[2][1]=0;

    a[2][2]=-1;

    //Matríz B

    b[0][0]=3;

    b[0][1]=-1;

    b[0][2]=-2;

    b[1][0]=0;

    b[1][1]=5;

    b[1][2]=6;

    b[2][0]=0;

    b[2][1]=0;

    b[2][2]=9;

    //Matríz C

    c[0][0]=2;

    c[0][1]=0;

    c[0][2]=-1;

    c[1][0]=0;

    c[1][1]=-1;

    c[1][2]=2;

    c[2][0]=1;

    c[2][1]=-2;

    c[2][2]=5;

    //Operación

    int i,j;

    puts("                   (3)A + (1/2)C\n");

    for(i=0;i<3;i++){

        for(j=0;j<3;j++){

            printf("(3)(%.1f) ",a[i][j]);

        }

        printf(" + ");

        for(j=0;j<3;j++){

            printf("(1/2)(%.1f) ",c[i][j]);

        }

    puts("\n");

    }

    puts("RESULTADO\n");

    for(i=0;i<3;i++){

        for(j=0;j<3;j++){

            printf("    (%.1f) ",(3*a[i][j])+(.5*c[i][j]));

        }

        puts("\n");

    }

    return 0;

}

miércoles, 4 de noviembre de 2020

UNIDAD 4

 PROGRAMAS U4  

Programa 1.

#include <stdio.h>

#include <stdlib.h>


void hola(void)

{

    puts("hola funcion 1");

}

hola2()

{

    puts("Hola otra vez");

    return;

}


int main()

{

    printf("U4prog1\n");

    hola();

    puts("seguimos en el main");

    hola2();

    puts("seguimos en el main");

    return 0;

}


Programa 2.

#include <stdio.h>

#include <stdlib.h>


/*int potencia(int b, int p)

{

    int res;     //variable local

    res=b*p;

    printf("resultado es res %i",res);

    return(res);

}


int main()

{

    int base, pot;

    printf("U4prog3 doom2\n");

    puts("dame un numero");

    scanf("%i",&base);

    puts("dame la potencia");

    scanf("%i",&pot);

    potencia(base, pot);

    return 0;

}*/ //todo esto es un ejemplo


funsum(int n)    //por default la funcion es entera

{

    printf("%i\n",n);

    return;

}


int main()

{

    int num, c;

    printf("U4prog3 doom2\n");

    for(c=1; c<=5;c++){

        printf("%i\n",c);

        puts("dame un numero para sumar\n");

        scanf("%i",&num);

        funsum(num);

    return 0;

}


Programa 3.

#include <stdio.h>

#include <stdlib.h>


llamfunc1()       //Declaracion

{

}


int main()

{

    printf("U4prog3\n");

    llamfunc1();

    return 0;

}

/*llamfunc1()    // Definición

{

    puts("dentro de funcion llama");

}*/


Programa 4.

#include <stdio.h>

#include <stdlib.h>


float funcion1(float x)

{

    //int x;    //variable local

    //x=56;

    x=56+36.24;

    printf("x es local %.2f\n",x);

    return x;

}


int main()

{

    float xm;

    printf("U4prog4\n");

    xm=funcion1(56);

    printf("xm valor %.2f\n",xm);

    return 0;

}


Programa 5.

#include <stdio.h>

#include <stdlib.h>


int cubo(int base)

{

    int pot;

    pot=base*base*base;

    return pot;

}


int main()

{

    int c;

    printf("U4prog5\n");

    for(c=1;c<=5;c++){

        printf("El cubo de %i es: %i\n",c,cubo(c));

    }

    return 0;

}


Programa 6.

#include <stdio.h>

#include <stdlib.h>

#define NUM 5    //CONSTANTE global

                           //Su tipo depende de lo que se le asigna

func1()

{

    printf("Constante en funcion 1 %i\n",NUM);

}


int main()

{

    printf("U4prog6\n");

    printf("Constante en main %i\n",NUM);

    func1();

    return 0;

}


Programa 7.

#include <stdio.h>

#include <stdlib.h>

int Num; //Variable Global


func1()

{

    Num=Num+4;

    printf("Num en funcion= %i\n",Num);

}

//int Num; No se declara Global

int main()

{

    Num=8;

    printf("U4prog7\n");

    printf("Num= %i\n",Num);

    func1();

    printf("Num 2= %i\n",Num);

    return 0;

}


Programa 8.

#include <stdio.h>

#include <stdlib.h>

int Num;                     //Variable Global


func1()

{

    Num=Num+4;

    printf("Num en funcion= %i\n",Num);

}

//int Num; No se declara Global

int main()

{

    Num=8;

    printf("U4prog7\n");

    printf("Num= %i\n",Num);

    func1();

    printf("Num 2= %i\n",Num);

    return 0;

}


Programa 9.

#include <stdio.h>

#include <stdlib.h>


int tabla(int x)

{

    printf("%i * 1 = %i\n",x,x*1);

    printf("%i * 2 = %i\n",x,x*2);

    printf("%i * 3 = %i\n",x,x*3);

    printf("%i * 4 = %i\n",x,x*4);

    printf("%i * 5 = %i\n",x,x*5);

    printf("%i * 6 = %i\n",x,x*6);

    printf("%i * 7 = %i\n",x,x*7);

    printf("%i * 8 = %i\n",x,x*8);

    printf("%i * 9 = %i\n",x,x*9);

    printf("%i * 10 = %i\n",x,x*10);

}


int main()

{

    int num;

    printf("U4prog9\n");

    puts("dame un numero");

    scanf("%i",&num);

    tabla(num);

    return 0;

}


Programa 10.

#include <stdio.h>

#include <stdlib.h>


int incr(int v)

{

    return v+1;

}


int main()

{

    int a,b;

    b=5;

    printf("U4prog10\n");

    a=incr(b);

    printf("valor de a es %i \n",a);

    return 0;

}


Programa 11.

#include <stdio.h>

#include <stdlib.h>

int Var=0;


int verificar(int x)

{

    if(Var>x){

        incremento(x);

    }

    else{

        return;

    }

}

int incremento(int y)

{

    int c;

    for(c=Var; c>y; c++){

        printf("%i\n",c);

    }

}


int main()

{

    int num;

    printf("U4prog11\n");

    puts("dame un numero mayor a 0 para incremnetar");

    scanf("%i",&num);

    verificar(num);

    return 0;

}


Programa 12.

#include <stdio.h>

#include <stdlib.h>


float vncdec(float nff)

{

    //printf("%.2f",nff%1!=0);    No se puede

    if(nff<=10){

        puts("Numero mayor a 10");

    }

    else{

        puts("Numero menor a 10");

    }

    nff=nff+52.3;

    return nff;

}


int main()

{

    float cap;

    float nf;

    printf("U4prog12\n");

    puts("Dame un numero decimal");

    scanf("%.2f",&nf);

    cap=vncdec(nf);

    printf("%.2f",cap);

    return 0;

}


Programa 13.

#include <stdio.h>

#include <stdlib.h>

//#define VAR 5 //constante global

//int Variables; //Variable global


unafuncion()

{

    extern var;

    printf("valor de variable en funcion %i\n",var);

    var=var+5;

}


int main()

{

    //int varia; //variable local

    extern var;

    printf("U4prog15\n");

    unafuncion();

    printf("valor de variable despues de la funcion %i\n",var);

    return 0;

}

int var;  //variable externa


Programa 14.

#include <stdio.h>

#include <stdlib.h>

//#define VAR 5         //constante global


//int Variables; //Variable global

unafuncion()

{

    extern var;

    printf("valor de variable en funcion %i\n",var);

    var=var+5;

}


int main()

{

    //int varia; //variable local

    extern var;

    printf("U4prog15\n");

    unafuncion();

    printf("valor de variable despues de la funcion %i\n",var);

    return 0;

}

int var;  //variable externa


Programa 15.

#include <stdio.h>

#include <stdlib.h>


funspref(int *numero)

{

    *numero+=1;

    printf("VALOR EN FUNCION %i\n", *numero);

}


int main()

{

    int num=83;

    printf("U4prog15\n");

    funspref(&num);      //envio por referencia

    printf("En main %i\n",num);

    return 0;

}


Programa 16.

#include <stdio.h>

#include <stdlib.h>


tabla(int *nt)

{

    int i;

    for(i=1;i<10;i++){

        printf("%i * %i = %i\n",*nt,i,*nt*i);

    }

}


int main()

{

    printf("U4prog16\n");

    //tabla de multiplicar con paso por referencia

    int ntab;

    char op;

    puts("Dame un numero que quieras mutiplicar en la tabla");

    puts("Debe de ser positivo");

    do{

        scanf("%d",&ntab);

    }while(ntab<0);

    tabla(&ntab);      //paso por referencia

    puts("Quieres la siguiente tabla S o N");

    do{

    getchar();

    scanf("%c",&op);

    printf("opcion fue: %c\n",op);

    }while(op!='S' && op!='N');

    ntab++;

    tabla(&ntab);

    return 0;

}


Programa 17.

#include <stdio.h>

#include <stdlib.h>


funcion1()

{

    int dato=13;

    char daton='a';

    printf("numero es %i la letra es %c\n",dato,daton);

}

funcion2()

{

    int dato=25;

    char daton='b';

    printf("numero es %i la letra es %c\n",dato,daton);

}


int main()

{

    printf("U4prog17\n");

    funcion1();

    funcion2();

    return 0;

}


Programa 18.

#include <stdio.h>

#include <stdlib.h>


funcion1()

{

    extern dato;

    dato=13;

    char daton='a';

    printf("numero es %i la letra es %c\n",dato,daton);

}

funcion2()

{

    extern dato;

    dato=dato+15;

    char daton='b';

    printf("numero es %i la letra es %c\n",dato,daton);

}


int main()

{

    printf("U4prog18\n");

    funcion1();

    funcion2();

    return 0;

}

int dato;


Programa 19.

#include <stdio.h>

#include <stdlib.h>

int Var_glob=98;


funcion()

{

    printf("VG en funcion %i\n",Var_glob);

}


int main()

{

    printf("U4prog19\n");

    printf("VG en Main %i\n",Var_glob);

    funcion();

    return 0;

}


Programa 20.

#include <stdio.h>

#include <stdlib.h>


/*Introducir un valor entero

impar, comprendido entre 1 y 29

al menos una funcion*/

int Ent;


entre129(float fin)

{

    if (fin>=1 || fin<=29){

        puts("Si es valido");

        Ent++;

    }

    else{

        puts("no es valido");

    }

}

positivo(float ps)

{

    if (ps>=0){

        puts("Si es positivo");

        Ent++;

    }

    else

        puts("Es negativo");

}

elif (float r)

{

    if (r==0){

        puts("Si es entero");

        Ent++;

    }

    else

        puts("Tiene decimales");

}

vncdec (float numf)

{

    float res;

    int num;

    num=numf;

    res=numf-num;

    elif(res);

}


int main()

{

    float nf, res;

    int num;

    puts("Dame numero entero");

    for(Ent=0; Ent!=3;){

    Ent=0;

    scanf("%f",&nf);

    vncdec (nf);

    positivo(nf);

    entre129(nf);

    }

    printf("El numero final es %.2f\n",nf);

    return 0;

}


Programa 21.

#include <stdio.h>

#include <stdlib.h>


funrec(int fr)

{

    int n;

    puts("Dame un numero entre 2 y 10");

    scanf("%i",&n);

    /*Si el numero es < que 5 entonces convertir n en 1

    si el numero es mayor que 5 dejar el n en 5*/

    if(n>5){

        n=1;

        return;

    }

    else{

        funrec(n);            //reenviamos a n en lugar que fr

    }

}


int main()

{

    int r;

    r=5;

    printf("U4prog21recursividad1\n");

    funrec(5);

    return 0;

}


Programa 22.

#include <stdio.h>

#include <stdlib.h>


funrec()         //funcion recursiva o ciclica

{

    int n;

    puts("dame un numero par");

    scanf("%i",&n);

    if(n%2==0){

        return;

    }

    else{

        funrec();

    }

}


int main()

{

    printf("U4prog22recursividad2\n");

    /*validar que el numero sea par

    con una funcion recursiva*/

    funrec();

    puts("Gracias");

    return 0;

}


Programa 23.

#include <stdio.h>

#include <stdlib.h>


funrec()             //funcion recursiva o ciclica

{

    int n;

    puts("dame un numero par");

    scanf("%i",&n);

    if(n%2==0){

        return;

    }

    else{

        funrec();

    }

}


int main()

{

    printf("U4prog22recursividad2\n");

    /*validar que el numero sea par

    con una funcion recursiva*/

    funrec();

    puts("Gracias");

    return 0;

}


Programas Dumis.

Programa 1 Dumi.

#include <stdio.h>

#include <stdlib.h>


/*int potencia(int b, int p)

{

    int res;     //variable local

    res=b*p;

    printf("resultado es res %i",res);

    return(res);

}


int main()

{

    int base, pot;

    printf("U4prog3 doom2\n");

    puts("dame un numero");

    scanf("%i",&base);

    puts("dame la potencia");

    scanf("%i",&pot);

    potencia(base, pot);

    return 0;

}*/ //todo esto es un ejemplo


funsum(int n)    //por default la funcion es entera

{

    printf("%i\n",n);

    return;

}


int main()

{

    int num, c;

    printf("U4prog3 doom2\n");

    for(c=1; c<=5;c++){

        printf("%i\n",c);

        puts("dame un numero para sumar\n");

        scanf("%i",&num);

        funsum(num);

    return 0;

}


Programa 2 Dumi.

#include <stdio.h>

#include <stdlib.h>


suma(int x, int y)

{

    int s;

    s=x+y;

    return s;

}


int main()

{

    int n1, n2;

    int sm;

    printf("U4progdoom3\n");

    puts("dame numero 1\n");

    scanf("%i",&n1);

    puts("dame numero 2\n");

    scanf("%i",&n2);

    sm=suma(n1,n2);

    printf("la suma del numero 1 y 2 es %i",sm);

    return 0;

}


Entregables.

Entregable 2.

#include <stdio.h>

#include <stdlib.h>


entre1y29()

{

    int fin;

    puts("Introduce un numero impar entre 1 y 29");

    scanf("%i",&fin);

    if (fin>=1 && fin<=29){

        if (fin%2!=0){

            puts("Gracias");

            return;

        }

        else{

        entre1y29();

        }

    }

    else{

        puts("no es valido");

        entre1y29();

    }

}

serie()

{

    int i=0;

    int ser;

    puts("Introduce un numero impar para sumar");

    scanf("%i",&ser);

    i=ser;

    if (ser%2!=0 && ser>0){

        for(;ser!=1;)

    {

        ser-=2;

        i=i+ser;

    }

    printf("1+3...+numero impar= %i\n",i);

    }

    else{

        serie();

    }

    return;

}

calculo()

{

    int c;

    int mul;

    puts("Introduce un numero impar para sumar");

    scanf("%i",&mul);

    c=mul;

    if (mul%2!=0 && mul>0){

        for(;mul!=1;)

    {

        mul-=2;

        c=c*mul;

        printf("1*3...*numero impar= %i\n",c);

    }


    }

    else{

        calculo();

    }

    return;

}


int main()

{

    char op;

    do{

   printf("Elige la opcion que necesites\n");

   puts("   Opciones del programa:");

   puts("   a)-numero impar entre 1 y 29");

   puts("   b)-serie numerica 1+3+5...+n");

   puts("   c)-calculo de 1*3*5...*n");

   puts("   d)-salir del programa");

   scanf("%c",&op);

  switch(op){

    case 'a' :

        entre1y29();

      break;

    case 'b':

        serie();

      break;

    case 'c':

        calculo();

      break;

    case 'd':

        puts("salir");

      break;

    default:

        printf("solo hay 4 opciones\n");

   }

   getch();

   system("cls");

   }while(op!='d');

    return 0;

}


Entregable 3.

#include <stdio.h>

#include <stdlib.h>


int N;


funcion1()

{

    int c=1;

    int a;

    for(c=1;N>=c;c++){

        printf("%i\n",c);

    }

    c=1;

    for(;N>=c;){

        for(a=c+1;a<=N;a++){


        printf("%i%i\n",c,a);

        }

        c++;

    }

    c=1;

    for(c=1;N>=c;c++){

        printf("%i",c);

    }

}


val()

{

    if(N>0){

        funcion1();

    }

    else{

        puts("No es valido");

        return;

    }

}


int main()

{

    printf("Entregable 3\n");

    puts("dame un numero para obtener sus combinaciones");

    puts("no deben ser numero negativos ni igual a 0");

    scanf("%i",&N);

    val();

    return 0;

}


UNIDAD 6

   PROGRAMAS U6   Programa 1. Programa 2. Programa 3. Programa 4. Programa 5. Programa 6. Programa 7. Programa 8. Práctica/Proyecto. Program...