You are on page 1of 42

Informática I

Guía de Ejercicios Practicos


Lenguaje C

Año: 2014

Página 1
T.P. Nº 1: Diagramas de Flujo

Ejercicio, Problema Nº 1: Realizar un DF que asigne un valor a dos constantes, las


sume y muestre el resultado

Inicio

A= 1, B=2, C=0

C= A+B

“La suma es
igual a” C

Fin
Ejercicio, Problema Nº 2: Realizar un DF que asigne un valor una constantes A, por
teclado a una variable B, las sume y muestre el resultado.

Inicio

A= 1, B=0,
C=0
Inicio
“Ingrese valor
B”
A= 0, B=0,
C=0
B
“Ingrese valor A”

C= A+B

A
“La suma es
igual a” C
“Ingrese valor
B”

Fin
B
Ejercicio, Problema Nº 3: Realizar un diagrama de flujo que ingrese dos valores por
teclado, los sume y muestre el resultado. Cual es la ventaja respecto del ej.1
C= A+B

“La suma es
igualPágina
a” C 2

Fin
Respecto al ej. 1 la ventaja en este programa, es que se podrá cargar cualquier valor a
las variables, es decir, en el ejercicio 1 sonInicio
constantes que no cambiaran a lo largo del
programa.

A= 0, B=0, P

“Ingrese valor A”

Ejercicio, Problema Nº 4: Realizar “Ingrese


un DF valor
que ingrese dos números por teclado en
B”
las variables A y B, realizar el producto en P y mostrar lo siguiente: “El producto de A x
B es “ Resultado. (R)

P= AxB

“El producto
dePágina 3 P
AxB es”

Fin
Ejercicio, Problema Nº 5: Realizar un DF que ingrese en dos variables, el valor de la
base y la altura de un triángulo. Calcular el perímetro y la superficie y mostrar ambos
valores.
Inicio
“Ingrese valor
de altura”

A= 0, B=0, P,S
A

“Ingrese valor de
P= del
la base Ax3
triangulo”

S= (AxB)/2
B
“El perímetro
es” P

“La superficie
es” S

Fin

Página 4
Ejercicio, Problema Nº 6: Realizar un DF que ingrese por teclado 2 números y
muestre el mayor.

Ejercicio, Problema Nº 7:
Realizar un DF que ingrese por
teclado 3 números y
muestre los 2 más grandes.

Página 5
Ejercicio, Problema Nº 8: Realizar un DF que ingrese por teclado 2 números en las variable X
y Z. Si Z es mayor X realizar la suma
de ambas, en caso contrario,
realizar la resta de X – Z y mostrar el
resultado.

Ejercicio, Problema Nº
9: Realizar un DF que ingrese
por teclado 2 números en
las variable X y Z. Si Z es mayor
X realizar el cociente de
ambas, si X es menor que Z
realizar el producto, si son iguales, mostrar una
leyenda “SON IGUALES”.

Página 6
Ejercicio, Problema Nº
10: Realizar un DF que
ingrese por teclado 3
números y los muestre
ordenados de mayor a
menor.

Página 7
Ejercicio, Problema Nº 12: Realizar un DF que ingrese por teclado los valores de los
coeficientes de un polinomio de 2º grado, calcular y mostrar los valores de las raíces.

Ejercicio, Problema Nº 13: Realizar un DF que ingrese por teclado los parámetros que ud
considere necesarios para calcular la velocidad de un móvil con una aceleración A constante.

Ejercicio, Problema Nº 14: Realizar un DF que


ingrese por teclado la distancia a recorrer por un
movil, y calcular el tiempo que demandara
recorrerla en un móvil velocidad = 12Km/h con
Inicio
aceleración = 0.

X, T, V=12

“Ingrese distancia
a recorrer”

T= X/V

“El tiempo que


tardara sera” T

Fin
Página 8
Ejercicio, Problema Nº 15: Realizar un DF que ingrese por teclado la distancia a recorrer por
un movil, y calcular el tiempo que demandara recorrerla en un móvil velocidad = Ingresada
también por teclado con aceleración deberá definirse en una constante.

Inicio

x, t, v, a=0

“Ingrese distancia y
velocidada recorrer”

x,v

t= x/v

“El tiempo que


tardara sera” T

Fin

Ejercicio, Problema Nº 17: Realizar un DF que


permita convertir temperatura entre los tipos
de sistemas.

T. P. Nº2 : Introdución al Lenguaje C

Página 9
Ejercicio, Problema Nº 1: Realizar un programa en C que defina una variable entera
y luego imprima el contenido de esta utilizando %d, %f, y %c. Que hace en cada caso?

#include <stdio.h>
#include <conio.h>
int main()
{
int a=5;
clrscr();
printf(“el contenido de la variable es: %d”,a);
printf(“el contenido de la variable es: %f”,a);
printf(“el contenido de la variable es: %c”,a);
return(0);
}
%d= muestra variable del tipo entera

%f= muestra variable del tipo flotante

%c=muestra variable del tipo carácter

Ejercicio, Problema Nº 2: Realizar un programa en C que defina dos variables


enteras, las sume y almacene el resultado en la variable S y muestre el siguiente
mensaje: “La suma de V1 + V2 = S” reemplazando cada variable por su valor.

#include<stdio.h>
#include<stlib.h>
int main()
{
int V1,V2,S;
clrscr();
printf(“ingrese dos nuú meros”);
scanf("%d %d",& V1,& V2);
S=V1+V2;
printf(“la suma es igual a : %d”,S);
return(0);

Ejercicio, Problema Nº 3: Realizar un programa en C que defina 2 variables. Una


entera y otra float. Almacenar en ambas el numero 5.3423, luego mostrarlas por
pantalla? Que se mostro para cada una?

#include<stdio.h>
#include<conio.h>
int main()
{
int a=5.3423;
float b=5.3423;

Página
10
clrscr();
printf(el valor de a es:%d”, a);
printf(el valor de b es:%f”,b);
return(0);
}

En la guardada como entero se mostró solo un 5 y en la guardada como float se


mostró 5.3423.

Ejercicio, Problema Nº 4: Realizar un programa en C que almacene 2 valores


enteros en las variables A y B. Realizar el cociente de A/B y almacenarlo en C (float).
Cuál es el resultado? Son correctos los valores decimales?

#include<stdio.h>
#include<conio.h>
int main()
{
int A,B;
float C;
clrscr();
printf(“ingrese dos valores:”);
scanf(“%d %d”,& A ,& B);
C=A/B;
printf(“el resultado es: %.2f”, C); // se muestran con dos nuú meros despueú s de la coma
return(0);
}

T. P. Nº3 : Control de Flujo

Ejercicio, Problema Nº 1: Realizar un programa en C que muestre los números del 0


al 100 utilizando WHILE – DO / WHILE y FOR.

#include<stdio.h>//del 0 al 100 con for


#include<conio.h>
#define n 100
int main()
{
int i;
clrscr();
for(i=0;i<=n;i++)
printf(“\n %d”, i);
getch();
}

#include<stdio.h>// del 0 al 100 con while

Página
11
#include<conio.h>
Int main()
{
int i=0;
clrscr();
while(i<=100)
{ printf(“\n %d”, i);
i=i++;
}
getch();
}
#include<stdio.h>// del 0 al 100 con do while
#include<conio.h>
int main()
{
int i=0;
clrscr();
do
{ printf(“\n %d”, i);
i=i++;
} while(i<=100);
return(0);
}

Ejercicio, Problema Nº 2: Realizar un programa en C que calcule y muestre un tabla


de multiplicación. El DF deberá solicitar un número y mediante una estructura
repetitiva calcular lo solicitado del 0 a 10. (R)

#include<stdio.h>
#include<stlib.h>
Int main()
{
int i=0,t,r;
clrscr();
printf(“\nIngrese valor de la table:”);
scanf(“%d”,& t);
do
{ r=c*t;
printf(“\n %d*%d=%d”, i ,t ,r);
i=i++;
} while(i<=10);
return();
}

Página
12
Ejercicio, Problema Nº 3: Realizar un programa en C que ingrese por teclado 10
números, de a uno por vez , en una variable utilizando estructura While; acumular los
mismos y mostrar el resultado. Realizar lo mismo con FOR. Que es mas sintético?. Que
debería hacer para calcular y mostrar el promedio de los números ingresados?

#include<stdio.h>
#include<conio.h>
vint main()
{
int a[10],i=0,s=0;
float p;
clrscr();
while(a<10)
{
printf(“\n ingrese un valor:”);
scanf(“%d”,& a[i]);
s=s+a[i];
i=i++;
}
printf(“la acumulacioú n de todo es: %d”, s);

Página
13
p= s/10;
printf(“el promedio es:%.2f”,p);
getch();
}
#include<stdio.h>//mismo ejercicio con for.
#include<conio.h>
#define n 10
int main()
{
int a[n],i=0,s=0;
float p;
clrscr();
for(i=0;i<n;i++)//el for es mas sintetico
{
printf(“\n ingrese un valor:”);
scanf(“%d”,& a[i]);
s=s+a[i];
}

printf(“la acumulacioú n de todo es: %d”, s);

p= s/n;

printf(“el promedio es:%.2f”,p);

getch();

Ejercicio, Problema Nº 4: Realizar un programa en C que ingrese por teclado


números, de a uno por vez , en una variable utilizando estructura While. El DF deberá
acumular los valores y contarlos de manera que pueda calcular el promedio. La carga
finalizará con el ingreso de un número negativo.

#include<stdio.h>
#include<conio.h>
int main()
{
int a=0, acum=0,i=0;
float p;
clrscr();
while(a>=0)
{
printf(“\n ingrese un valor”);
scanf(“%d”,&a);
i=i++;
acum=acum+a;
}

Página
14
p=acum/i;
printf(“el promedio es: %.2f”,p);
getch();
}

Ejercicio, Problema Nº 5: Realizar un programa en C que ingrese por teclado 20


números en la variable N utilizando FOR. El programa deberá mostrar cuantos
números impares I y cuantos pares P fueron ingresados. I y P es el nombre de los
contadores que deberá utilizar.

#include<stdio.h>
#include<conio.h>
int main()
{
int i=0,p=0,c=0,n,r;
clrscr();
printf(“ingrese 20 numeros:”);
for(c=0;c<20;c++)
{scanf(“%d”,&n);
r=n%2;
if(r==0)
p=p++;
else

Página
15
i=i++;
}
printf(“la cantidad de pares es %d y la de impares es %d”,p, i);
return();
}

Ejercicio, Problema Nº 6: Realizar un programa en C que ingrese por teclado


números, de a uno por vez, en la variable dato, utilizando estructura While. Deberá
calcular cuantos números ingresados se encuentran entre 0 y 10. Finalizar la carga
con el número -1.(R)

#include<stdio.h>
#include<conio.h>
void main()
{
int dato=0,i=0;
clrscr();
while(dato>=0)
{
printf(“\n ingrese un valor”);
scanf(“%d”,& dato);
if(dato<10)
i=i++;
}
printf(“La cantidad de numeros entre el 0 y el 10 son %d”, i);
return(0);
}

Ejercicio, Problema Nº 7: Realizar un programa en C que ingrese por teclado 23


números “positivos” (Debe validar), y mostrar el mayor. (R)

#include<stdio.h>
#include<conio.h>
int main()
{
int a=0,i=0,may=0;
clrscr();
printf(“ingrese 23 numeros:”);
do
{
while(a<0)
{
printf(“Deberaú ingresar un numero positivo:”);
scanf(“%d”,& a);
}

Página
16
scanf(“%d”,& a);
i=i++;
if(a>may)
may=a;
}while(a>0 && i<23);
printf(“El mayor es: %d”,may);
return(0);
}

Ejercicio, Problema Nº 8: Realizar un programa en C que ingrese números por


teclado “positivos” (Debe validar), utilizando un DO / WHILE. Determinar la posición en
que fue ingresado el menor.

#include<stdio.h>
#include<conio.h>
int main()
{
int a=0,i=0,m,c=0;
clrscr();
printf(“ingrese un numeros:”);
scanf(“%d”,& a);
m=a+1;
do
{
while(a<0)
{
printf(“Deberaú ingresar un numero positivo:”);
scanf(“%d”,& a);
}
printf(“ingrese un numeros:”);
scanf(“%d”,& a);
i=i++;
if(a<=m)
{c=c++;
m=a;}
}while(i<20);
printf(“La posicioú n del menor es: %d”,c);
return(0);
}

Ejercicio, Problema Nº 9: Realizar un programa en C que ingrese por teclado 100


números “entre 0 y 100” (Debe validar), y mostrar el mayor y el menor.

#include<stdio.h>
#include<conio.h>
int main()

Página
17
{
int a=0,i=0,m,may=0,c=0;
clrscr();
printf(“ingrese 100 numeros:”);
scanf(“%d”,& a);
m=a+1;
do
{
while(a<0)
{
printf(“Deberaú ingresar un numero positivo:”);
scanf(“%d”,& a);
}
scanf(“%d”,& a);
i=i++;
if(a<=m)
{c=c++;
m=a;}
if(a>may)
may=a;
}while(i<100);
printf(“El mayor es %d y el menor es %d”,may, m);
return();
}

Ejercicio, Problema Nº 10: Realizar un programa en C que ingrese por teclado 50


números “positivos” (Debe validar), y mostrar los dos mayores.

#include<stdio.h>
#include<conio.h>
int main()
{
int a=0,i=0,may=0,may2=0;
clrscr();
printf(“ingrese 50 numeros:”);
scanf(“%d”,& a);
do
{
while(a<=0)
{
printf(“Debe ingresar un numero positive:”);
scanf(“%d”,& a);
}
printf(“ingrese otro numeros:”);
scanf(“%d”,& a);

Página
18
i=i++;
if(a>may)
may=a;
else
{if(a>may2)
may2=a;}
}while(i<50);
printf(“Los dos mayores son %d y %d”,may, may2);
return();
}

Ejercicio, Problema Nº 11: Realizar un programa en C que ingrese por teclado


números entre 20 y 100 (Debe validar) utilizando WHILE (finaliza la carga con el
ingreso de un 0) y mostrar cuantas veces se repite el primer número ingresado.
#include<stdio.h>
#include<conio.h>
int main()
{
int a,b,i=0;
clrscr();
printf(“ingrese el primer nuú mero:”);
scanf(“%d”,& a);
b=a;
while(a>20 && a<100)
{
printf(“ingrese un numero:”);
scanf(“%d”,& a);
if(a==b)
i=i++;
}
printf(“se repite %d”, i);
return(0);
}
Ejercicio, Problema Nº 12: Realizar un programa en C que ingrese por teclado las
temperaturas máximas y mínimas por día de un determinado lugar. Se deberá
determinar en que día se registró la mayor amplitud térmica y cuál fue esta?. Validar
temperaturas. Finalizar la carga con el ingreso del numero 1000.

#include<stdio.h>
#include<conio.h>
void main()
{
int temp_max,temp_min,d,amp,amp_max=0,dia;
clrscr();
do{
printf(“ingrese dia , temperature maxima y minima:”);

Página
19
scanf(“%d %d %d”,&d ,&temp_max ,&temp_min);
amp=temp_max-temp_min;
if(amp>amp_max)
{amp_max=amp;
dia=d;}
}while(temp_max<1000 || temp_min<1000);
printf(“la mayor amplitude fue: %d y fue en el dia %d”, amp_max, dia);
getch();
}

Ejercicio, Problema Nº 13: Realizar un programa en C que calcule el factorial de un


número ingresado por teclado. Verificar que el número ingresado sea mayor o igual a
0.

#include<stdio.h>
#include<conio.h>
void main()
{
int fac=0;
clrscr();
do{
printf("Ingresa numero para calcular el factorial ");
scanf("%d",&fac);
}while(fact>=0);
int temp=fac-1;
int r=fac;
while (temp>=1)
{
r=r*temp;
temp--;
}

printf("El factorial de %d es: %d ", fac,r);


getch();
}

T. P. Nº4 : Arreglos

Ejercicio, Problema Nº 1: Realizar un programa en C que ingrese en un vector con


N=10 números y luego mostrarlo.

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{

Página
20
int v[n],i=0;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n;i++)
printf(“%d”, v[i]);
getch();
}

Ejercicio, Problema Nº 2: Realizar un programa en C que ingrese N números en un


vector, una vez finalizada esta operación calcular el promedio y mostrarlo. N = 20

#include<stdio.h>
#include<conio.h>
#define n 20
void main()
{
int v[n],i=0,s=0;
float p;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
s=s+v[i];
}
p=s/n;
printf(“el promedio es %d”, p);
getch();
}

Ejercicio, Problema Nº 3: Realizar un programa en C que ingrese N números en un


vector y luego determinar el mayor y la posición en que se encuentra.(R)

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0, may=0,p;
clrscr();
for(i=0;i<n;i++)

Página
21
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n;i++)
{
if(v[i]>may)
{
may=v[i];
p=i;
}
}
printf(“el mayor es %d y su posicion es %d”, may,p);
getch();
}

Ejercicio, Problema Nº 4: Realizar un programa en C que ingrese en un vector 20


números utilizando WHILE. Determinar los 3 números mas grandes que existen en el.

#include<stdio.h>
#include<conio.h>
#define n 20
void main()
{
int v[n],may=0,may2=0,may3=0,i=0;
clrscr();
while (i<n)
{
printf("\n ingrese un numero:");
scanf("%d",& v[i]);
i=i+1;
}
i=0;
while (i<n)
{
if(v[i]>may)
may=v[i];
else
{
if (v[i]>may2)
may2=v[i];
else
{
if(v[i]>may3)
may3=v[i];
}

Página
22
}
i=i+1;
}
printf("los tres mayores son: %d %d %d", may, may2, may3);
getch();
}

Ejercicio, Problema Nº 5: Realizar un programa en C que ingrese en un vector N


números positivos. Calcular y mostrar el promedio de los números pares. (R)

#include<stdio.h>
#include<conio.h>
#define n 20
void main()
{
int i=0,v[n],s=0,r,c=0;
float p;
clrscr();
for(i=0;i<n;i++)
{
do
{
printf(“\n Ingrese un valor:”);
scanf(“%d”,& v[i]);
}while(v[i]<0);
r=v[i]%2;
if(r==0)
{
s=s+v[i];
c=c++;
}
}
p=s/c;
printf(“el promedio de los pares es: %.2f”, p);
getch();
}

Ejercicio, Problema Nº 6: Realizar un programa en C que ingrese en un vector N


números positivos. Calcular y mostrar el promedio de los números que se encuentran
en posiciones pares.

#include<stdio.h>
#include<conio.h>
#define n 20
int main()
{

Página
23
int i=0,v[n],s=0,r,c=0;
float p;
clrscr();
for(i=0;i<n;i++)
{
do
{
printf(“\n Ingrese un valor:”);
scanf(“%d”,& v[i]);
}while(v[i]<0);
r=i%2;
if(r==0)
{
s=s+v[i];
c=c++;
}
}
p=s/c;
printf(“el promedio de las posiciones pares son: %.2f”, p);
getch();
}

Ejercicio, Problema Nº 7: Realizar un programa en C que ingrese en un vector N


números positivos. Calcular y mostrar el promedio de los números pares que se
encuentran en posiciones impares.

#include<stdio.h>
#include<conio.h>
#define n 20
int main()
{
int i=0,v[n],s=0,r,c=0,t;
float p;
clrscr();
for(i=0;i<n;i++)
{
do
{
printf(“\n Ingrese un valor:”);
scanf(“%d”,& v[i]);
}while(v[i]<0);
r=v[i]%2;
t=i%2;
if(t==1)
{

Página
24
if(r==0)
{
s=s+v[i];
c=c++;
}
}
}
p=s/c;
printf(“el promedio de los pares es: %.2f”, p);
getch();
}

Ejercicio, Problema Nº 8: Realizar un programa en C que ingrese en un vector N


números. Determinar si los mismos se encuentran cargados en forma ascendente.
Idem descendente.

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0,b=0;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n;i++)
{
if(v[i]<v[i+1])
else
{b=1;}
}
if(b==0)
printf(“Esta ordenado de forma ascendente”);
else
printf(“No esta ordenado”);
getch();
}
#include<stdio.h>// de forma desendente
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0,b=0;

Página
25
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n-1;i++)
{
if(v[i]>v[i+1])
else
{b=1;}
}
if(b==0)
printf(“Esta ordenado de forma descendente”);
else
printf(“No esta ordenado”);
getch();
}

Ejercicio, Problema Nº 9: Realizar un programa en C que ingrese en un vector N


números. Determinar si los mismos se encuentran cargados en forma ascendente pero
en secuencia ininterrumpida de 1 en 1. Es decir por ejemplo si el primer elemento es
4, los restantes deberán ser 5,6,7,8….etc.

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0,b=0,r,a=0;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n-1;i++)
{
if(v[i]<v[i+1])
{
r=v[i+1]-v[i];
if(r==1)
else
{a=1;}
}
else

Página
26
{b=1;}
}
if(b==0 && a==0)
printf(“Esta ordenado de forma ascendente y cumple con un intervalo de 1”);
else
printf(“No esta ordenado o no cumple con un intervalo de 1”);
getch();
}

Ejercicio, Problema Nº 10: Realizar un programa en C que ingrese en un vector N


números. Determinar cuantos números se encuentran el en intervalo de 10 a 20 y
cuantos de 30 a 40. Mostrar el resultado.

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0,b=0,r,c=0,d=0;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n-1;i++)
{
if(v[i]<v[i+1])
else
{b=1;}
}
if(b==0)
{
for(i=0;i<n;i++)
{
r=v[i+1]-v[i];
if(r>=10 || r<=20)
c=c++;
else
{
if(r>=30 || r<=40)
d=d++;
}
}
}
printf(“Cantidad de intervalos de 10 a 20 son %d”,c);

Página
27
printf(“Cantidad de intervalos de 30 a 40 son %d”,d);uu
getch();
}

Ejercicio, Problema Nº 11: Realizar un programa en C que ingrese en un vector N


números. Ordenarlos en forma ascendente y luego mostrarlo.(R)

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0,c=0,aux,j=0;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
}
for(i=0;i<n-1;i++)
{
for(j=0;j<n-1;j++)
{
if(v[j]>v[j+1])
{
aux=v[j];
v[j]=v[j+1];
v[j+1]=aux;
}
}
}
for(i=0;i<n;i++)
{
printf(“\n %d”, v[i]);
}
getch();
}

Ejercicio, Problema Nº 12: Realizar un programa en C que ingrese en un vector N


números utilizando un DO/WHILE. Mostrar los elementos entre la posición 3 y N-2.

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{

Página
28
int v[n],i=0,c=0,aux,j=0;
clrscr();
do
{
printf(“ingrese un numero:”);
scanf(“%d”, & v[i]);
i=i++;
}while(i<n);
do
{
if(i>=3 && i<=n-2)
printf(“%d”, v[i]);
i=i++;
}while(i<n);
getch();
}

Ejercicio, Problema Nº 13: Realizar un programa en C que ingrese en un vector N


números. Pasar a un vector auxiliar, los números mayor a al promedio del vector.

#include<stdio.h>
#include<conio.h>
#define n 10
void main()
{
int v[n],i=0,s=0,aux[n];
float p;
clrscr();
for(i=0;i<n;i++)
{
printf(“ingrese un numero:”);
scanf(“%d”,&v[i]);
s=s+v[i];
}
p=s/n;
for(i=0;i<n;i++)
{
if(v[i]>p)
aux[i]=v[i];
printf(“%d”, aux[i]);
}
getch();
}

Ejercicio, Problema Nº 14: Realizar un programa en C que ingrese números en una


matriz de n x n y luego mostrarla por filas. Hacer lo mismo por columnas.

Página
29
#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
printf("\n%d",m[f] [0]);
printf("\n%d",m[f] [1]);
printf("\n%d",m[f] [2]);
}
getch();
}
#include<stdio.h>//mostrar valores por columna
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
printf("\n%d",m[0] [f]);
printf("\n%d",m[1] [f]);
printf("\n%d",m[2] [f]);
}
getch();
}

Página
30
Ejercicio, Problema Nº 15: Realizar un programa en C que ingrese números en una
matriz (por filas). Calcular y mostrar el promedio de la misma.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,s=0;
float p;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el elemento %d %d: ", f, c);
scanf("%d",& m[f] [c]);
s=s+m[f] [c];
}
}
p=s/(n*n);
printf(“El promedio es: %.2f”,p);
getch();
}

Ejercicio, Problema Nº 16: Realizar un programa en C que ingrese números en una


matriz de n x n. Calcular y mostrar el promedio de la 1º Fila. (R)

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,s1=0;
float p1;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)

Página
31
{
s1=s1+m[f][0];
}
p1=s1/n;
printf(“los promedios por fila son\n 1ºfila: %.2f”, p1);
getch();
}

Ejercicio, Problema Nº 17: Realizar un programa en C que ingrese números en una


matriz de n x n. mostrar los números que se encuentran en filas pares y columnas
impares.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,r,r2;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
r=f%2;
r2=c%2;
if(r==0 && r2==1)
printf(“\n Elemento fila par y columna impar: %d”,m[f][c]);
}
}
getch();
}

Ejercicio, Problema Nº 18: Realizar un programa en C que ingrese números en una


matriz cuadrada. Recorrer y mostrar los números sobre la diagonal principal.
Utilizando un FOR y luego haciéndolo con 2 FOR.

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

Página
32
#define n 3
int main()
{
int m[n] [n],f=0,c=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
printf(“la diagonal principal es:”);
for(f=0;f<n;f++)
{
printf("\n%d",m[f] [f]);
}
//Para hacerlo con dos for remplazar el anterior por esto:
//for(f=0;f<n;f++)
// {for(c=0;c<n;c++)
// {
// printf("\n%d",m[f] [f]);
// }
// }
getch();
}

Ejercicio, Problema Nº 19: Realizar un programa en C que ingrese números en una


matriz de n x n. Mostrar el número mas grande que se encuentra en la diagonal
principal. Realizar el mismo ejercicio para la diagonal secundaria.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,may=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}

Página
33
}
for(f=0;f<n;f++)
{
if(m[f][f]>may)
may=m[f][f];
}
printf(“el mayor de la diagonal principal: %d”, may);
getch();
}
#include<stdio.h>//diagonal secundaria
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,may=0,d=2;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
if(m[f][d]>may)
may=m[f][d];
d=d-1;
}
printf("el mayor de la diagonal principal: %d", may);
getch();
}

Ejercicio, Problema Nº 20: Realizar un programa en C que ingrese números en una


matriz de n x m. Calcular y mostrar el promedio de cada fila.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,s1=0,s2=0,s3=0;
float p1,p2,p3;
clrscr();
for(f=0;f<n;f++)

Página
34
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
s1=s1+m[f][0];
s2=s2+m[f][1];
s3=s3+m[f][2];
}
p1=s1/n;
p2=s2/n;
p3=s3/n;
printf(“los promedios por fila son\n 1ºfila: %.2f \n 2ºfila: %.2f \n 3ºfila: %.2f”, p1 , p2, p3);
getch();
}

Ejercicio, Problema Nº 21: Realizar un programa en C que ingrese números en una


matriz de n x m. Calcular y mostrar el número de columna de mayor promedio.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,s1=0,s2=0,s3=0;
float p1,p2,p3;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
s1=s1+m[f][0];
s2=s2+m[f][1];
s3=s3+m[f][2];
}
p1=s1/n;

Página
35
p2=s2/n;
p3=s3/n;
if(p1>p2)
{
if(p1>p3)
{
printf(“el promedio mayor es %.2f y su columna es 0”,p1);
}
else
{
printf(“el promedio mayor es %.2f y su columna es 2”,p3);
}
}
else
{
if(p2>p3)
{
printf(“el promedio mayor es %.2f y su columna es 1”,p2);
}
else
{
printf(“el promedio mayor es %.2f y su columna es 2”,p3);
}
}
getch();
}

Ejercicio, Problema Nº 22: Realizar un programa en C que ingrese números en una


matriz de n x n. Mostrar la fila en al que se encuentra el número mas grande de la
matriz.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,d=0,may=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}

Página
36
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
if(m[f] [c]>may)
{
may=m[f] [c];
d=f;
}
}
}
printf(“El mayor numero de la matriz se encuentra en la fila %d”,d);
getch();
}

Ejercicio, Problema Nº 23: Realizar un programa en C que ingrese números en una


matriz de n x n. Mostrar la fila en al que se encuentra el número mas grande de la
ultima columna.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,d=0,may=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
for(c=n-1;c<n;c++)
{
if(m[f] [c]>may)
{
may=m[f] [c];
d=f;
}
}
}
printf(“El mayor numero de la matriz se encuentra en la fila %d”,d);

Página
37
getch();
}

Ejercicio, Problema Nº 24: Realizar un programa en C que ingrese números


positivos en una matriz de n x n. Calcular e el promedio de la matriz triangulo superior.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,s=0,d=0;
float p;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
do{
printf("ingrese el elemento %d %d: ", f, c);
scanf("%d",& m[f] [c]);}while(m[f][c]<0);
}
}
for(f=0;f<n;f++)
{
for(c=d;c<n;c++)
{
s=s+m[f] [c];
}
d=d++;
}
p=s/(n*2);
printf(“El promedio es: %.2f”,p);
getch();
}

Ejercicio, Problema Nº 25: Realizar un programa en C que ingrese números


positivos en una matriz de n x n. Ordenar la última fila en forma descendente.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,aux=0;
float p;

Página
38
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
do{
printf("ingrese el elemento %d %d: ", f, c);
scanf("%d",& m[f] [c]);}while(m[f][c]<0);
}
}
for(c=0;c<n-1;c++)
{
for(f=0;f<n-1;f++)
{
if(m[n-1][f]> m[n-1][f+1])
{
aux= m[n-1][f];
m[n-1][f]= m[n-1][f+1];
m[n-1][f+1]=aux;
}
}
}
for(f=0;f<n;f++)
{
printf("\n%d",m[f] [0]);
printf("\n%d",m[f] [1]);
printf("\n%d",m[f] [2]);
}
getch();
}

Ejercicio, Problema Nº 26: Realizar un programa en C que ingrese por teclado números positivos
en una matriz, una vez finalizada la misma, determinar si la misma es identidad.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,b=0;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{

Página
39
do{
printf("ingrese el elemento %d %d: ", f, c);
scanf("%d",& m[f] [c]);}while(m[f][c]<0);
}
}
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
if(c==f)
{
if(m[f][c]==1)
else
{b=1;}
}
else
{
if(m[f][c]==0)
else
{b=1;}
}
}
}
if(b==0)
printf(“La matriz es matriz identidad”);
getch();
}

Ejercicio, Problema Nº 27: Realizar un programa en C que cargue una matriz


cuadrada con enteros y calcular el determinante.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,pivote=0,aux=0,d=0,det;
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}

Página
40
for(d=0;d<n-1;d++)
{
pivote=m[d][d];
for(f=d+1;f<n-1;f++)
{
aux=m[f][d];
for(c=0;c<n-1;c++)
{
m[f][c]=m[f][c]-(m[d][c]*(aux/pivote));
}
}
}

for(d=0;d<n-1;d++)
{
det= m[d][d];
}
getch();
}

Ejercicio, Problema Nº 28: Realizar un programa en C que ingrese por teclado


valores en una matriz M cuadrada, una vez finalizada la carga, armar la matriz S
traspuesta de M.

#include<stdio.h>
#include<conio.h>
#define n 3
int main()
{
int m[n] [n],f=0,c=0,s[n][n];
clrscr();
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("ingrese el element %d %d: ", f, c);
scanf("%d",& m[f] [c]);
}
}
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
s[c][f]=m[f][c];
}
}

Página
41
printf(“La matriz transpuesta es:”);
for(f=0;f<n;f++)
{
for(c=0;c<n;c++)
{
printf("\n El elemento %d %d es: %d", f, c,s[f][c]);
}
}
getch();
}

Página
42

You might also like