Sie sind auf Seite 1von 30

C++ Ejercicios Básicos

Mostrar los multiplos de 3 comprendidos entre los numeros 1 y 20


Código:
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
int main ()
{
clrscr();
for (int i=1;i<=20;i++)
{
cout<<i;
if (i%3==0) cout<<" Es multiplo de 3" <<endl;
else cout<<" No es multiplo de 3"<<endl;
}
getch();
return 0;
}

Hallar A+B-C+100
Código:
#include <stdio.h>
#include <conio.h.>
int main ()
{
int A, B, C;
printf("Inserte valor para A: "); scanf("%d",&A);
printf("Inserte valor para B: "); scanf("%d",&B);
printf("Inserte valor para C: "); scanf("%d",&C);
printf("\n%d + %d - %d + 100 = %d",A, B, C, (A+B+C-100));
getch();
}

Obtener (a-b)(a+b)
Código:
#include <stdio.h>
#include <conio.h>
int main ()
{
int a, b;
printf("Inserte valor a: "); scanf("%d",&a);
printf("Inserte valor b: "); scanf("%d",&b);
printf("(%d-%d) (%d+%d) = %d",a, b, a, b,((a-b)*(a+b)));
getch();
}

Leer un numero de 3 digitos y sumarlos


Código:
#include <stdio.h>
#include <conio.h>
int main ()
{
int numero, sum_dig=0;
printf("Inserte un numero de 3 digitos: "); scanf("%d",&numero);
if (numero>=100)
{
int num=numero; //salvamos en num, la variable numero
while (numero!=0)
{
sum_dig=sum_dig+(numero%10); //para sacar el ultimo digito de
numero
numero=numero/10; //elimina el ultimo digito de numero
}
printf("La suma de los digitos de %d es : %d",num, sum_dig);
}
else
printf("\a ERROR: El digito no tiene 3 digitos");
getch();
}

Dado un numero verificar:


- Que tenga dos digitos
- Verificar si sus digitos son pares
- Promediar sus digitos
Código:
#include <stdio.h>
#include <conio.h>
int main ()
{
int numero;
printf("Inserte num. de dos digitos pares: ");
scanf("%d",&numero);
int aux=numero;
if(numero<100 && numero>9)
{
int d1=numero%10;
numero=numero/10;
int d2=numero%10;
if(d1%2==0 & d2%2==0)
printf("El promedio d los digitos de %d es: %d",aux,(d1+d2)/2);
}
else
printf("\aERROR: el numero no tiene dos digitos");
getch();
}

Dado un numero verificar si es positivo, negativo o nulo


Código:
#include <stdio.h>
#include <conio.h>
int main ()
{
int numero;
printf("Inserte un numero: ");
scanf("%d",&numero);
if(numero==0)
printf("El numero %d es NULO",numero);
else
{
if(numero<0)
printf("El numero %d es NEGATIVO",numero);
else
printf("El numero %d es POSITIVO",numero);
}
getch();
}

Dados seis numeros enteros determinar, el menor de ellos


Código:
#include<stdio.h>
#include<conio.h>
int main()
{
int a, b, c, d, e, f;
printf("Inserte num.1: "); scanf("%d",&a);
printf("Inserte num.2: "); scanf("%d",&b);
printf("Inserte num.3: "); scanf("%d",&c);
printf("Inserte num.4: "); scanf("%d",&d);
printf("Inserte num.5: "); scanf("%d",&e);
printf("Inserte num.6: "); scanf("%d",&f);
int menor=a;
if(b<menor) menor=b;
if(c<menor) menor=c;
if(d<menor) menor=d;
if(e<menor) menor=e;
if(f<menor) menor=f;
printf("El menor de %d,%d,%d,%d,%d,%d ",a,b,c,d,e,f);
printf("\nEs %d",menor);
getch();
}

hallar la sumatoria de: 2! + 4! + 6! + 8! + ...


Código:
#include <stdio.h>
#include <conio.h>
int facto (int x)
{
int f=1;
for (int i=1;i<=x;i++)
{f=f*i;}
return (f);
}

int main ()
{
int n, serie=2, suma=0;
printf ("Inserte cantidad de terminos a generar: "); scanf
("%d",&n);
for (int i=1;i<=n;i++)
{
printf ("%d! + ",serie);
suma=suma+(facto(serie));
serie=serie+2;
}
printf (" = %d",suma);
getch();
}

Generar la serie: 1, 5, 3, 7, 5, 9, 7, ..., 23


Código:
#include <stdio.h>
#include <conio.h>

int main ()
{
int serie=1;
bool sw=true;
do
{
printf("%d, ",serie);
if (sw) serie+=4;
else serie-=2;
sw=!sw;
} while (serie<=23);
getch();
}

Generar 5,10,15,20,25,30,35....n
Código:
#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


Código:
#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();
}

/*Dado el vector T de tamao n. Si el tamao es par invertir los elementos de la


mitad de los elementos
Ejemplo: v=[1][2][3][4][5][6] v(invertido)=[3][2][1][6][5][4]
*/
Código:
#include<stdio.h>
#include<conio.h>

void llenar (int V [], int d)


{
for (int i = 1 ; i <= d ; i++)
{
printf ("Inserte pos.[%d]: ",i);
scanf("%d",&V[i]);
}
}

void mostrar (int V [], int d)


{
for (int i = 1 ; i <= d ; i++)
{
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)*/


Código:
#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]);
}
}

int potencia (int b, int e)


{
int p = 1;
for (int i = 1 ; i <= e ; i++)
{
p = p * b;
}
return (p);
}

void evalua (int V [], int d, int x)


{
int s = 0;
for (int i = 1 ; i <= d ; i += 2)
{
s = s + (V [i] * potencia (x, V [i + 1]));
}
printf("\n\nX es igual a: %d",s);
}

int main ()
{
int V[20];
int d, x;
printf("Inserte dimen. del vector: ");
scanf("%d",&d);
printf ("Inserte valor de (x): ");
scanf("%d",&x);
llenar (V, d);
printf("\nVECTOR: ");
mostrar (V, d);
evalua (V, d, x);
getch();
}
Generar la matriz:
[01][02][03][04]
[08][07][06][05]
[09][10][11][12]
Código:
#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]
Código:
#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


Código:
#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 A: "); scanf("%d",&fa);
printf ("Insert columnas de A: "); scanf("%d",&ca);
printf ("Insert filas de B: "); scanf("%d",&fb);
printf ("Insert columnas de 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();
}

/*Dada una matris cuadrada invertir su diagonal principal*/


Código:
#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 M[20][20], int d)
{
int fin = d;
for (int i = 1 ; i <= d / 2 ; i++)
{
int aux = M [i] [i];
M [i] [i] = M [d] [d];
M [d] [d] = aux;
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 PRINCIPAL INVERTIDA: ");
invierte (M, d);
mostrar (M, d);
getch();
}

/*Dada una matris cuadrada invertir su diagonal secundaria*/


Código:
#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 M[20][20], int d)


{
int fin = d;
for (int i = 1 ; i <= d / 2 ; i++)
{
int aux = M [i] [d];
M [i] [d] = M [d] [i];
M [d] [i] = aux;
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*/
Código:
#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]);
}
}
}

void comunes (int R[20][20], int fr, int cr, int S[20][20], int fs,
int cs)
{
printf("\n\nLos elementos comunes de R en S son: ");
for (int i = 1 ; i <= fr ; i++)
{
for (int j = 1 ; j <= cr ; j++)
{
for (int k = 1 ; k <= fs ; k++)
{
for (int l = 1 ; l <= cs ; l++)
{
if (R [i] [j] == S [k] [l])
printf ("[%d]",R [i] [j]);
}
}
}
}
}

int main()
{
int R [20] [20];
int S [20] [20];
int fr, cr, fs, cs;
printf("Inserte filas de R: ");
scanf("%d",&fr);
printf("Inserte columnas de R: ");
scanf("%d",&cr);
printf("Inserte filas de S: ");
scanf("%d",&fs);
printf("Inserte columnas de S: ");
scanf("%d",&cs);

printf("\nLLENANDO MATRIS R: \n");


llenar (R, fr, cr);
printf("\nLLENANDO MATRIS S: \n");
llenar (S, fs, cs);
printf("\nLA MATRIS R : ");
mostrar (R, fr, cr);
printf("\n\nLA MATRIS S : ");
mostrar (S, fs, cs);
comunes (R, fr, cr, S, fs, cs);
getch();
}

/*Intercambiar los datos de la columna 1 con la ultima columna*/


Código:
#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]);
}
}
}

void intercambiar (int M[20][20], int f, int c)


{
for (int i = 1 ; i <= f ; i++)
{
int aux = M [i] [1];
M [i] [1] = M [i] [c];
M [i] [c] = aux;
}
}

int main ()
{
int M [20] [20];
int f, c;
printf ("Inserte filas de la matris: ");
scanf("%d",&f);
printf ("Inserte columnas de la matris: ");
scanf("%d",&c);

printf ("\nLLENANDO MATRIS : \n");


llenar (M, f, c);
printf ("\nLA MATRIS ORIGINAL : ");
mostrar (M, f, c);
printf ("\n\nLA MATRICES INTERCAMBIADA : ");
intercambiar (M, f, c);
mostrar (M, f, c);
getch();
}

/* Contar el numero de digitos de cada elemento de una matris */


Código:
#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]);
}
}
}

void cuenta (int M[20][20], int f, int c)


{
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
int contador = 0;
int n=M[i][j];
while (n != 0)
{
n = n / 10;
contador++;
}
printf("\n[%d] tiene: %d digito(s)",M[i][j],contador);
}
}
}

int main ()
{
int M [20] [20];
int f, c;
printf ("Inserte filas de la matris: ");
scanf("%d",&f);
printf ("Inserte columnas de la matris: ");
scanf("%d",&c);

printf ("\nLLENANDO MATRIS M: \n");


llenar (M, f, c);
printf ("\nLA MATRIS: ");
mostrar (M, f, c);
printf ("\n\nCONTEO DE DIGITOS: ");
cuenta (M, f, c);
getch();
}

/*Hallar la fila y la columna del primer elemento "e" */


Código:
#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 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();
}
/* Dada una matris y un vector, contar la cantidad de numeros primos de ambos */
Código:
#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)


{
for (int i = 1 ; i <= d ; i++)
{
printf ("[%d]",V [i]);
}
}

int primosMatris (int M[20][20], int f, int c)


{
int cant = 0;
for (int i = 1 ; i <= f ; i++)
{
for (int j = 1 ; j <= c ; j++)
{
int cc = 0;
for (int k = 1 ; k <= M [i] [j] ; k++)
{
if (M [i] [j] % k == 0)
cc++;
}
if (cc == 2)
cant++;
}
}
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();
}

/*Dada la matrix de m*n y el vector de tamanio n, determinar que columna de la


matris
es igual al vector*/
Código:
#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)


{
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 */
Código:
#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)


{
for (int i = 1 ; i <= d ; i++)
{
printf ("[%d]",V [i]);
}
}

void vectorA (int M[20][20], int f, int c, int A[20], int d)


{
for (int i = 1 ; i <= f ; i++)
{
int suma = 0;
for (int j = 1 ; j <= c ; j++)
{
suma = suma + M [j] [i];
}
A [i] = suma;
}
}

void vectorB (int M[20][20], int f, int c, int B[20], int d)


{
for (int i = 1 ; i <= f ; i++)
{
int suma = 0;
for (int j = 1 ; j <= c ; j++)
{
suma = suma + M [i] [j];
}
B [i] = suma;
}
}

int main ()
{
int Z [20] [20];
int A [20];
int B [20];
int f, c;
printf ("Inserte filas de la matris: ");
scanf("%d",&f);
printf ("Inserte columnas de la matris: ");
scanf("%d",&c);

printf ("\nLLENANDO MATRIS: \n");


llenarMatris (Z, f, c);

printf ("\nLA MATRIZ Z: ");


mostrarMatris (Z, f, c);
printf ("\n\nSUMA POR COLUMNAS DE LA MATRIS (vector A): \n");
vectorA (Z, f, c, A, c);
mostrarVector (A, c);
printf ("\n\nSUMA POR FILAS DE LA MATRIS (vector B): \n");
vectorB (Z, f, c, B, f);
mostrarVector (B, f);
getch();
}
1-Escribir un programa que detecte un número introducido desde el teclado es positivo
o negativo.
[color=#000000]
#include <iostream>
using namespace std;
int main()
{
double N;
cout<<"n Introducir numero:";
cin>>N;
if (N>0)
cout<<"n El numero es positivo.";
else
cout<<"n El numero negativo.";
cout<<"n";
system("pause";);
}
[/color]
Ejercicio 2

2-Escribir un programa C++ que calcule el importe de una factura sabiendo que el IVA
a aplicar es del 13% y que si el importe bruto de la factura es superior a 50, se debe de
realizar un descuento del 5%.
[color=#000000]
#include <iostream>
using namespace std;

int main()
{
double IB,d,iva,ImpF;
cout<<"n Introdusca el Importe Bruto (IB):";
cin>>IB;
if(IB>50);
d= IB*0.05;
d=0;
iva= IB*0.13;
ImpF=(IB-d)+iva;
cout<<"n El importe final de la factura es de:"<<ImpF;
cout<<"n";
system("pause";);
}
[/color]

Ejercicio 3

3-Hacer un programa que calcule y muestre el total a pagar por la compra de pantalones,
se debe pedir como entrada el valor del pantalón y la cantidad de pantalones comprados,
además si se compra 5 pantalones o mas se le aplica un descuento de 25% al monto total
a pagar y si son menos de 5 pantalones el descuento es de 10% al monto total a pagar.
[color=#000000]
#include <iostream>
using namespace std;
int CantidadDP;
double TP,ValorDP,Desc;
int main()
{
cout<<"n Introduzca el valor del pantalon:";
cin>>ValorDP;
cout<<"n Introduzca la cantidad de pantalones:";
cin>>CantidadDP;
if (CantidadDP>=5)
Desc=ValorDP*0.25;
else if (CantidadDP<5)
Desc=ValorDP*0.10;
TP=ValorDP-Desc;
cout<<"n El valor total a pagar es de:"<<TP;
cout<<"n";
system("pause";);
}
[/color]
Ejercicio 4

4-Sumar números del 1 al 10.


[color=#000000]
#include <iostream>
using namespace std;

int main()
{
int I;
double C,N[10];
C=0;
for(I=0;I<10;I++)
{
cout<<"n Introducir Numeros en secuencia del 1 al 10:";
cin>>N[10];
C=C+N[10];
}
cout<<"n La suma total de los numeros es:"<<C;
cout<<"n";
system("pause";);
}
[/color]
Ejercicio 5

5-Escribir un programa que detecte si un número leído desde el teclado es mayor o


menor que 100
[color=#000000]
#include <iostream>
using namespace std;

int main()
{
double n;
cout<<"n Introducir numero:";
cin>>n;
if (n>100)
cout<<"n El numero introducido es mayor que 100.";
else
cout<<"n El numero introducido es menor que 100.";
cout<<"n";
system("pause";);
}
[/color]
Ejercicio 6

6-Un comerciante efectúa durante el mes 10 ventas a distintos clientes. Se desea saber:
a)Cuantas ventas fueron mayores a 550.
b)Cuantas ventas fueron mayores a 200 y menores o iguales a 550.
c) Calcular los promedios de cada grupo (puntos a y b).
d)Mostrar por pantalla lo solicitado en los puntos a, b y c.
[color=#000000]
#include <iostream>
using namespace std;

int main ()
{
int Venta[10], I;
double C=0,C1=0,C2=0,C3=0,C4=0,C5=0;

for (I=0; I<=9;I++)


{
cout<<"Introducir cantidad de venta "<<I+1<<":";
cin>>Venta[i];

if( Venta[i] >550)


{
C=C+1;
C1=C1 + Venta[i];
}

else if (Venta[i] >200&& Venta[i]<=550 )


{
C2=C2+1;
C3=C3 + Venta[i];
}

C4=C1/C;
C5=C3/C2;
}
cout<<"Promedio de ventas mayores de 550:"<<C4;
cout<<"n";
cout<<"Promedio de ventas mayores a 200 y menores o iguales a 550:"<<C
5;
cout<<"n";
cout<<"Cantidad de ventas mayores a 550:"<<C;
cout<<"n";
cout<<"Cantidad de ventas mayores a 200 y menores o iguales a 550 :"<<
C2;
cout<<"n";
system ("pause";);
}

[/color]
Ejercicio 7

7-Un profesor de un curso, hace un examen de matemática a cada un de sus 10 alumnos


de acuerdo a los resultados obtenidos se procede de la siguiente manera: En caso de
obtener una nota menos a 4 el alumno esta reprobado y debe repasar en marzo. En caso
contrario el alumno esta aprobado. Se desea saber:
a)Cuantos alumnos reprobaron la materia.
b)Cuantos alumnos aprobaron la materia.
c)Calcular los promedios de los alumnos reprobados y aprobados.
d)Mostrar por pantalla lo solicitado en a, b, c.
[color=#000000]
#include <iostream>

using namespace std;

int main()
{
int Nota[10];
float PromNota_Rep=0;
float PromNota_Apr=0;
float CAprob=0;
float CReprob=0;
float SumNota=0;
float AC_APNotas=0;
float AC_REPNotas=0;
for(int i=0; i<=9; i++)
{

cout<<"Ingrese Nota:"<<endl;
cin>>Nota[i];

if(Nota[i]>=4)
{
Nota[i]=Nota[i];

CAprob=CAprob+1;
AC_APNotas=AC_APNotas+Nota[i];
}
else
{
CReprob=CReprob+1;
AC_REPNotas=AC_REPNotas+Nota[i];
}

PromNota_Apr=AC_APNotas/10;
PromNota_Rep=AC_REPNotas/10;
}
cout<<"Promedio de notas de alumnos Aprobados:" <<PromNota_Apr;
cout<<"n";
cout<<"promedio de notas de alumnos Reprobados:" <<PromNota_Rep;
cout<<"n";
cout<<"Cantidad de Alumnos Aprobados que no deben hacer repaso:"<<CApr
ob;
cout<<"n";
cout<<"Cantidad de alumnos reprobados que deben hacer repaso en Marzo:
"<<CReprob;
cout<<"n";
system("pause";);
}
[/color]
Ejercicio 8

8-Un vendedor recibe un sueldo base, mas 12% extra por comisiones de sus ventas, el
vendedor desea saber cuánto dinero cobrara por concepto de comisiones por las cuatros
ventas que realizo en el mes y total que recibirá en el mes por sueldo base y comisiones.
[color=#000000]
#include<iostream>
using namespace std;
int main()
{
double V1,V2,V3,V4,SB,C,SL;
cout<<"n Introducir el monto de la venta 1:";
cin>>V1;
cout<<"n Introducir el monto de la venta 2:";
cin>>V2;
cout<<"n Introducir el monto de la venta 3:";
cin>>V3;
cout<<"n Inroducir el monto de la venta 4:";
cin>>V4;
SB=V1+V2+V3+V4;
C= SB * 0.12;
SL=SB+C;
cout<<"n Su sueldo liquido es:"<<SL;
cout<<"n";
system("pause";);
}[/quote]
[/color]
Ejercicio 9

9-Un profesor hace dos exámenes de matemática y física a cada uno de sus 40 alumnos.
Desea saber:
a)Cuantos alumnos sacaron más de 7 en cada examen
b)Cuantos alumnos sacaron menos o igual en cada examen
c)Calcular los promedios de notas de cada examen
d)Mostrar por pantalla lo solicitado en a, b, c.
dijo: [color=#000000]
#include<iostream>
using namespace std;
int main()
{
cout<<"n Nota: Las notas seran introducidas una por una, independiente
mente su materia.";
cout<<"n";

int Mate[40],Fisica[40],i;
double PromMat,PromFis,T,T1;
double C=0,C1=0,C2=0,C3=0,C4=0,C5=0,C6=0,C7=0;

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

cout<<"n Ingresar nota de Matematica "<<i+1<<" : ";


cin>>Mate[i];
if (Mate[i]>7)
{
C=C+1;
C1=C1+Mate[i];
}
else
{

C2=C2+1;
C3=C3+Mate[i];
}
}
for(i=0; i<40;i++)

{
cout<<"n Ingresar nota de Fisica "<<i+1<<" : ";
cin>>Fisica[i];
if (Fisica[i]>7)
{
C4=C4+1;
C5=C5+Fisica[i];
}
else
{
C6=C6+1;
C7=C7+Fisica[i];
}
T = C1+C3;
T1= C5+C7;
PromMat=T/40;
PromFis=T1/40;

}
cout<<"El promedio de Matematica es:"<<PromMat;
cout<<"n";
cout<<"El Promedio de Fisica es:"<<PromFis;
cout<<"n";
cout<<"Aprobados de Matematica:"<<C;
cout<<"n";
cout<<"Reprobados de Matematica:"<<C2;
cout<<"n";
cout<<"Aprobados de Fisica:"<<C4;
cout<<"n";
cout<<"Reprobados de Fisica:"<<C6;
cout<<"n";
system ("pause";);
}
[/color]
Ejercicio 10
10-El almacén AC tiene una promoción que se aplica según el mes, en los mese de enero
a julio todas las ventas mayores de 1000 tienen un descuento del 10% sobre el precio de
venta y no se le cobrara el IVA, en los meses de julio a diciembre las ventas mayores a
5000 tienen un descuento del10% y se les cobrara el IVA, las ventas mayores a 1000
tienen un descuento y se les cobra el IVA pero las ventas mayores a 2000 se les hace un
descuento del 20% y no se les cobrara IVA. Determinar lo que el cliente debe pagar. (El
IVA es del 13% y se calcula después de aplicarle el descuento a la venta).
[color=#000000]

#include <iostream>
using namespace std;
int Mes;
double Venta,D,T,IVA;
int main ()
{
cout<<"n Introduzca la Cantidad:";
cin>>Venta;
cout<<"n Digite el mes actual en numero:";
cin>>Mes;

switch (Mes)
{
case 1 : case 2: case 3: case 4: case 5: case 6:
if (Venta > 1000)
{
D=Venta*0.10;
IVA = 0;
}
else
{
D=0;
IVA=Venta*0.13;
}
T=(Venta+IVA)-D;
break;
case 7: case 8: case 9: case 10: case 11: case 12:
if (Venta>2000)
{
D=Venta*0.20;
IVA=0;
}

else if (Venta > 500)


{
D=Venta*0.10;
IVA=Venta*0.13;
}
else
{
D=0;
IVA=Venta*0.13;
}
T=(Venta+IVA)+D;
break;
default:
cout<<"n Caracter no reconocido.";
cout<<"n";
}

cout<<"n El total a pagar es de:"<<T;


cout<<"n";
system ("pause";);
}
[/color]

Das könnte Ihnen auch gefallen