Está en la página 1de 25

Instituto Politécnico Nacional

Escuela Superior de Ingeniería Mecánica Eléctrica


Asignatura: Fundamentos de Programación
Integrantes del Equipo:
Flores Toscano Miguel Ángel
Hernández Vega Jose de Jesús
Lopez Martinez Edgar Emanuel
Lozano Martinez Raymundo Israel
Juárez Hernández Luis Ángel
Morales Chacón Jennifer
Profesor: Cesar Romero Pedraza
Leer y almacenar 7 estaturas y mostrarlas en forma tabular
Imprimir el contenido de las posiciones 0, 3 y 4 del arreglo vec
Leer elementos imprimir, sumar y contar los elementos de la
posición par, si el número es impar indicar la posición
En un arreglo buscar un elemento, borrar elemento, agregar
En una matriz buscar un elemento, borrar elemento, agregar,
usando funciones y una variable global
Tabla con números aleatorios entre 1 y 25
Suma de matrices utilizando Funciones
Captura de una cadena de caracteres con scanf
Muestra menú para captura de nombre y cuenta letras
Identifica si un carácter es una letra del alfabeto o un dígito
Introduzca una cadena de caracteres no más de 18
Código ASCII
Leer un nombre y contar el número de ocasiones que aparece la
letra seleccionada
Cuestionario
Programa No. 1 Leer y almacenar 7 estaturas
y mostrarlas en forma tabular

#include<stdio.h>

#include<conio.h>

#include<windows.h>

#define TAMANIO 7

int main(){

system("color 70");

float estatura[TAMANIO];

int i;

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

printf("Dame la estatura %d\n",i+1);

scanf("%d",&estatura[i]);

printf("num estatura \n");

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

printf("%d %f \n", i+1,estatura[i]);

}
Programa No. 2 Imprimir el contenido de las posiciones
0, 3 y 4 del arreglo vec

#include<stdio.h>

#include<conio.h>

int main(){

int vec[5]={3,5,7,9,2};

clrscr();

printf("\n pocision 0 %d ",vec[0]);

printf("\n pocision 3 %d ",vec[3]);

printf("\n pocision 4 %d ",vec[4]);

getch();

return 0;

}
Programa No. 3 Leer elementos imprimir, sumar y contar los
elementos de la posición par, si el número es impar indicar la posición

#include<stdio.h>

#include<conio.h>

#include<windows.h>

int main(){

system("color 30");

int vec[5]={3,5,7,9,2}, i, n, b=0, p;

clrscr();

printf("Teclea el valor a buscar\n");

scanf("%i",&n);

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

if(vec[i]==n)

b=1;

p=i;

if(b==1)

printf("\nEl número %i si se encuentra en la posicion %i",n,p);

else

printf("\nEl número %i no se encuentra",n);

getch();

return 0;

}
Programa No. 4 En un arreglo buscar un
elemento, borrar elemento, agregar

#include<stdio.h>

#include<conio.h>

#include<windows.h>

#define C 10

int main(){

system("color 30");

int lista[C]={1,12,3,12,0,4,5,7,9,2};

int suma=0, i=0;

clrscr();

printf("\n Elementos en posiciones de pares\n ");

do{

if(i%2==0)

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

suma+=lista[i];

i++;

}while(i<C);

printf("\n La suma de esos números es %d\n",suma);

getch();

return 0;

}
Programa No. 5 En una matriz buscar un elemento, borrar
elemento, agregar, usando funciones y una variable global

#include<stdio.h>

#include<conio.h>

#define C 10

int main(){

int listaC[C];

int suma=0,c=0,i=0,n;

clrscr();

printf("\n Cuantos elementos se leeran (no más de 10)\t ");

scanf("%d",&n);

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

scanf("%d",&listaC[i]);

clrscr();

printf("\tposicion\tnumero\n");

i=0;

do{

if(i%2==0)

if(listaC[i]/2*2!=listaC[i])

printf("\n\t\t %d\t%d ",i,listaC[i]);


suma+=listaC[i];

c++;

i++;

}while(i<n);

printf("\n Son %d y la suma de esos numeros es %d\n",c,suma);

getch();

return 0;

}
Programa No. 6 Tabla con números aleatorios entre 1 y 25

#include <conio.h>

#include <stdio.h>

#include <stdlib.h>

main(){

int tabla[3][2],i,j;

rand()%25;

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

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

tabla[i][j]=1+rand()%25;

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

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

printf("\t%d", tabla [i][j]);

printf("\n");

getch();

return 0;

}
Programa No. 7 Suma de matrices utilizando Funciones

#include <stdio.h>

#include <conio.h>

#define columna 4

#define renglon 4

main(){

int m1 [renglon][columna], m2 [renglon][columna], m3[renglon][columna];

int i,j,col_1,ren_1,col_2,ren_2,posX,posY,pX_1,pX_2;

int band_1;

clrscr();

do

printf("\n\t Matriz 1, dame el número de renglones y columnas");

scanf("%d %d",&ren_1,&col_1);

printf("\n\t Matriz 2, dame el número de renglones y columnas");

scanf("%d %d",&ren_2,&col_2);

if(ren_1==ren_2&&col_1==col_2)

band_1=0;

else

band_1=1;

printf("Numero de datos invalidos");


}

}while(band_1);

clrscr();

pX_1=0;

textcolor(5);

gotoxy(6,7);

/*llenar laprimera matriz*/

cprintf("matriz 1");

posX=5;posY=9;

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

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

gotoxy(posX,posY);

printf(" ");

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

posX+=2;

posX=5;

posY+=2;

pX_2=35;

gotoxy(40,7);

/*llenar la segunda matriz*/

cprintf("matriz 2");
posX=40;posY=9;

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

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

gotoxy(posX,posY);

printf(" ");

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

posX+=2;

posX=40;

posY+=2;

/* sumar */

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

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

m3[i][j]=m1[i][j]+m2[i][j];

posX=30;posY=30;

gotoxy(28,28);

textcolor(5);

/* mostrar suma */

cprintf("Resultado");

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

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

gotoxy(posX,posY);

printf("%d\t",m3[i][j]);

posX+=3;

posX=30;

posY+=3;

getch();

return 0;

Programa No. 8 Captura de una cadena


de caracteres con scanf
#include <stdio.h>

#include <conio.h>

#define columna 4

#define renglon 4

void escribe(int m1[renglon][columna], int ren_1,int col_1)

int i,j,posX,posY;

posX=30,posY=30;

gotoxy(28,28);

textcolor(5);

cprintf("Resultado");

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

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

gotoxy(posX,posY);

printf("%d\t",m1[i][j]);

posX+=3;

posX=30;

posY+=3;

}
void llenar(int m[renglon][columna], int ren,int col,int pX)

int i,j,posX,posY;

posX=5+pX;posY=9;

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

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

gotoxy(posX,posY);

printf(" ");

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

posX+=2;

posX=5+pX;

posY+=2;

void sumar(int m1[renglon][columna],int m2[renglon][columna],int

m3[renglon][columna],int ren_1,int col_1)

int i,j;

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

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

m3[i][j],m1[i][j];m2[i][j];
escribe(m3,ren_1,col_1);

main(){

char opr;

int m1[renglon][columna],m2 [renglon][columna],m3[renglon][columna];

int i,j,col_1,ren_1,col_2,ren_2,posX,posY,pX_1,pX_2;

int band_1;

clrscr();

do

printf("\n\t Matriz 1, dame el número de renglones y columnas");

scanf("%d %d",&ren_1,&col_1);

printf("\n\t Matriz 2, dame el número de renglones y columnas");

scanf("%d %d",&ren_2,&col_2);

if(ren_1==ren_2&&col_1==col_2)

band_1=0;

else

band_1=1;

printf("Numero de datos invalidos");

}while(band_1);

clrscr();

pX_1=0;
textcolor(5);

gotoxy(6,7);

cprintf("matriz 1");

llenar(m1,ren_1,col_1,pX_1);

pX_2=35;

gotoxy(40,7);

cprintf("matriz 2");

llenar(m2,ren_2,col_2,pX_2);

sumar(m1,m2,m3,ren_1,col_1);

getch();

return 0;

}
Programa No. 9 Muestra menú para
captura de nombre y cuenta letras

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main() {
int total,i;
char nombre[40], letra;
clrscr();
printf(" InDame el nombre\n"); nombre(0]='10';
gets (nombre);
fflush(stdin);
printf(" InCual letra se va a contar\n"); scanf("8c"‚&letra);
total=0;
for(i=0;i<strlen(nombre);
i++)
{
i f (letra==nombre[i])
total++; {
printf("inLa letra - %0 - se encontro %i veces en el nombre:
8s \n",letra, total, nombre); getch();
return 0;
}
Programa No. 10 Identifica si un carácter
es una letra del alfabeto o un dígito

#include <stdio.h>
#include <ctype.h>
#include <conio.h>
int main()
{
char car;
printf("\nCapture un caracter\n");
scanf("%f"‚&car);
if (isdigit(car))
printf("\nEl caracter capturado es un digito\n");
else {
i f (isalpha(car))
printf("\nEl caracter capturado es una letra del alfabeto");
if (isupper(car))
printf(" y es mayuscula\n");
else
printf("y es minuscula\n");
}
getch();
return 0;
}
Programa No. 11 Introduzca una cadena
de caracteres no más de 18

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

int main()
{
char cad[20],car;
int i=0;
clrscr();
printf("\nIntroduzca una cadena de caracteres (no más de 18)\n");
do
{
scanf("%c",&car);
if(¡car!='\n')
{
cad[i]=car;
i++;}
}while(¡car!='\n');
cad[i]='\0';/*Se añade el fin de la cadena*/
printf("\nLa cadena capturada es: %s", cad);
getch();
}

#include<string.h>
#define MAX 20

int main()
{
char cad[MAX],car;
int i=0,j;
clrscr();
printf("\nIntroduzca una cadena de caracteres (no más de 18) \n");
{
scanf("%c",&car);
if(¡car!='\n')
{
cad[i]=car;
i++;}
}while(¡car!='\n');
cad[i]='\0'; //colocando fin de cadena
clrscr();
Programa No. 12 Código ASCII

printf("\n La cadena capturada es: %s",cad);


printf("\n ASCII correspondiente\n");
for(j=0;j<i;j++){
printf("\t %d",cad[j]);
printf("\n La longitud de la cadena, contada con i es: %d",i);
printf("\n La longitud de la cadena medida con strlen es: %d", strlen (cad));
printf("\n La longitud del arreglo cad es: %d", sizeof(cad));
printf("\n La dirección donde se encuentra la cadena capturada es: %d",cad);
}
getch();
}
Programa No. 13 Leer un nombre y contar
el número de ocasiones que aparece la
letra seleccionada

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
int total,i;
char nombre[40],letra;
printf("\nDame el nombre\n");
nombre[0]='\0';
gets(nombre);
fflush(stdin);
printf("\nCual letra se va a contar\n");
scanf("%c",&letra);
total=0;
for(i=0;i<strlen(nombre);i++)
{
if (letra==nombre[i])
total++;
}
printf("\nLa letra - %c - se encontro %i veces en el nombre: %s\n",letra,total,nombre);
return 0;
}
Conteste las siguientes preguntas
¿Qué es un arreglo?
R= Un arreglo, o array, es un conjunto de elementos del mismo tipo de datos almacenados en
memoria continua. Existen diferentes tipos de arreglos; unidimensionales, bidimensionales,
tridimensionales, etcétera. El índice se usa para indicar la posición/declaración en un arreglo

¿Con qué número inicia la numeración de un arreglo?


R=Debe ser siempre un número entero, para hacer referencia a la posición de un elemento. Los
índices de los arreglos comienzan en cero, es decir, el primer elemento, es el elemento cero.

¿Puede un arreglo almacenar datos de tipo básico?


R=Los arreglos (matrices) se emplean para almacenar múltiples valores en una sola variable, frente
a las variables que sólo pueden almacenar un valor (por cada variable).

¿Puede un arreglo almacenar datos de tipo estructurado?


R=Los arreglos pueden contener cualquier tipo de datos, no solamente enteros.

¿Es posible inicializar el arreglo cuando se declara?


R=En C, un array se utiliza básicamente cuando queremos tener, por ejemplo, una secuencia de
números reunidos en una sola variable. Para inicializar un array, podemos hacer lo siguiente:
for (i = 0; i< 4; i++)
A[i] = i;
Otra manera de inicializar un array es asignándole los valores iniciales entre llaves de la siguiente:
int A[4] = {0, 1, 2, 3};

¿Cómo se escribe para asignar un valor en un arreglo?


R=Asignar valores a un elemento de un arreglo es una tarea relativamente sencilla, la asignación
se realiza colocando el nombre del arreglo seguido de un par de corchetes, entre los cuales se
coloca una expresión que, al ser evaluada, determine a qué elemento del arreglo se le quiere
asignar un valor, luego se coloca un signo de asignación seguido de una expresión que, al ser
evaluada, dará el valor que se desea asignar al elemento del arreglo.
¿Es posible que el arreglo tenga una, dos o más dimensiones?
R=Un array en C puede tener una, dos o más dimensiones. Por ejempló, un array de dos
dimensiones también denominado matriz, es interpretado como un array (unidimensional) de
dimensión "f" (número de filas), donde cada componente es un array (unidimensional) de
dimensión "c" (número de columnas). Un array de dos dimensiones contiene, pues, "f*c"
componentes.

¿Cuál es la diferencia entre arreglo de caracteres y cadena de


caracteres?
R=En C no existe un tipo predefinido para manipular cadenas de caracteres (string). Sin embargo,
el estándar de C define algunas funciones de biblioteca para tratamiento de cadenas.
Una cadena en C es un array de caracteres de una dimensión (vector de caracteres) que termina
con el carácter especial ‘\0’ (cero).
El formato para declarar una cadena es:
char nombre[n];
donde: n >= 1 y representa a la longitud-1 real de la cadena.

¿Es posible comparar dos cadenas de caracteres y decir cuál


tiene mayor longitud?
R=Cuando se comparan cadenas, se define un orden entre ellas. Las comparaciones se usan para
ordenar una secuencia de cadenas. Una vez que la secuencia está en un orden conocido, es más
fácil hacer búsquedas, tanto para el software como para las personas. Otras comparaciones
pueden comprobar si las cadenas son iguales. Estas comprobaciones de similitud son parecidas a
la igualdad, pero pueden omitirse algunas diferencias, como las diferencias entre mayúsculas y
minúsculas.

¿Cómo se ordenan los caracteres?


R=A diferencia de los arrays de tipos de datos numéricos (arrays de enteros, de números con punto
decimal, etc.), en donde cada elemento del array se debe considerar como una variable
independiente de los demás, los arrays de caracteres (cadenas) se pueden manipular de dos
maneras: de forma conjunta o separada

También podría gustarte