Programacion en C++
Programacion en C++
Programacion en C++
Ejercicio resueltos
pares
getch();
}
Generar 5,10,15,20,25,30,35....n
Cdigo:
#include<stdio.h>
#include<conio.h>
int main ()
{
int n, c=1, serie=5;
printf("Cantidad de terminos: ");
scanf("%d",&n);
while(c<=n)
{
printf("%d,",serie);
serie+=5; c++;
}
getch();
}
Si n=7 generar 7,6,5,4,3,2,1
Cdigo:
#include<stdio.h>
#include<conio.h>
int main ()
{
int n, c=1;
printf("Cantidad de terminos: ");
scanf("%d",&n);
int serie=n;
while(c<=n)
{
printf("%d,",serie);
serie--; c++;
}
getch();
}
{
printf ("[%d]",V[i]);
}
}
void invierte (int V [], int d)
{
int aux1;
int fin1 = d / 2;
for (int i = 1 ; i <= (d / 2) / 2 ; i++)
{
aux1 = V [i];
V [i] = V [fin1];
V [fin1] = aux1;
fin1--;
}
fin1 = d;
for (int j = (d / 2) + 1 ; j <= (d / 2) + 1 ; j++)
{
aux1 = V [j];
V [j] = V [fin1];
V [fin1] = aux1;
fin1--;
}
}
int main ()
{
int V[20];
int d;
printf ("Inserte dimen. del vector: "); scanf("%d",&d);
llenar (V, d);
printf ("\nVECTOR ORIGINAL: \n");
mostrar (V, d);
printf ("\n\nVECTOR LUEGO DE LA INVERSION: \n");
invierte (V, d);
mostrar (V, d);
getch();
}
/*Dado un polinomio evualuarlo en el punto x (todo en un vector)*/
Cdigo:
#include <stdio.h>
#include <conio.h>
void llenar (int V[20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf ("Inserte pos.[%d]: ",i);
scanf("%d",&V[i]);
}
}
void mostrar (int V[20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf ("[%d]",V[i]);
}
}
Generar la matriz:
[01][02][03][04]
[08][07][06][05]
[09][10][11][12]
Cdigo:
#include<stdio.h>
#include<conio.h>
void llenar (int M[20][20], int f, int c)
{
int k=1;
for (int i=1;i<=f;i++)
{
if (i%2!=0)
{
for (int j=1;j<=c;j++)
{
M[i][j]=k; k++;
}
}
else
{
for (int j=c;j>=1;j--)
{
M[i][j]=k; k++;
}
}
}
}
void mostrar (int M[20][20], int f, int c)
{
for (int i=1;i<=f;i++)
{
printf("\n");
for (int j=1;j<=c;j++)
{
printf("[%d] ",M[i][j]);
}
}
}
int main ()
{
int f, c;
int M[20][20];
printf("Inserte filas de M: "); scanf("%d",&f);
printf("Inserte cols. de M: "); scanf("%d",&c);
llenar(M, f, c);
mostrar(M, f, c);
getch();
}
Generar la matriz:
[01][02][03][04]
[05][06][07][00]
[08][09][00][00]
[10][00][00][00]
Cdigo:
#include <stdio.h>
#include <conio.h>
void llenar (int M[20][20], int d)
{
int cont=1;
for (int i=1;i<=d;i++)
{
for (int j=1;j<=d;j++)
{
if ((i+j)<=(d+1))
{M[i][j]=cont; cont++;}
else
M[i][j]=0;
}
}
}
void mostrar (int M[20][20], int d)
{
for (int i=1;i<=d;i++)
{
printf("\n");
for (int j=1;j<=d;j++)
{
printf ("[%d] ",M[i][j]);
}
}
}
int main ()
{
int d;
int M[20][20];
printf("Insert dimen: "); scanf("%d",&d);
llenar(M, d);
mostrar(M, d);
getch();
}
Dadas dos matrices A y B intercambiar los minimos de A con los maximos de B
Cdigo:
#include <stdio.h>
#include <conio.h>
void llenar (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
printf ("Inserte pos[%d][%d]: ",i,j);
scanf("%d",&M[i][j]);
}
}
}
void mostrar (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
printf("\n");
for (int j = 1 ; j <= c ; j++)
{
printf ("[%d]",M[i][j]);
}
}
}
int menor (int M[20][20], int f, int c)
{
int men = M [1] [1];
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
if (M [i] [j] < men)
men = M [i] [j];
}
}
return (men);
}
int maximo (int M[20][20], int f, int c)
{
int max = M [1] [1];
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
if (M [i] [j] > max)
max = M [i] [j];
}
}
return (max);
}
void intercambiar (int A[20][20], int fa, int ca, int B[20][20], int fb, int cb)
{
int min_a = menor (A, fa, ca);
int max_b = maximo (B, fb, cb);
//para cambiar los minimos de A con los maximos de B
for (int i = 1 ; i <= fa ; i++)
{
for (int j = 1 ; j <= ca ; j++)
{
if (A[i][j] == min_a)
A[i][j]=max_b;
}
}
//para intercambiar los maximos de con los minimos de A
for (int i = 1 ; i <= fb ; i++)
{
for (int j = 1 ; j <= cb ; j++)
{
if (B[i][j] == max_b)
B[i][j]=min_a;
}
}
}
int main ()
{
int A [20] [20];
int B [20] [20];
int fa, ca, fb, cb;
printf ("Insert filas de
printf ("Insert columnas
printf ("Insert filas de
printf ("Insert columnas
A:
de
B:
de
"); scanf("%d",&fa);
A: "); scanf("%d",&ca);
"); scanf("%d",&fb);
B: "); scanf("%d",&cb);
//lectura de matrices
printf ("\nINSERTANDO DATOS EN MATRIS A: \n");
llenar (A, fa, ca);
printf ("\nINSERTANDO DATOS EN MATRIS B: \n");
llenar (B, fb, cb);
printf ("\nMATRICES ORIGINALMENTE INSERTADAS: ");
mostrar (A, fa, ca);
printf ("\n");
mostrar (B, fb, cb);
printf ("\n");
//intercambiando elementos
intercambiar (A, fa, ca, B, fb, cb);
printf ("\nMATRICES DESPUES DEL INTERCAMBIO:");
mostrar (A, fa, ca);
printf ("\n");
mostrar (B, fb, cb);
getch();
}
int main()
{
int M [20] [20];
int d;
printf ("Inserte dimen. de la matris cuadrada: ");
scanf("%d",&d);
llenar (M, d);
printf ("\nMATRIS ORIGINAL: ");
mostrar (M, d);
printf ("\n\nMATRIS CON LA DIAGONAL PRINCIPAL INVERTIDA: ");
invierte (M, d);
mostrar (M, d);
getch();
}
/*Dada una matris cuadrada invertir su diagonal secundaria*/
Cdigo:
#include <stdio.h>
#include <conio.h>
void llenar (int M[20][20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
for (int j = 1 ; j <= d ; j++)
{
printf ("Inserte pos[%d][%d]: ",i, j);
scanf("%d",&M [i] [j]);
}
}
}
void mostrar (int M[20][20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf("\n");
for (int j = 1 ; j <= d ; j++)
{
printf ("[%d]",M [i] [j]);
}
}
}
void invierte
{
int fin = d;
for (int i =
{
int aux = M
M [i] [d] =
M [d] [i] =
fin--;
}
}
int main()
{
int M [20] [20];
int d;
printf ("Inserte dimen. de la matris cuadrada: ");
scanf("%d",&d);
llenar (M, d);
printf ("\nMATRIS ORIGINAL: ");
mostrar (M, d);
printf ("\n\nMATRIS CON LA DIAGONAL SECUNDARIA INVERTIDA: ");
invierte (M, d);
mostrar (M, d);
getch();
}
/*Dada dos matrices de diferentes tamanios R y S mostrar los elementos comunes de
R en S*/
Cdigo:
#include <stdio.h>
#include <conio.h>
void llenar (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
printf ("Inserte pos[%d][%d]: ",i,j);
scanf("%d",&M [i] [j]);
}
}
}
void mostrar (int M[20][20], int f, int c)
{
R: ");
de R: ");
S: ");
de S: ");
{
for (int j = 1 ; j <= c ; j++)
{
printf ("Inserte pos[%d][%d]: ",i,j);
scanf("%d",&M [i] [j]);
}
}
}
void mostrarMatris (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
printf ("\n");
for (int j = 1 ; j <= c ; j++)
{
printf ("[%d]",M [i] [j] );
}
}
}
void busqueda (int M[20][20], int f, int c, int e)
{
int bn = 0;
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
if (M [i] [j] == e)
{
printf("\nEl numero: %d se encuentra en la posicion: [%d][%d] de la
matris",e, i, j);
bn = 1;
}
}
}
if (bn == 0)
printf("\nNo se encontro el numero %d en la matris :(",e);
}
int main ()
{
int M [20] [20];
int f, c, numero;
printf ("Inserte filas de la matris: ");
scanf("%d",&f);
printf ("Inserte columnas de la matris: ");
scanf("%d",&c);
printf ("\nLLENANDO MATRIS: \n");
llenarMatris (M, f, c);
printf ("\nLA MATRIZ Z: ");
mostrarMatris (M, f, c);
printf ("\n\nInserte un numero: ");
scanf("%d",&numero);
busqueda (M, f, c, numero);
getch();
}
return (cant);
}
int primosVector (int V[20], int d)
{
int cant = 0;
for (int i = 1 ; i <= d ; i++)
{
int c = 0;
for (int j = 1 ; j <= V [i] ; j++)
{
if (V [i] % j == 0)
c++;
}
if (c == 2)
cant++;
}
return (cant);
}
int main()
{
int M [20] [20];
int V [20];
int f, c, d;
printf ("Inserte filas de la matris: ");
scanf("%d",&f);
printf ("Inserte columnas de la matris: ");
scanf("%d",&c);
printf ("Inserte dimension del vector: ");
scanf("%d",&d);
printf ("\nLLENANDO MATRIS: \n");
llenarMatris (M, f, c);
printf ("\nLLENANDO EL VECTOR: \n");
llenarVector (V, d);
printf ("\nLA MATRIS: ");
mostrarMatris (M, f, c);
printf ("\n\nEL VECTOR: \n");
mostrarVector (V, d);
int primos = primosMatris (M, f, c) + primosVector (V, d);
printf ("\n\nLA CANTIDAD DE NUMEROS PRIMOS QUE HAY EN LOS ARREGLOS ES:
%d",primos);
getch();
}
{
for (int j = 1 ; j <= c ; j++)
{
printf ("Inserte pos[%d][%d]: ",i,j);
scanf("%d",&M [i] [j]);
}
}
}
void mostrarMatris (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
printf ("\n");
for (int j = 1 ; j <= c ; j++)
{
printf ("[%d]",M [i] [j] );
}
}
}
void llenarVector (int V[20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf ("Inserte pos.[%d]: ",i);
scanf("%d",&V [i]);
}
}
void mostrarVector (int V[20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf ("[%d]",V [i]);
}
}
void procedure (int M[20][20], int f, int c, int V[20], int d)
{
for (int i = 1 ; i <= f ; i++)
{
int sw = 1;
for (int j = 1 ; j <= c ; j++)
{
for (int k = 1 ; k <= d ; k++)
{
if (M [j] [i] != V [k])
sw = 0;
}
}
if (sw == 1)
printf ("\n\nLa columna %d es igual al vector",i);
}
}
int main ()
{
int M [20] [20];
int V [20];
int f, d;
printf ("Inserte filas de la matris: ");
scanf("%d",&f);
printf ("Inserte dimension del vector: ");
scanf("%d",&d);
printf ("\nLLENANDO MATRIS: \n");
llenarMatris (M, f, d);
printf ("\nLLENANDO EL VECTOR: \n");
llenarVector (V, d);
printf ("\nLA MATRIS: ");
mostrarMatris (M, f, d);
printf ("\n\nEL VECTOR: \n");
mostrarVector (V, d);
procedure (M, f, d, V, d);
getch();
}
/*Dada una matris Z almacenar en un vector A la suma por sus columnas
y en un vector B la suma por sus filas */
Cdigo:
#include <stdio.h>
#include <conio.h>
void llenarMatris (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
printf ("Inserte pos[%d][%d]: ",i,j);
scanf("%d",&M [i] [j]);
}
}
}
void mostrarMatris (int M[20][20], int f, int c)
{
for (int i = 1 ; i <= f ; i++)
{
printf ("\n");
for (int j = 1 ; j <= c ; j++)
{
printf ("[%d]",M [i] [j] );
}
}
}
void llenarVector (int V[20], int d)
{
for (int i = 1 ; i <= d ; i++)
{
printf ("Inserte pos.[%d]: ",i);
scanf("%d",&V [i]);
}
}
void mostrarVector (int V[20], int d)
{