Unidad 5 Programación Estructurada

 


Programas en C Unidad 5 - Ejercicio 1

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Arreglos! \n");

    int edad[10];
    float var1[5];
    double var2[120];
    char nom[20];
    int i,tam;

    puts("Dame tu nombre: ");
    scanf("%s",nom);
    tam=strlen(nom);
    printf("tam=%i \n",tam);

    for (i=0;i<tam;i++) {
        printf("%c \n",nom[i]);
    }

    return 0;
}

Programas en C Unidad 5 - Ejercicio 2

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Hello world!\n");

    char nombre[30];
    int i,tam;

    puts("Dame tu nombre: ");
    gets(nombre);
    tam=strlen(nombre);
    printf("%i \n",tam);

    for (i=0;i<tam;i++) {
        printf("%c \n",nombre[i]);
    }

    return 0;
}

Programas en C Unidad 5 - Ejercicio 3

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Hello world!\n");

    char nombre[30];
    int i,tam, vocales,consonasntes,espacio;
    vocales=0;
    consonasntes=0;
    espacio=0;

    puts("Dame tu nombre: ");
    gets(nombre);
    tam=strlen(nombre);
    printf("%i \n \n",tam);

    for (i=0;i<tam;i++) {
        printf("%c \n",nombre[i]);

        if (nombre[i]=='a' || nombre[i]=='e' || nombre[i]=='i'
            || nombre[i]=='o' || nombre[i]=='u' || nombre[i]=='A'
            || nombre[i]=='E' || nombre[i]=='I' || nombre[i]=='O'
            || nombre[i]=='U') {
            vocales=vocales+1;
        } else {
            if (nombre[i]!=' ') {
                consonasntes=consonasntes+1;
            } else {
                espacio=espacio+1;
            }
        }
    }

    printf("Tiene %i vocales, %i consonates y %i espacios",vocales,consonasntes,espacio);

    return 0;
}

Programas en C Unidad 5 - Ejercicio 4

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int main()
{
    //isalpha(); Devuelve si la letra es del alfabeto pero no es vocal
    //ctype.h
    //isalpha(num[i]);
    //otro=tolower(nom);
    printf("Hello world!\n");

    char nombre[30];
    char nombre_min[30];
    int i,tam, vocales,consonasntes,espacio;
    vocales=0;
    consonasntes=0;
    espacio=0;

    puts("Dame tu nombre: ");
    gets(nombre);
    tam=strlen(nombre);
    //printf("En minusculas es: %s \n", tolower(nombre));
    //nombre_min=tolower(nombre);
    printf("%i \n \n",tam);

    for (i=0;i<tam;i++) {
        printf("%c \n",nombre[i]);

    }

    printf("Tiene %i vocales, %i consonates y %i espacios",vocales,consonasntes,espacio);


    return 0;
}

Programas en C Unidad 5 - Ejercicio 5

#include <stdio.h>
#include <stdlib.h>

int main()
{
    /*pedir al usuario su nombre y le van a pedir cuantas calificaciones tiene en la materia*/
    char name[20];
    int ntcal,i;
    int sum=0;
    float prom;
    printf("Dame tu nombre \n");
    gets(name);
    printf("%s Cuantas calificaciones: \n",name);
    scanf("%i",&ntcal);
    int cal[ntcal];
    for(i=0;i<ntcal;i++){
        printf("Dame calificaciones %i: ",i+1);
        scanf("%i",&cal[i]);
        puts(" ");
        sum=sum+cal[i];
    }
    prom=sum/ntcal;
    puts("+++++++++++++++++++++++");
    for(i=0;i<ntcal;i++){
        printf("Calificaciones %i: \n",cal[i]);
    }
        printf("El promedio es: %2.f\n",prom);


    return 0;
}

Programas en C Unidad 5 - Ejercicio 6

#include <stdio.h>
#include <stdlib.h>

int main()
{
    /*pedir al usuario 3 materias diferentes cuantas unidades por materia declarar arreglos pedir cali da cada materia y promedio por materia y promedio general  */
    char name[20];
    char mat1[20];
    char mat2[20];
    char mat3[20];

    int nt1;
    int nt2;
    int nt3;
    int sum[3];
    int suma;
    float prom[3];
    float promedio;
    float promTotal;
    int i;

    //float prom1mat1;

    printf("Dame tu nombre \n");
    gets(name);

//Materia 1
    printf("Dame la materia 1: \n");
    gets(mat1);
    printf("%s Cuantas calificaciones tiene? \n",mat1);
    scanf("%i",&nt1);
    int cmat1[nt1];

    //printf("nt: %i cmat: %i",nt1,cmat1[nt1]);
    suma=0;
    promedio=0;
    for (i=0;i<nt1;i++) {
        printf("Dame la calificacion %i de %s \n",(i+1),mat1);
        scanf("%i",&cmat1[i]);
        suma=suma+cmat1[i];
    }
    sum[0]=suma;
    promedio=suma/nt1;
    prom[0]=promedio;

    getchar();

//Materia 2
    printf("Dame la materia 2: \n");
    gets(mat2);
    printf("%s Cuantas calificaciones tiene? \n",mat2);
    scanf("%i",&nt2);
    int cmat2[nt2];

    suma=0;
    promedio=0;
    for (i=0;i<nt2;i++) {
        printf("Dame la calificacion %i de %s \n",(i+1),mat2);
        scanf("%i",&cmat2[i]);
        suma=suma+cmat2[i];
    }
    sum[1]=suma;
    promedio=suma/nt2;
    prom[1]=promedio;

    getchar();

//Materia 3
    printf("Dame la materia 3: \n");
    gets(mat3);
    printf("%s Cuantas calificaciones tiene? \n",mat3);
    scanf("%i",&nt3);
    int cmat3[nt3];

    suma=0;
    promedio=0;
    for (i=0;i<nt3;i++) {
        printf("Dame la calificacion %i de %s \n",(i+1),mat3);
        scanf("%i",&cmat3[i]);
        suma=suma+cmat3[i];
    }
    sum[2]=suma;
    promedio=suma/nt3;
    prom[2]=promedio;

    getchar();

    suma=0;
    promedio=0;
    for (i=0;i<3;i++) {
        printf("La suma de la materia %i es %i y el promedio %f: \n",(i+1), sum[i],prom[i]);
        suma=suma+sum[i];
        promedio=promedio+prom[i];
    }
    promedio=promedio/3;

    printf("La suma total es: %i y el promedio es: %f",suma,promedio);


    return 0;
}

Programas en C Unidad 5 - Ejercicio 7

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Matriz 1!\n");
    int mat [3][3];
    int i, j;
//CAPTURAMOS UN DATO
    for (i=0;i<3;i++) {
        for (j=0;j<3;j++) {
            printf("|%i %i|",i,j);
            scanf("%i",&mat[i][j]);
        }
        puts("");
    }
//DESPLEGAMOS LOS DATOS
    for (i=0;i<3;i++) {
        printf("|");
        for (j=0;j<3;j++) {
            printf("%i ",mat[i][j]);
        }
        puts("|");
    }

    puts("");
//La diagonal
    puts("La diagonal");

    for (i=0;i<3;i++) {
        printf("|");

        for (j=0;j<3;j++) {
            if (i==j) {
                printf("%i ",mat[i][j]);
            } else {
                printf("0 ");
            }
        }
        puts("|");
    }
//Primera y ultima
    puts("La primera y ultima fila");

    for (i=0;i<3;i++) {
        printf("|");

        for (j=0;j<3;j++) {
            if (i!=1) {
                printf("%i ",mat[i][j]);
            } else {
                printf("0 ");
            }
        }
        puts("|");
    }

    return 0;
}

Programas en C Unidad 5 - Ejercicio 8

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Suma de matrices!\n");
    puts("Tamaño de matriz");

    int tam, i, j;
    scanf("%i",&tam);
    int matA [tam] [tam];
    int matB [tam] [tam];
    int matC [tam] [tam];

    //Pedir datos de la Matriz A
    puts("MATRIZ A");
    for (i=0;i<tam;i++) {
        for (j=0;j<tam;j++) {
            printf("|%i %i|",i,j);
            scanf("%i",&matA[i][j]);
        }
        puts("");
    }

    //Pedir datos de la Matriz B
    puts("MATRIZ B");
    for (i=0;i<tam;i++) {
        for (j=0;j<tam;j++) {
            printf("|%i %i|",i,j);
            scanf("%i",&matB[i][j]);
        }
        puts("");
    }

    //Suma de Matrices
    puts("SUMA DE LA MATRIZ A Y B");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            matC[i][j]=(matA[i][j]+matB[i][j]);
            printf("%i", matC[i][j]);
        }
        puts("|");
    }

    //DESPLEGAMOS LOS DATOS DE LA MATRIZ A
    puts("IMPRIMIR LA MATRIZ A");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            printf("%i ",matA[i][j]);
        }
        puts("|");
    }

//DESPLEGAMOS LOS DATOS DE TODAS LAS MATRICES
    puts("IMPRIMIR LA MATRIZ A + B = C");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            printf("%i ",matA[i][j]);
        }
        printf("| + |");
        for (j=0;j<tam;j++) {
            printf("%i ",matB[i][j]);
        }
        printf("| = |");
        for (j=0;j<tam;j++) {
            printf("%i ",matC[i][j]);
        }
        puts("|");
    }


    return 0;
}

Programas en C Unidad 5 - Ejercicio 9

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Determinar la Diagonal principal!\n");
    puts("Tamaño de matriz");

    int tam, i, j;
    float diagonal=0;
    float diagprom=0;
    scanf("%i",&tam);
    int matA [tam] [tam];

//Pedir datos de la Matriz A
    puts("MATRIZ A");
    for (i=0;i<tam;i++) {
        for (j=0;j<tam;j++) {
            printf("|%i %i|",i,j);
            scanf("%i",&matA[i][j]);
        }
        puts("");
    }

//Pedir datos de la Matriz A
    puts("IMPRIMIR LA MATRIZ A");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            printf("%i ",matA[i][j]);
        }
        puts("|");
    }

//La diagonal
    puts("La diagonal");

    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            if (i==j) {
                printf("%i ",matA[i][j]);
                diagonal=(diagonal+(matA[i][j]));
                system("color F1");
            } else {
                printf("0 ");
            }
        }
        puts("|");
    }



    diagprom=diagonal/tam;
    printf("%i",tam);
    printf("La suma de la diagonal es: %f y el promedio es: %f",diagonal,diagprom);

    return 0;
}

Programas en C Unidad 5 - Ejercicio 10

#include <stdio.h>
#include <stdlib.h>

int main()
{

    printf("Determinar la primera fila y la primera columna!\n");
    puts("Tamaño de matriz");

    int tam, i, j;
    float diagonal=0;
    float diagprom=0;
    scanf("%i",&tam);
    int matA [tam] [tam];

//Pedir datos de la Matriz A
    puts("MATRIZ A");
    for (i=0;i<tam;i++) {
        for (j=0;j<tam;j++) {
            printf("|%i %i|",i,j);
            scanf("%i",&matA[i][j]);
        }
        puts("");
    }

//Imprimir la Matriz A
    puts("IMPRIMIR LA MATRIZ A");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            printf("%i ",matA[i][j]);
        }
        puts("|");
    }


//La primera fila Y la primera columna
    puts("Las primeras");

    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            if (i==0 || j==0) {
                printf("%i ",matA[i][j]);
                diagonal=(diagonal+(matA[i][j]));
                system("color F1");
            } else {
                printf("0 ");
            }
        }
        puts("|");
    }

    diagprom=diagonal/(tam+tam-1);
    printf("%i",tam);
    printf("La suma de la diagonal es: %f y el promedio es: %f",diagonal,diagprom);

    return 0;
}

Programas en C Unidad 5 - Ejercicio 11

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("Matriz Cuadrada!\n");


    /*           reng  colm
        3  4  5   12    13
        6  9  2   17    19
        4  6  8   18    15

        13 19 15
    */

//Pedir el tamaño de la matriz
    int tam,i,j,suma=0;
    puts("Dame el tamaño de la matriz: ");
    scanf("%i",&tam);
    int matA [tam][tam];
    int renglon[tam];
    int columna[tam];

//Pedir datos de la Matriz A
    puts("MATRIZ A");
    for (i=0;i<tam;i++) {
        for (j=0;j<tam;j++) {
            printf("|%i %i|",i,j);
            scanf("%i",&matA[i][j]);
            suma=suma+matA[i][j];

        }
        renglon[i]=suma;
        suma=0;
        puts("");
    }

//Imprimir la Matriz A
    puts("IMPRIMIR LA MATRIZ A");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            printf("%i ",matA[i][j]);
        }
        puts("|");
    }
//Sumar la columna
    puts("Sumar la columna");
    for (j=0;j<tam;j++) {
        for (i=0;i<tam;i++) {
            suma=suma+matA[i][j];
        }
        columna[i]=suma;
        suma=0;
        puts("");
    }

    for (i=0;i<tam;i++){
        printf("La suma del renglon %i es: %i \n",(i+1),renglon[i]);
    }

    for (j=0;j<tam;j++){
        printf("La suma dela columna %i es: %i \n",(j+1),columna[i]);
    }

    return 0;
}

Programas en C Unidad 5 - Ejercicio 12

#include <stdio.h>
#include <stdlib.h>

int main(int inicial, char** args)
{
    int *puntero;
    double *otro_puntero;
    char *char_puntero;
    int *arreglo[100];

    /*
    *tipo* puntero;
    tipo variable;
    puntero= &variable
    */

    printf("Hello world!\n");
    return 0;
}

Programas en C Unidad 5 - Ejercicio 14

#include <stdio.h>
#include <stdlib.h>

int main(int a, char** args)
{
    int* p;                  //puntero
    int m[100];
    p = &m[0];               //&direccion
    m[0] = 4;
    printf("p = %d \n", *p); //Indireccion
    m[0];
    printf("%d \n", *p);     //cambia dinamicamente, la direccion es fija
    *p = 999;                //accediendo al valor
    printf("%d \n", *p);

    printf("Hello world!\n");
    return 0;
}

Programas en C Unidad 5 - Ejercicio 15

#include <stdio.h>
#include <stdlib.h>

int main(int a, char** args)
{
    int* p;                  //puntero
    int m[100];
    p = &m[0];               //&direccion
    m[0] = 4;
    printf("p = %d \n", *p); //Indireccion
    m[0];
    printf("%d \n", *p);     //cambia dinamicamente, la direccion es fija
    *p = 999;                //accediendo al valor
    printf("%d \n", *p);

    printf("Hello world!\n");
    return 0;
}

Programas en C Unidad 5 - Ejercicio 17

#include <stdio.h>
#include <stdlib.h>

int main()
{
   int v[0];
   int i;
   int *p;
   puts ("inicio *************")
   for (i=0;i<10;i++) {v[i]=i;}
   puts ("mostrar ****************");
    for (i=0;i<10;i++){printf ("\n%d", v[i]); p=v;}
    puts ("mostrar apuntador **********");
    for (i=0; i<10; i++){printf ("\n%d", *p++);}



    return 0;
}

Programas en C Unidad 5 - Ejercicio 18

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("DETERMINAR EL TAMAÑO DE UNA CADENA!\n");
    //STRLEN()
     char cad [20];
     int lon;
     int j;
     puts ("Dame una cadena de maximo 20 caracteres");
     gets (cad);
     printf ("\n La cadena %s mide %d \n" , cad, strlen(cad));
     lon =(strlen(cad));
     /*int longi(char *s);
     int L;
     while (*s++ !='\0')(L++;)
        printf ("valor de L %d\n", L);*/
        //una vez pedida la cadena y determinado rl tamaño
        // van a ajustar la cadena a una matriz y llenar una
        //matriz cuadrada
        //supercalifragilisticoespiralidoso tamaño=32
        //la matriz cuadrada quedo de 5*5
        /* s u p e r
           c a l i f
           r a g i l
           i s t i c
           o e s p i       sobra=alidoso
           */

    int i,algo,tam;
    for(i=2;i<=10;i++) {
        algo=i*i;
        if (lon>algo) {
            printf("El tamaño podria ser de %i y %i \n",algo,lon);
        } else {
            printf("Ya te pasaste %i y %i,,,,%i \n", algo,lon,i);
            tam=i-1;
            i=10;
        }
    }
    printf("%i",tam);
    char matA[tam][tam];


//Recibir los datos
    int c=0;

    for (i=0;i<tam;i++) {
        for (j=0;j<tam;j++) {
            matA[i][j]=cad[c];
            c=c+1;
        }
    }


//Imprimir la Matriz

    puts("");
    for (i=0;i<tam;i++) {
        printf("|");
        for (j=0;j<tam;j++) {
            printf("%c ",matA[i][j]);
        }
        puts("|");
    }

    //char matr[]

    return 0;
}

Programas en C Unidad 5 - Carta para mamá

#include<stdio.h>
#include<math.h>
#include<windows.h>
#include<time.h>
#define U 0.1
#define V 0.053
void SetColor(unsigned short ForeColor,unsigned short BackGroundColor)
{
HANDLE hCon=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hCon,(ForeColor%16)|(BackGroundColor%16*16));
}
int main()
{
int i,s=0,t,a=10,b=11,c=12,d=13,e=14;
int z[] = {32,32,86,65,78,69,83,83,65,32,32,32,32,32};
float x,y;
srand(time(NULL));
for(y=1.3;y>=-1.1;y-=U)
{
for(x=-2;x<1.4;x+=V)
{
if((((x*x+y*y-1)*(x*x+y*y-1)*(x*x+y*y-1)-x*x*y*y*y)<=0))
{
if(y>=1.3-10*U||y<=1.3-11*U)
{
s++;
if(s%4==1){SetColor(a,0);printf("A");}
if(s%4==2){SetColor(e,0);printf("M");}
if(s%4==3){SetColor(c,0);printf("O");}
if(s%4==0){SetColor(d,0);printf("R");}
}
else
{
for(i = 0;i < 32;i++)
{
if(i<=10||i>=20)
{
s++;
if(s%4==1){SetColor(a,0);printf("E");}
if(s%4==2){SetColor(e,0);printf("AMO ");}
if(s%4==3){SetColor(c,0);printf("");}
if(s%4==0){SetColor(d,0);printf("T");}
}
else
{
SetColor(b,0);
printf("%c", z[i-10]);
Sleep(50);
}
}
break;
}
}
else
printf(" ");
Sleep(1);
}
printf("\n");
}
printf ("Da enter para que brille el amor!");
getchar();
while(1)
{
system("cls");
t=a;a=b;b=c;c=d;d=e;e=t;
for(y=1.3;y>=-1.1;y-=U)
{
for(x=-2;x<1.4;x+=V)
{
if((((x*x+y*y-1)*(x*x+y*y-1)*(x*x+y*y-1)-x*x*y*y*y)<=0))
{
if(y>=1.3-10*U||y<=1.3-11*U)
{
s++;
if(s%4==1){SetColor(a,0);printf("l");}
if(s%4==2){SetColor(b,0);printf("o");}
if(s%4==3){SetColor(c,0);printf("v");}
if(s%4==0){SetColor(d,0);printf("e");}
}
else
{
for(i = 0;i < 42;i++)
{
if(i<=14||i>=28)
{
s++;
if(s%4==1){SetColor(a,0);printf("l");}
if(s%4==2){SetColor(b,0);printf("o");}
if(s%4==3){SetColor(c,0);printf("v");}
if(s%4==0){SetColor(d,0);printf("e");}
}
else
{
SetColor(e,0);
printf("%c", z[i-15]);
}
}
break;
}
}
else
printf(" ");
}
printf("\n");
}
Sleep(1000);
system("cls");

}
}

Ejercicios del PDF Unidad 5 - Ejercicio 1 (Pag 133)


#include <stdio.h>

#include <stdlib.h>

 

int main()

{

 

    /*Solicitar tamaño de M*/

    int tam_mat,i,j;

    int num1;

 

    puts("Ingrese: size de matriz");

    scanf("%i",&tam_mat);

   /* if (tam_mat!=3 && tam_mat!=5)

    {

        puts("EL VALOR NO ES VALIDO");

    }

    else printf("El valor es %i\n",tam_mat);*/

 

    int matriz[tam_mat][tam_mat];

 

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

    {

        for(j=0;j<tam_mat;j++)

        {

           printf("Valor de la posicion (%i,%i)\n",i,j);

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

        }

 

    }

 

    /*Imprimir matriz*/

    puts("La matriz ingresada es:");

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

    {

        for(j=0;j<tam_mat;j++)

        {

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

        }

        printf("\n");

    }

 

    puts("Ingrese el numero que multiplicara a la matriz A:");

    scanf("%i",&num1);

 

    puts("Matriz ans=");

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

    {

        for(j=0;j<tam_mat;j++)

        {

            matriz[i][j] *= num1;

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

        }

        printf("\n");

    }

 

    return 0;

}

Ejercicios del PDF Unidad 5 - Ejercicio 2 (Pag 133)

#include <stdio.h>

#include <stdlib.h>

 

int main()

{

    int tam_mat,i,j;

 

    do

    {

       puts("Ingrese el tamaño de la matriz cuadrada");

       scanf("%i",&tam_mat);

    } while(tam_mat<7 || tam_mat>15 );

 

    int matriz[tam_mat][tam_mat];

 

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

    {

        for(j=0;j<tam_mat;j++)

        {

           printf("Valor de la posicion \n");

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

        }

    }

 

 

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

    {

        for(j=0;j<tam_mat;j++)

        {

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

        }

        printf("\n");

    }

 

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

    {

        for(j=0;j<tam_mat;j++)

        {

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

        }

        printf("\n");

    }

   return 0;
}





Comentarios