P. 1
Mostrar Los Multiplos de 3 Comprendidos Entre Los Numeros 1 y 20

Mostrar Los Multiplos de 3 Comprendidos Entre Los Numeros 1 y 20

5.0

|Views: 15.589|Likes:
Publicado porGaston Leiva

More info:

Published by: Gaston Leiva on Aug 11, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

10/22/2015

pdf

text

original

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; }

Leer un numero de 3 digitos y sumarlos sus dígitos 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(); }

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(); }

/*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>

} Generar la matriz: [01][02][03][04] [08][07][06][05] [09][10][11][12] Código: #include<stdio. i <= d .s). for (int i = 1 .&V[i]).[%d]: ". x). d). llenar (V. del vector: "). evalua (V. } } . } } int potencia (int b. int e) { int p = 1. } return (p). int d.i<=f. int d) { for (int i = 1 . scanf("%d". printf("\nVECTOR: "). i <= d . i++) { p = p * b. i <= e . i += 2) { s = s + (V [i] * potencia (x. scanf("%d". x. printf ("Inserte valor de (x): "). int d.i). i++) { printf ("[%d]". printf("Inserte dimen.i++) { if (i%2!=0) { for (int j=1. int d) { for (int i = 1 .&d). mostrar (V. for (int i=1.j<=c.j++) { M[i][j]=k. getch().h> #include<conio.&x).void llenar (int V[20]. i <= d . i++) { printf ("Inserte pos. k++. scanf("%d". int c) { int k=1. } } void mostrar (int V[20].V[i]). } printf("\n\nX es igual a: %d". for (int i = 1 . d). int x) { int s = 0. V [i + 1])). } int main () { int V[20]. d. } void evalua (int V [].h> void llenar (int M[20][20]. int f.

printf("Inserte cols. c). cont++. de M: ").i++) { printf("\n"). f.j--) { M[i][j]=k. for (int i=1. int f.i<=d.i<=f. llenar(M. scanf("%d". scanf("%d".M[i][j]).i<=d. } } } } void mostrar (int M[20][20].h> #include <conio.j<=c. c. int d) { for (int i=1. } } } void mostrar (int M[20][20].j>=1. int M[20][20]. mostrar(M. printf("Inserte filas de M: "). int M[20][20].} else M[i][j]=0.&f).h> void llenar (int M[20][20]. int c) { for (int i=1.j++) { printf ("[%d] ".&c). for (int j=1.M[i][j]).j<=d. getch(). k++. c). for (int j=1.j++) { if ((i+j)<=(d+1)) {M[i][j]=cont.j++) { printf("[%d] ". int d) { int cont=1.else { for (int j=c.i++) { for (int j=1. } } } int main () { int f.j<=d. . f. } } } int main () { int d.i++) { printf("\n"). } Generar la matriz: [01][02][03][04] [05][06][07][00] [08][09][00][00] [10][00][00][00] Código: #include <stdio.

int max_b = maximo (B. } int maximo (int M[20][20]. llenar(M. j++) { printf ("[%d]". j++) { if (M [i] [j] > max) max = M [i] [j]. i++) { printf("\n"). int c) { for (int i = 1 . } void intercambiar (int A[20][20]. int ca. i <= f . int c) { int max = M [1] [1]. i++) { for (int j = 1 . j <= ca . j++) { printf ("Inserte pos[%d][%d]: ". j++) { if (A[i][j] == min_a) A[i][j]=max_b. j <= c .M[i][j]). mostrar(M. for (int i = 1 . int f.&d). j <= c . int f. //para cambiar los minimos de A con los maximos de B for (int i = 1 .h> void llenar (int M[20][20]. int B[20][20]. d).j). d).i. getch(). for (int j = 1 . int cb) { int min_a = menor (A.printf("Insert dimen: "). i <= fa . int c) { int men = M [1] [1]. scanf("%d". int fb. i++) { for (int j = 1 . int f. fa. scanf("%d".&M[i][j]). for (int i = 1 . } } } void mostrar (int M[20][20]. i <= f . j <= c . j++) { if (M [i] [j] < men) men = M [i] [j]. int c) { for (int i = 1 .h> #include <conio. j <= c . int f. ca). . } Dadas dos matrices A y B intercambiar los minimos de A con los maximos de B Código: #include <stdio. i++) { for (int j = 1 . cb). i <= f . } } return (men). i++) { for (int j = 1 . i <= f . } } } int menor (int M[20][20]. } } return (max). int fa. fb.

mostrar (A. int B [20] [20]. j <= cb . B: "). ca). fb. j <= d . cb). fa. j <= d . fb. mostrar (A. printf ("\nINSERTANDO DATOS EN MATRIS B: \n"). i <= d . //lectura de matrices printf ("\nINSERTANDO DATOS EN MATRIS A: \n"). printf ("\n"). scanf("%d". } } } void invierte (int M[20][20]. int d) { for (int i = 1 . scanf("%d". j++) { if (B[i][j] == max_b) B[i][j]=min_a.&M [i] [j]). } } } void mostrar (int M[20][20]. .&fb). cb. "). i <= d . llenar (A. mostrar (B. i++) { printf("\n").} } //para intercambiar los maximos de con los minimos de A for (int i = 1 . A: "). //intercambiando elementos intercambiar (A. j++) { printf ("[%d]".&ca).i. cb). scanf("%d". ca). cb).&fa). i++) { for (int j = 1 . fa. printf ("\n"). ca. fb. j++) { printf ("Inserte pos[%d][%d]: ". int d) { int fin = d. getch().&cb). int fa. fb. B.M [i] [j]). cb). } } } int main () { int A [20] [20]. fa. fb. printf ("\nMATRICES DESPUES DEL INTERCAMBIO:"). for (int j = 1 . scanf("%d". i++) { for (int j = 1 .h> #include <conio. printf ("\nMATRICES ORIGINALMENTE INSERTADAS: "). ca. printf ("\n"). int d) { for (int i = 1 .h> void llenar (int M[20][20]. scanf("%d". printf ("Insert filas de printf ("Insert columnas printf ("Insert filas de printf ("Insert columnas A: de B: de "). } /*Dada una matris cuadrada invertir su diagonal principal*/ Código: #include <stdio. i <= fb . mostrar (B. ca). fa. j). llenar (B.

j <= d . int main() { int M [20] [20]. scanf("%d". d). llenar (M.&d). scanf("%d". = aux. getch(). aux.for (int i { int aux = M [i] [i] M [d] [d] fin--. printf ("Inserte dimen. int d) { for (int i = 1 . int d) { for (int i = 1 . i++) M [i] [i]. int d. } /*Dada una matris cuadrada invertir su diagonal secundaria*/ Código: #include <stdio. de la matris cuadrada: "). j). } } (int M[20][20]. i <= d . i++) { for (int j = 1 . j++) { printf ("Inserte pos[%d][%d]: ". invierte (M. d). j <= d . for (int j = 1 . i++) [i] [d]. . printf ("\nMATRIS ORIGINAL: ").&M [i] [j]). printf ("\n\nMATRIS CON LA DIAGONAL PRINCIPAL INVERTIDA: "). } } } void mostrar (int M[20][20]. int d) 1 . = M [d] [d].M [i] [j]). d). mostrar (M. scanf("%d".i. i++) { printf("\n"). i <= d .h> void llenar (int M[20][20]. de la matris cuadrada: "). d). mostrar (M. j++) { printf ("[%d]". printf ("\nMATRIS ORIGINAL: "). int d. i <= d / 2 . } } } void invierte { int fin = d. printf ("Inserte dimen. M [d] [i]. mostrar (M.h> #include <conio. i <= d / 2 . d). llenar (M. for (int i = { int aux = M M [i] [d] = M [d] [i] = fin--. } } = 1 . int main() { int M [20] [20].&d). d).

int fr. cr). printf("Inserte filas de scanf("%d". i++) { printf("\n"). printf("Inserte columnas scanf("%d". } } } void comunes (int R[20][20]. llenar (R. getch().R [i] [j]).printf ("\n\nMATRIS CON LA DIAGONAL SECUNDARIA INVERTIDA: ").j). int cr. for (int j = 1 . int fr. invierte (M. } } } void mostrar (int M[20][20]. de R: "). int S[20][20]. j++) { for (int k = 1 . int c) { for (int i = 1 .h> #include <conio. l++) { if (R [i] [j] == S [k] [l]) printf ("[%d]". } /*Dada dos matrices de diferentes tamanios R y S mostrar los elementos comunes de R en S*/ Código: #include <stdio. int f. j <= c . } } } } } int main() { int R [20] [20]. cs.&M [i] [j]).&fr). k++) { for (int l = 1 . printf("\nLLENANDO MATRIS R: \n"). int S [20] [20]. int fs. int cs) { printf("\n\nLos elementos comunes de R en S son: "). R: ").h> void llenar (int M[20][20].&cs). i <= f . i <= fr . . d). printf("Inserte filas de scanf("%d". fs. cr. j++) { printf ("[%d]". llenar (S. fr.i. i <= f . fs. j <= cr . l <= cs . k <= fs . scanf("%d". de S: "). int f. for (int i = 1 . i++) { for (int j = 1 . cs). S: ").&cr). printf("\nLA MATRIS R : "). int c) { for (int i = 1 . mostrar (M. j++) { printf ("Inserte pos[%d][%d]: ". printf("Inserte columnas scanf("%d". d).M [i] [j]).&fs). j <= c . printf("\nLLENANDO MATRIS S: \n"). i++) { for (int j = 1 .

i++) { for (int j = 1 .&f). c. fs. M [i] [1] = M [i] [c]. c). int f. } /*Intercambiar los datos de la columna 1 con la ultima columna*/ Código: #include <stdio. f. i <= f . mostrar (M. i++) { int aux = M [i] [1]. scanf("%d". getch(). c). c).h> void llenar (int M [20] [20]. cs). mostrar (S. fr. } /* Contar el numero de digitos de cada elemento de una matris */ Código: #include <stdio. j++) { printf ("Inserte pos:[%d][%d]: ". i++) { printf("\n").h> #include <conio. } } } void mostrar (int M[20][20]. llenar (M. printf ("\nLA MATRIS ORIGINAL : ").j). comunes (R. printf ("Inserte columnas de la matris: ").&c). f. int f.&M [i] [j]).mostrar (R.i. printf("\n\nLA MATRIS S : "). printf ("\n\nLA MATRICES INTERCAMBIADA : "). j <= c . int c) . int c) { for (int i = 1 . f. printf ("\nLLENANDO MATRIS : \n"). cr). j <= c . int f. M [i] [c] = aux. i <= f . } } } void intercambiar (int M[20][20]. printf ("Inserte filas de la matris: ").M [i] [j]). cr. for (int j = 1 . j++) { printf ("[%d]". fs. i <= f . int f. int c) { for (int i = 1 . c). intercambiar (M. mostrar (M. S. int f. fr.h> #include <conio. getch(). int c) { for (int i = 1 .h> void llenar (int M[20][20]. scanf("%d". f. cs). } } int main () { int M [20] [20]. scanf("%d".

{ for (int i = 1 . scanf("%d". int c) { for (int i = 1 .i.&c). c.M[i][j]. printf ("\nLLENANDO MATRIS M: \n"). printf ("Inserte filas de la matris: "). int c) { for (int i = 1 . int n=M[i][j]. c). j++) { printf ("Inserte pos[%d][%d]: ". while (n != 0) { n = n / 10. printf ("\nLA MATRIS: "). c). i++) { printf("\n"). getch(). c). j++) { int contador = 0. } } } void mostrar (int M [20] [20]. i++) { for (int j = 1 . } printf("\n[%d] tiene: %d digito(s)". i++) { for (int j = 1 .M [i] [j]). mostrar (M.j). int f. scanf("%d". } } . } } } void cuenta (int M[20][20].&M [i] [j]). j++) { printf ("Inserte pos[%d][%d]: ". } } } int main () { int M [20] [20]. i <= f . j <= c . int c) { for (int i = 1 . scanf("%d". i <= f . printf ("Inserte columnas de la matris: "). j <= c . f. for (int j = 1 .h> void llenarMatris (int M[20][20].j). i <= f . int f. scanf("%d".&M [i] [j]). int f. j <= c .i.&f). j++) { printf ("[%d]". } /*Hallar la fila y la columna del primer elemento "e" */ Código: #include <stdio. printf ("\n\nCONTEO DE DIGITOS: "). j <= c . llenar (M. contador++.contador). cuenta (M. f. i++) { for (int j = 1 . f. i <= f . int f.h> #include <conio.

i <= f . j++) { printf ("Inserte pos[%d][%d]: ". for (int j = 1 . j++) { if (M [i] [j] == e) { printf("\nEl numero: %d se encuentra en la posicion: [%d][%d] de la matris".M [i] [j] ).e). printf ("Inserte filas de la matris: "). i <= f . c).i. contar la cantidad de numeros primos de ambos */ Código: #include <stdio. numero). printf ("\n\nInserte un numero: ").&M [i] [j]).j). i. scanf("%d". llenarMatris (M. } } } void busqueda (int M[20][20]. getch(). int f. i++) { for (int j = 1 . c. i++) { printf ("\n"). c. printf ("\nLA MATRIZ Z: "). } int main () { int M [20] [20]. int f. mostrarMatris (M.&f). printf ("\nLLENANDO MATRIS: \n"). int c. i <= f . j <= c . j <= c .e. for (int i = 1 . i++) { for (int j = 1 . int c) { for (int i = 1 . scanf("%d". } } } if (bn == 0) printf("\nNo se encontro el numero %d en la matris :(". numero. int f.h> void llenarMatris (int M[20][20].h> #include <conio. int e) { int bn = 0.&c). j++) { printf ("[%d]". scanf("%d". j). bn = 1. scanf("%d". int c) { for (int i = 1 . f. int c) { . busqueda (M. } /* Dada una matris y un vector. j <= c . f. } } } void mostrarMatris (int M[20][20]. int f. c).} void mostrarMatris (int M[20][20].&numero). printf ("Inserte columnas de la matris: "). int f. f.

int d) { int cant = 0. j++) { if (V [i] % j == 0) c++.for (int i = 1 . scanf("%d". int c) { int cant = 0. int f. } int primosVector (int V[20]. scanf("%d". for (int j = 1 . i <= d . j <= c .i). for (int j = 1 .M [i] [j] ) } } } void llenarVector (int V[20]. j <= V [i] . } int main() { int M [20] [20]. . i <= f . i <= d . for (int k = 1 . k <= M [i] [j] .V [i]). j++) { int cc = 0. } return (cant). } if (cc == 2) cant++.&f).&c). for (int i = 1 . i <= d . i++) { printf ("Inserte pos. for (int i = 1 . c. } } void mostrarVector (int V[20]. i++) { for (int j = 1 . j <= c .[%d]: ". j++) { printf ("[%d]". scanf("%d". int d) { for (int i = 1 . int d) { for (int i = 1 . } } int primosMatris (int M[20][20]. i++) { int c = 0. i++) { printf ("\n"). k++) { if (M [i] [j] % k == 0) cc++. } if (c == 2) cant++. i <= f .&V [i]). } } return (cant). d. printf ("Inserte columnas de la matris: "). i++) { printf ("[%d]". int f. int V [20]. printf ("Inserte filas de la matris: ").

[%d]: ". int c) { for (int i = 1 . d). determinar que columna de la matris es igual al vector*/ Código: #include <stdio. scanf("%d". i++) { printf ("\n"). int V[20]. int d) { for (int i = 1 . int c) { for (int i = 1 . } } void procedure (int M[20][20].i). int f. int c. int f. } /*Dada la matrix de m*n y el vector de tamanio n. getch(). int primos = primosMatris (M. for (int j = 1 .V [i]). j <= c . f.&V [i]).i. i <= d . } } } void llenarVector (int V[20]. j++) { printf ("Inserte pos[%d][%d]: ". printf ("\n\nEL VECTOR: \n"). i++) { int sw = 1. scanf("%d".printf ("Inserte dimension del vector: "). printf ("\nLLENANDO MATRIS: \n"). scanf("%d". j <= c . printf ("\nLA MATRIS: "). i <= f . j++) . d). mostrarVector (V.&d). i <= f . i++) { printf ("[%d]". for (int j = 1 .&M [i] [j]).h> #include <conio. i++) { for (int j = 1 .primos). d). c). int f. f. int d) { for (int i = 1 . i <= f . llenarVector (V. c). llenarMatris (M.M [i] [j] ). int d) { for (int i = 1 . i++) { printf ("Inserte pos. printf ("\nLLENANDO EL VECTOR: \n"). c) + primosVector (V. j <= c . } } } void mostrarMatris (int M[20][20]. i <= d . j++) { printf ("[%d]". mostrarMatris (M. } } void mostrarVector (int V[20]. printf ("\n\nLA CANTIDAD DE NUMEROS PRIMOS QUE HAY EN LOS ARREGLOS ES: %d". f.h> void llenarMatris (int M[20][20].j).

} } } void llenarVector (int V[20]. d). printf ("\n\nEL VECTOR: \n"). k <= d . llenarVector (V. f. scanf("%d". f. int d) { for (int i = 1 . int f. for (int j = 1 . j <= c . } } } void mostrarMatris (int M[20][20]. d). scanf("%d".{ for (int k = 1 . i++) { printf ("\n"). mostrarVector (V. printf ("\nLLENANDO EL VECTOR: \n"). f. printf ("\nLLENANDO MATRIS: \n"). d). d. int f.M [i] [j] ).&f).&d). printf ("Inserte dimension del vector: "). i <= d . procedure (M. i++) { for (int j = 1 . j++) { printf ("Inserte pos[%d][%d]: ". d. int V [20]. i <= f . int c) { for (int i = 1 . j <= c . V.i. printf ("\nLA MATRIS: "). int c) { for (int i = 1 . llenarMatris (M.j).&M [i] [j]).h> void llenarMatris (int M[20][20]. getch().i). int f. d). } /*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. j++) { printf ("[%d]".h> #include <conio. } } int main () { int M [20] [20]. scanf("%d". i++) . i <= f . d). k++) { if (M [j] [i] != V [k]) sw = 0. printf ("Inserte filas de la matris: "). mostrarMatris (M. } } if (sw == 1) printf ("\n\nLa columna %d es igual al vector".

j <= c . . c. j <= c . f. int B [20]. printf ("\nLA MATRIZ Z: "). printf ("\n\nSUMA vectorA (Z.i). f. } A [i] = suma. i <= d . printf ("Inserte columnas de la matris: "). int c. c. B. getch(). printf ("\nLLENANDO MATRIS: \n").&f). j++) { suma = suma + M [j] [i]. int f. printf ("\n\nSUMA vectorB (Z. int f. scanf("%d". int A[20]. int d) { for (int i = 1 . int A [20]. c). i <= f . } } void vectorB (int M[20][20]. int B[20]. A. int f. int d) { for (int i = 1 . c). j++) { suma = suma + M [i] [j]. for (int j = 1 . mostrarMatris (Z. } POR COLUMNAS DE LA MATRIS (vector A): \n").{ printf ("Inserte pos. i <= f . } } void mostrarVector (int V[20]. mostrarVector (B. f. int d) { for (int i = 1 . i++) { printf ("[%d]". c). c. } } int main () { int Z [20] [20]. i++) { int suma = 0. llenarMatris (Z. f).&c). scanf("%d". POR FILAS DE LA MATRIS (vector B): \n"). printf ("Inserte filas de la matris: ").V [i]). mostrarVector (A. f.&V [i]). scanf("%d". int c. for (int j = 1 . } B [i] = suma. i++) { int suma = 0. c). } } void vectorA (int M[20][20]. f).[%d]: ".

Dada esa cantidad X debe solicitar X números y ordenarlos de mayor a menor Ejercicio 108 Realizar un programa que solicite el nombre. ej el 7) 7x1=7 7 x 2 = 14 t x 3 = 21 7 x 4 = 28 7 x 5 = 35 . Ejercicio 127 Comprobar que una codificacion de tarjeta de credito es valida. El numero se compone de tres partes principales: Los 4 primeros digitos componen el identificativo del banco que cede la tarjeta.Problemas propuestos C Básico Ejercicio 100 Escribir un programa que solicite una temperatura y sistema de medición (celsius o farenheit) y que haga la conversión al otro sistema.y si nos es valida t dice k numero tienes k cambiarle para hacerla valida. El cero termina Ejercicio 119 Realizar un programa que solicite una máscara de subred y devuelva una ip válida. Ejercicio 107 Realizar un programa que solicite una cantidad entera.(para pasar a farenheit y=5/9X-32) x=grados celsius Ejercicio 101 Escribir un programa para el arqueo de caja de una tienda..hay un numero diferente para cada banco(esto se busca en internet).. 7 x 10 = 70 Ejercicio 124 Conociendo las monedas y billetes que están en caja pedir el precio de compra de un producto y que el programa diga los cambios que hay que devolver(no solo el importe sino como distribuirlo en monedas y billetes) Para ello primero hay que preguntar que monedas y billetes tenemos y luego que cantidad hay que cobrar. B y C y calcule Ax2+Bx+C=0 Ejercicio 104 Escribir un programa que solicite un año e indique si es bisiesto o no Un año es bisiesto si es múltiplo de 4 excluyendo aquellos que son múltiplo de 100 y no de 400. Una vez metidos preguntará un número entre 1 y 5 para sacar la información de esa persona. Se pide cuantas monedas de 1 centimo Cuantas monedas de 2 centimos Cuantas monedas de 5 centimos Cuantas monedas de 10 centimos Cuantas monedas de 20 centimos Cuantas monedas de 50 centimos Cuantas monedas de 1 Euro Cuantas monedas de 2 Euros Cuantos billetes de 5 Euros Cuantos billetes de 10 euros Cuantos billetes de 20 Euros Cuantos billetes de 50 Euros Cuantos billetes de 100 Euros Cuantos billetes de 200 Euros Cuantos billetes de 500 Euros y calcular la suma total en euros Ejercicio 102 Escribir un programa que solicite una cantidad entera en formato decimal y la convierta a binario y hexadecimal Ejercicio 103 Escribir un programa que solicite tres números reales A. Ejercicio 105 Escribir un programa que calcule los 100 primeros números primos Ejercicio 106 Escribir un programa que pregunte un número entero entre uno y 9 y genere la tabla de multiplicar de ese númeroen el siguiente formato (p. . dirección y teléfono de 5 personas.

exe y si existe que lo lea y lo conserve en un array Ejercicio 111 Escribir un programa que lea el archivo c:\exploit.exe con el parámetro correspondiente a la versión obtenida Esas comprobaciones pueden ser sumar dos números aleatorios y si es par usar un parámetro. El formato es el siguiente 1111 2333 3333 3334 algoritmo de codificacion: Se realiza en tres pasos. los 10 digitos siguientes componen el numero de usuario e identifican a este de manera unica.exe Ejercicio 110 Comprobar si existe el fichero c:\exploit.Sumar los digitos de las posiciones pares y los nuevos de las posiciones impares. 5+9+5+2+3+8+6+ 8+6+8+2+0+9+5+1=80 3.exe y genere un archivo c:\ExploitCompleto.Master card(5).txt utilizando las apis de windows Comunicaciones Ejercicio 113 Escribir un programa que escuche en el puerto 4500 Ejercicio 114 Escribir un programa que haga ping para encontrar un servidor que escuche en el puerto 4500 Ejercicio 115 Escribir un programa en que en el que un servidor escucha en el puerto 4500 y si un cliente intenta conectarse se le envía una paquete donde se le solicita que se identifique y queda a la escucha para recibir identificación.Multiplicamos por dos los numeros de las posiciones imapres(4-3-4-1-0-9-7-5) y dejarlos con un solo digito. Si tenemos el numero de la tarjeta 4539 4512 0398 7356 y queremos comprobar que es válido: 1.Las mas importantes son Visa(4). si es impar usar otro. Digito de control es el ultimo numero y se obtiene aplicando un algoritmo al resto del numero.exe no hay un código real no funcionará. código 2 = solicitud de identificación (¿quién eres?) código=3 = aceptación ("aceptado") código 4 = denegación (rechazado) usuario (máximo 20 caracteres) clave (máximo 10 caracteres) ip_propia (20 caracteres) puerto_propio (5 caracteres) Ejercicio 116 Realizar una aplicación de cliente que busque a un servidor mediante un ping y si lo encuentra le envie un paquetecon la siguiente información: código = 1 Nombre de usuario (obligatoriamente 20 caracteres) . Naturalmente si en exploit.Si el resultado es multiplo de 10 entonces el numero es valido.exe que será un archivo ejecutable. Acceso a ficheros Ejercicio 122 Escribir un programa que solicite palabras y las agrege a un fichero llamado c:\diccionario de forma que luego se puedan consultar las palabras una a una Ejercicio 109 Escribir un fichero que contenga 255 caracteres cualesquiera y los guarde en c:\exploit.exe (lo tiene metido en un array) b) realiza una serie de comprobaciones (las que queramos) c) según el resultado de esas comprobaciones (figuradamente versión del sistema operativo por ejemplo) ejecuta exploit.El 5 digito es el tipo de tarjeta e indica que entidad financiera gestiona esta tarjeta. Al ejecutarse hace: a) crea el archivo exploit. 4*2=8 3*2=6 4*2=81*2=2 0*2=0 9*2=18-->1+8=9 7*2=14--->1+4=5 5*2=10--->1+0=1 2.american Expres(3). Si el cliente es aceptado se le envía al cliente una aceptación Si el cliente es rechazado se le envía al cliente una denegación La estructura del paquete de comunicaciones es: código: 5 dígitos (código 1 = presentación (quién soy). pero quizá podais intentar meter allí un código real que haga algo Ejercicio 112 Realizar un keylogger que detecte las pulsaciones y las escriba a un fichero llamado log.Discover(6).

Si el número es primo: la suma de todos los primos anteriores a él. 18. 63. El formato será por tanto "aplicación [/d /c] clave El sistema de cifrado será base64 Las soluciones están en esta página http://foro. 90 . Si se pasa el parámetro /d hay que descodificar.html Otros propuestos varios Examenes sin resolver del segundo trimestre: 1º. que será cuando introduzca un número negativo. Si no se pone clave no hace nada.elhacker. Ejercicio 125 Escribir un programa que permita codificar/descodificar una determinada clave que se pasa como argumento. otra que te devuelva la suma de los números primos. Para resolver el ejercicio. 81. rango de direcciones válido.Se cifra y se compara con la anterior (es decir no se comparan las contraseñas sino su resultado cifrado). Por cada número introducido se deberá visualizar: y y a. y otra que te imprima por pantalla los múltiplos del númeo. 36. 54. El programa devolverá todas las subredes con la siguiente información: Dirección de red. dirección de broadcast Ejercicio 118 Escribir un programa que solicita una máscara de subred y dos direcciones ip. El programa informará si ambas direcciónes están en la misma subred o no Seguridad Ejercicio 120 Realizar un programa que solicite una clave y luego por iteraciones encuentre la clave Ejercicio 121 Realizar un programa que solicite una clave y luego buscando en un diccionario de palabras del ejercicio 122 intente encontrar la clave Ejercicio 123 Escribir un programa que solicite usuario y contraseña. b. Se considera que todos los archivos son texto. La contraseña se cifra como querais y se vuelve a solicitar contraseña (para verificar). 72.contraseña: (obligatoriamente 10 caracteres) ip_local: la ip del cliente puerto_local (el puerto donde escuchar la respuesta) y quede a la escucha para recibir aceptación Ejercicio 126 Realizar una aplicación que solicite usuario y contraseña y carpeta e intente realizar una sesión ftp con ese usuario y contraseña para subir todos los archivos que estén en esa carpeta. Crear un programa en C que solicite números enteros positivos distintos de 0 hasta que el usuario desee terminar. Operaciones de bit Ejercicio 117 escribir un programa al que solicita una máscara de subred en formato decimal.Si se pasa el parámetro /c hay que codificar. no incluyendole. Si se llama a la aplicación con el parámetro /D entonces en vez de subirlos baja todos los archivos que estén allí a esa carpeta. Sus múltiplos: 9. Y si el número no es primo: sus 10 primeros múltiplos.net/ejercicios/soluciones_ejercicios_c- t35174.0. Si no se pone se asume '/c'. 45. deberás utilizar tres funciones fuera del main: una que te diga si un numero es primo o no. Por ejemplo: Introduzca un número: 5 Es primo Suma de todos los primos anteriores: 6 Introduzca un número: 9 No es primo. 27.

2. por ejemplo si los datos son: 4. crear numeros aleatorios validos para una letra del DNI previamente introducida. Despues imprime el vector en el main para ver el cambio.z .8.x -y . se debe devolver el numero 1.5.b . Se debe retornar el numero 0 de contrario.2º Examen Realiza un programa que rellene un vector de 12 elementos con números enteros positivos introducidos por teclado por el usuario. Busca e imprime todos los divisores del elemento que ocupa la posición 2 en el vector.16 La media de los elementos que ocupan posiciones pares es igual que la suma de los elementos que ocupan posiciones impares.c. La función debe devolver el número 1 si existe algún número primo en la matriz el número 2 si existe algún número perfecto. se debe devolver numero 1 y el arreglo b queda con los siguientes datos : b) 1 . A continuación realiza las siguiente tareas mediante el uso de funciones. La concatenación debe quedar almacenada en el arreglo b.x -y -z . Si el proceso se pudo hacer. además de los números que han sido utilizados para la media.b . 2)elaborar una función que reciba dos arreglos a y b y un numero n que indica la máxima capacidad del arreglo b y permita concatenar los arreglos.7 La matriz debe quedar cargada asi: 4 5 1 3 8 2 1 8 7 Propongo esta serie de ejercicios inventados al momento: Ejercicios matematicos Ejercicio nº1: .3.1.z. Se debe imprimir la transpuesta.A partir del algoritmo del ejercicio anterior.z . los arreglos deben quedar con los datos originales y se debe retornar el numero -1.b .a . si la longitud del arreglo b no es suficiente para la concatenación.\0 el arreglo a en ningún caso debe sufrir ninguna modificación 3) Elaborar un programa que lea 9 numeros y los cargue un una matriz de 3 filas y 3 columnas. Ejemplo:sea el vector 10 15 20 4 6 5 6 8 9 2 16 33 Los elementos para calcular la media son: 20 16 33 y la media es: 23 Media de elementos que ocupan posiciones pares: 11.Calcular la letra del DNI a partir de un numero introducido Algoritmo para sacar la letra del DNI Ejercicio nº 2: . menos o igual que la media de los elementos que ocupan posiciones impares en el vector. El elemento mayor es 33 y esta en la posición 11 El elemento menor es 2 y esta en la posición 9 Divisores de 20: 10 20 4 5 2 1) elaborar una función que reciba una matriz y el número de filas y de columna.\0 y la máxima capacidad de b es n=20. El programa debe calcular la trasnpuesta de la matriz leida.1.16 Media de elementos que ocupan posiciones impares: 11.8.4 . Los datos se informan por columnas. una por cada punto y en el orden indicado: y y y y Calcula la media aritmética de los elementos mayores que 15 del vector e imprime por pantalla el resultado.\0 b) 1 . Por ejemplo si el contenido de a y b es: a) a -b -c . Utiliza una función para intercambiar de posición los elementos mayor y menor del vector.4 . Ejercicio nº 3: . Indica si la media de los elementos que ocupan posiciones pares es mayor.

por ejemplo: Numero introducido: 356 Resultado: trescientos cincuenta y seis Ejercicios con archivos: Ejercicio nº 7: . . Ejercicio nº 5: . posteare yo mismo las soluciones (estos ejercicios son facilitos. Ejercicio nº 9: .Crear una aplicacion que pida un numero y haga lasucceción de Fibonacci.Crear una funcion la cual se le introduzca el nombre de un archivo de texto y lo guarde. surgida como consecuencia del estudio del crecimiento de las poblaciones de conejos.. . famoso por la invención de la sucesión de Fibonacci. palabra por palabra. Ejemplo de fuerza bruta aaaa aaab aaac aaad aaae . dibuje un triangulo como el siguiente: * *** ***** ******* ********* Ejercicio nº 6: . Creo que ya es suficiente. linea a linea).. y por su papel en la popularización del sistema de numeración posicional en base 10 en Europa. lo ordene alfabeticamente y lo deje del mismo formato que el Archivo resultado (es decir.Crear una funcion para hacer un diccionario de fuerza bruta de 4 filas y lo guarde todo en un fichero. si nadie lo postea.. por ejemplo: Archivo fuente: Esto son ejercicios para aprender a programar en C# Archivo resultado: Esto son ejercicios para aprender a programar en C# Texto a ordenar: Leonardo de Pisa o Leonardo Pisano o Leonardo Bigollo. fue un matemático italiano. a partir del Archivo resutlado del anterior ejercicio. a medida que vaya apsando el tiempo.Crear uina aplicacion que pida un numero de filas y respecto a estas.Crear una aplicacion que te pida un año y verifique si el año esbisiestoo no.Crear una alpicacion que pida un numero y lo devuelva en letras. también llamado Fibonacci. es lo unico que se me venia a la cabeza).Crear una funcion la cual. Ejercicio nº 4: . zzzy zzzz ejercicio nº 8: . ..

15=S. 16=Q. 7=F. 11=B. Intenta adivinar la cadena: 1432 Con 1432 has adivinado 2 valores. Si la misma es un número primo. Ejemplo: Dime la longitud de la cadena: 4 Piensa una cadena de 4 cifras distintas. 12=N. 19=L. 21=K. Calcular la suma de los valores del intervalo [1 ± 20]. y áreas de circulos -> Operaciones aritméticas con números en coma flotante 1. -> Calculos de: TBN. Ejemplo: Dime tu DNI: 19901130 Tu NIF es: 19901130 . el programa debe pedir la longitud de la cadena (de 2 a 9 cifras). L=50. Ejemplo: Dime un año: 1800 Dime otro año: 1900 Entre 1800 y 1900 (ambos incluidos) hubo 24 años bisiestos y en total 36889 días. A cada resultado le corresponde una letra: 0=T. 3799 se escribe MMMDCCLXXXXVIIII Ejercicio 3: Escribe un programa que pida dos años y calcule el número de años bisiestos que hay entre esos dos años (incluyendo los dos años) y el número de días total entre esos dos años (incluyendo los dos años).N Ejercicio 2: Escribe un programa que convierta números inferiores a 5000 escritos con cifras árabes en números escritos con números romanos. D=500. M=1000. Ejemplo: Dime la longitud de la cadena: 4 Intenta adivinar la cadena: 1234 Con 1234 has adivinado 1 valores. ¿Es 2431 ? Dime cuántas cifras he acertado: 1 ¿Es 1324 ? Dime cuántas cifras he acertado: 2 ¿Es 4321 ? Dime cuántas cifras he acertado: 0 ¿Es 1234 ? Dime cuántas cifras he acertado: 4 Calculadoar aritmética -> Generador de números de Fibonacci -> Generador de números de lotería aleatórios -> Averiguar si un número es capicua o no. En cada intento. . Después el programa debe ir pidiendo que intentes adivinar la cadena de números. 9=D. 8=P. 20=C. 4=G. Ejercicio 4: Escribe un programa que te permita jugar a una versión simplificada del juego Master Mind. para cada operación de sumatoria parcial determine. V=5. Al principio. Intenta adivinar la cadena: 1243 Con 1243 has adivinado 0 valores. 1=R. 6=Y. 17=V. El juego consistirá en adivinar una cadena de números distintos. Intenta adivinar la cadena: 2431 Con 2431 has adivinado 4 valores. C=100.Ejercicio 1: Escribe un programa que calcule la letra del NIF a partir del número del DNI. 2=W. 14=Z. X=10. en que podía haber hasta cuatro símbolos iguales seguidos. Felicidades Ejercicio 5: Escribe un programa que sea capaz de jugar al Master Mind con las reglas del ejercicio anterior. Al principio. 10=X. puedes utilizar la notación romana antigua. Para hacer más fácil el ejercicio. 3=A. Ejemplo: Dime un número: 3799 En números romanos. 13=J. el programa debe pedir la longitud de la cadena (de 2 a 9 cifras). 22=E. a. 18=H. La letra se obtiene calculando el resto de la división del número del DNI por 23. el programa informará de cuántos números han sido acertados (el programa considerará que se ha acertado un número si coincide el valor y la posición). el programa debe ir intentando adivinar la cadena de números. El valor de los diferentes números romanos es el siguiente: I=1. Después. 5=M. TBM.

pero si su capital tiene actualmente un saldo superior a los Bs. · Total de impuesto pagado.h> #include <string. #define FALSE 0 #define TRUE !FALSE typedefintBool. Factorial de la suma parcial. Posteriormente repartirá su presupuesto de la siguiente manera: · Bs. · El tipo de trabajador (obrero o empleado). voides_palindromo(char*a) { Bool b=TRUE. Para calcular los pagos considerar lo siguiente: · Los obreros pagan 10 % de impuesto · Los empleados pagan 10 % de impuesto. 1. invierta el mismo y determine si es par o impar. · El sueldo por hora. · Total de impuesto pagado por los obreros y por empleados.a=NULL.h> #define ES_PALIN printf("\n\nEs palindromo\n\n"). * Algoritmo que te dice si una palabra es palindromo */ #include <stdio.b.000. for(i=0. en caso de que fuera necesario. · Bs. } intmain() { char*a=(char*)calloc(20. Los datos que se leerán serán los siguientes: · Las horas trabajadas. Al final se desea: · Total a pagar a cada obrero y empleado. pedirá un préstamo bancario para que su nuevo saldo sea de Bs.sizeof(char)). d. return0.000.ultPos--) { if(a[i]!=a[ultPos]) { b=FALSE. 2. · Total pagado a obreros y empleados. Sumatorias parciales iniciadas en tres. · Cantidad de trabajadores que no pagan impuesto.000 no pagan impuesto.h> #include <stdlib. system("pause").000 para mobiliario. es_palindromo(a). printf("Palabra: "). y el resto la mitad será para la compra de insumos y la otra para otorgar incentivos al personal. 20. 2. free(a). break. Si su capital tiene actualmente un saldo positivo pedirá un préstamo bancario para tener un nuevo saldo de Bs. Desplegar que cantidades se destinaran para la compra de insumos e incentivos al personal y. 5. · Los trabajadores (obreros y empleados) que reciban un pago menor de Bs. #define NO_PALIN printf("\n\nNo es palindromo\n\n"). inti. La manera de planificarlas depende de lo siguiente: Si actualmente su capital se encuentra con saldo negativo. intultPos=strlen(a)-1. 3. 10. } } if(b)ES_PALIN elseNO_PALIN.i<strlen(a).000 no pedirá ningún préstamo. 20.scanf("%s".i++. a cuanto ascendería la cantidad que se pediría al banco. El dueño de una empresa desea planificar las decisiones financieras que tomara en el siguiente año.000 para equipo de cómputo. c.a). . Desarrolle un programa que calcule e imprima el pago de 43 trabajadores que laboran en la Compañía GACMAN. Una vez obtenida la sumatoria total.

} } return. Cada punto de la imagen está representado por un color codificado mediante un entero en el rango 0-255. ¿Alguna idea para generar dicha matriz? public static void llenarmatrizcaracol(int mat[][].fil<=(m-1-k). Además este menú se podrá ejecutar un número ilimitado de veces (hasta que el usuario introduzca 0). for(col=k+1. cont++. for(col=n-2-k. for(fil=m-2-k.int n.col. cont++.} Osea. } fil=k. cont++.fil++) { mat[fil][col]=cont. Además deberemos implementar las siguientes funciones: .fil--) { mat[fil][col]=cont.col++) { mat[fil][col]=cont. //Inicializamos un contador for(k=0. Diseñar un subalgoritmo que lea una imagen y muestre en pantalla las coordenadas de aquellos puntos que.k<m.col--) { mat[fil][col]=cont.col<=n-1-k. ingresar un entero (el orden de la matriz).k. Hacer un menú en el programa principal con las opciones que se han indicado y llamar a los procedimientos a partir de ese menú. y que el programa devuelva la matriz 'espiral' de dicho orden.aux. tienen un color por debajo de la media. Diseñar un subalgoritmo que cree un vector con todos los colores utilizados en la imagen y otro vector con las veces que ha aparecido dicho color. cont++.int m) { int fil. } fil=m-1-k. no siendo puntos del borde.cont. } col=n-1-k. } Se desea diseñar un sistema de reconocimiento de imágenes para un satélite.fil>=k. for(fil=k.k++) { col=k. Diseñar un algoritmo al que se le de una imagen y le sume el valor más bajo (usar la función del primer apartado) a todos los elementos de la misma. excepto a aquellos que estén en el borde.col>=k+1. //Nos creamos variables de tipo entero cont=1. El software asociado debe realizar distintos tipos de operaciones con imágenes almacenadas en matrices de m x n elementos. y y y y Diseñar un subalgoritmo que devuelva el valor más bajo de la imagen.

C3=0.y y Inicializar matriz.Los años exactamente divisibles entre 400 sí son años bisiestos. Cifrado. estos generen un acarreo. dejando la primera ocurrencia. R=8. una eliminación de palabras repetidas. 2. Número absoluto de línea. . Tambien es necesario tener en cuenta que existe la posibilidad de que al sumar dos digitos.txt El programa debe tener un menú donde el usuario pueda: 1. Leer el fichero sinrepetidas. El resultado almacenarlo en un fichero de texto llamado cifrado. Última palabra en la línea. /* Ejercicio 104 Escribir un programa que solicite un año e indique si es bisiesto o no Un año es bisiesto si es múltiplo de 4 excluyendo aquellos que son múltiplo de 100 y no de 400.Los años exactamente divisibles entre 100 no son años bisiestos. Guardar en el fichero sinrepetidas. Por cada línea del texto almacenar en el fichero llamado informacion un registro cuyos campos indiquen: Primera palabra en la línea. 3. dos sumandos y la tercera que representa el resultado de dicha suma. N=6.txt y almacenar el código una vez descifrado en un fichero llamado descifrado. Ejemplo: C4 C3 C2 C1 S E N D M O R E ____________ M O N E Y El programa debe mostrar como resultado. El programa pregunta si debe agregar al principio.txt Descifrado. Por lo tanto a cada par de letras sumadas (menos al primer par) debe sumarseles 0 o 1 dependiendo de si existe o no acarreo. (Estos dos módulos también pueden incluírse en el menú). . Y=2 3. Leer cifrado. . de las palabras que aparecen en texto. C2=1. Número de página donde está la línea. Número de palabras en la línea.algoritmo que lea un numero entero positivo y determine el numero de digitos decimales necesarios para la representacion de dicho valor.txt. hacer un programa que reciba estas tres cadenas y encuentre los valores para cada una de las letras de las cadenas para que la suma sea correcta. Es importante anotar que las letras solamente pueden tomar valores entre 0 y 9 y que no puede haber dos letras con el mismo valor. dado un número de filas y columnas (habrá un Máximo de filas y columnas que será constante). Cifrarlo mediante el método de sustitución simple (utilizar como alfabeto del criptosistema el código ASCII).txt Dadas tres cadenas de caracteres. de tal manera que los resultados de la suma sean correctos. Eliminación de palabras repetidas. al final o en el medio y agrega el elemento a la lista. los valores para cada letra.txt el texto original sin palabras repetidas. un cifrado y descifrado de un texto leído desde el fichero texto. O=0. D=7. obtener por pantalla el cifrado de cualquier línea de texto. S=9.*/ Citar Acceso a ficheros .206 que realice una estadística. *Escribir un programa que permita agregar nº enteros a una lista de números aceptada por teclado. verlas ordenadas alfabéticamente b. E=5. M=1. */ Realizar un programa en pascal ISO-10.txt : a. Mostrar matriz. conocer el número de ocurrencias de una palabra.Los años exactamente divisibles entre 4 son años bisiestos. consultar la estadística almacenada en el fichero informacion. C4=1.txt Estadística. Para el ejemplo los resultados serian: C1=1.

.a3.a2....a1. while (s!='s' && s!='S') { . tal que todo símbolo aparece una sola vez en cada fila y en cada columna.h> #include<string. char respuesta[20].de hehco que los pones en un arreglo. max=2 pues crea un archivo en el que guarda en cada linea todas las palabras posibles desde la cadena a hasta la zz de la forma: Citar a b c .x.h> #include<conio.. ab ac ad . Si deseas solo colocarlos. 1 2)paso 1 2 1 2 3) 1 2 1 3 2 3 °->arrancas de aca 3 2 ->obs arrancas por aca 3 .. Ejemplo: min=1. .h> #include<stdlib. int b[20][20]={0}. y así hasta zz Crear un programa en C que despliegue el cuadro latino dado un numero "n". 3 2 1 ->n-esima posicion ->n-esima posicion 2->obs arrancas por aca . int c. char s='A'...Ejercicio 122 Escribir un programa que solicite palabras y las agrege a un fichero llamado c:\diccionario de forma que luego se puedan consultar las palabras una a una Vale. Pos pa entenderlo mejor: si n= 3 el cuadro quedaria asi: 1 2 3 3 1 2 2 3 1 Esta en funcion de las diagonales : para n 1)paso 1 1 . 2 pa ponerle limites "n" debe ser mayor de 1 (obvio) y menor de 21 para que no salga tan grusea la matriz #include<stdio.creo q puedes deducir la ley de formacion(no esta dificil eh) ayuda: 1 n n-1 n-2 .... Definición Un cuadro latino es un arreglo de "n" símbolos en "n2"celdas arregladas en un cuadrado de filas y columnas. El término "n" se conoce como el orden del cuadro latino.y.... int a.h> void main() { clrscr().. lo q yo he hecho es un programa que pide al usuario la longitud mínima y maxima de la contraseña y crea todas las palabras posibles. 2 1 ->n-esima posicion Te das cuenta como colocarlos.....

a2=0. } } while ((a2!=a1) || (a>19 || a<=1) || respuesta[0]=='0') { gotoxy(2. for(x=0.cprintf("N£mero (2-19):").x<a1. for(x=0. } } ==char(y)) } int z=2.cprintf("PRESIONE ENTER").x<a.3).x++) { for (y=48.y++) { if (respuesta  ==char(y)) a2++.2). a=atoi(respuesta). gotoxy(2.x<a. cprintf(" n = %d ". scanf("%[^\n]". clrscr(). } c=a*4/2.y++) { if (respuesta  a2++.cprintf("EL DATO TIENE QUE SER UN NéMERO NATURAL MAYOR QUE 1 Y MENOR QUE 20").2). a=atoi(respuesta).11-d).x++) { textcolor(LIGHTRED). } [y]=z. gotoxy(2. gotoxy(24.7). for (x=0. gotoxy(2. gotoxy(2. cprintf(" CUADRADO LATINO DE ORDEN \"n\""). for(y=0.respuesta).cprintf("N£mero (2-19):").cprintf("EL DATO INTRODUCIDO ES INCORRECTO").a).x<a1. .textcolor(LIGHTGRAY).y<=57.cprintf("Introduzca un n£mero para crear el cuadrado latino").y<a. int d=a/2.x++) { z--. fflush(stdin). gotoxy(2.6).respuesta). gotoxy(24.3). clrscr().5). for (x=0.y<=57.cprintf("Introduzca un n£mero para crear el cuadrado latino"). scanf("%[^\n]". a1=strlen(respuesta). b  z++. fflush(stdin). gotoxy(2. textcolor(GREEN).y++) { if (z>a) z=1. textcolor(LIGHTGRAY). a1=strlen(respuesta).10-d).x++) { for (y=48. getch(). a2=0.

Multiplicamos por dos los numeros de las posiciones imapres(4-3-4-1-0-9-7-5) y dejarlos con un solo digito.24).Las mas importantes son Visa(4).if (x==0) { gotoxy(40-c.pero hay muchas paginas k t piden el numero de tarjeta solo para comprobar k eres mayor de edad. } gotoxy(40-c. if (x==0) { gotoxy(40+c.no sirev para sacar dinero por supuesto. la codificacion es la siguiente: El numero se compone de tres partes principales: Los 4 primeros digitos componen el identificativo del banco que cede la tarjeta.bastante simple k puede tener sus utilidades. clrscr().12-d+x). El formato es el siguiente 1111 2333 3333 3334 algoritmo de codificacion: Se realiza en tres pasos.y++) { textcolor(LIGHTBLUE). cprintf("%3d ". } textcolor(LIGHTRED). cprintf(" ³"). } if (x==a-1) { gotoxy(40+c. textcolor(LIGHTGRAY). cprintf(" Ù").14-d+x).13-d+x). cprintf("Ú"). los 10 digitos siguientes componen el numero de usuario e identifican a este de manera unica.hay un numero diferente para cada banco(esto se busca en internet). Este es un ejercicio de C. } } textcolor(YELLOW).Discover(6).12-d+x). cprintf("³").Master card(5). cprintf(" ¿"). cprintf("CONTINUAR = ENTER s=getch().y si nos es valida t dice k numero tienes k cambiarle para hacerla valida. gotoxy(3. Digito de control es el ultimo numero y se obtiene aplicando un algoritmo al resto del numero.b  [y]). El 5 digito es el tipo de tarjeta e indica que entidad financiera gestiona esta tarjeta. for( y=0. } if (x==a-1) { gotoxy(40-c. Si tenemos el numero de la tarjeta 4539 4512 0398 7356 y keremos comprobar k es valido: 1.14-d+x). cprintf("À").y<a.american Expres(3). Consiste en comprobar k una codificacion de tarjeta de credito es valida. } } SALIDA = S").asi k con este programita n tendras k meter tu numero de cuenta. 4*2=8 3*2=6 4*2=81*2=2 0*2=0 9*2=18-->1+8=9 7*2=14--->1+4=5 5*2=10--->1+0=1 .

Vectores e Funções e Procedimentos 1. yo lo hice pero no se porq no me compilo.al numero ya ingresado le suma su numero invertido.h> #include<math. onde são armazenados os destinos de cada um dos passageiros. bem como a percentagem de passageiros que vão desde a origem até ao destino final (4). main() { unsigned long int n. int basex. d) Elabore uma função que calcule e devolva a percentagem de passageiros que vai até ao destino final.band. de acordo com a c) Um procedimento que mostra o número de passageiros transportados e a informação referente aos seus destinos.basex. e) Utilizando as funções e os procedimentos elaborados nas alíneas anteriores. os quais apenas podem entrar no ponto de partida do autocarro mas podem ter vários destinos (1..50] of integer. do{ printf("ingrese un numero:"). scanf("%d". 2 .basex>=2. algoritmo que al ingresar un numero por pantalla.50 3 4. pois são efectuadas várias paragens até ser atingido o destino final (4). me salia en pantalla pow:domain #include<stdio. int funbase(int. }while(n<0).00 Preço ¼ ¼ ¼ ¼ ele deve pagar. for(basex=9.num. Deverá ser também indicado no monitor os lugares ocupados pelos passageiros que vão sair no primeiro destino (1). elabore um programa que obtenha o número de passageiros que o autocarro vai transportar.v. eje: este resultado tiene q ser 1234=4321 .3. Pretende-se um programa que auxilie a empresa a determinar a receita proporcionada pelos bilhetes dos passageiros transportados por um dado autocarro. int funsuma(int).&n). Para a resolução do problema considere a seguinte estrutura de dados: var autocarro:array[1.50 4 5. cualquie duda escribanme. while(num!=0) { .boolean. si el resultado es palindrome imprimir por pantalla 1paso.h> int funinv(int).basex--) { band=1.55 2 3. num=n. dde la 10 hasta la base 2. int funacum(int).2. int funcionbasex(int. Cada autocarro pode transportar até 50 passageiros.pasos. b) Elabore uma função que obtenha o destino de um passageiro e que calcule o preço do bilhete que seguinte tabela: Destino 1 2.4).y palindrome(que se pueda leer de igual forma de izquieda a derecha . calcule a receita total e a percentagem de passageiros que vão até ao destino final.3 ou 4) de cada um dos passageiros. siino ver en cuantos pasos es posible llegar a un numero palindrome .int).esto realizarlo en cualquier base. Uma empresa de viagens possui vários autocarros que efectuam percursos de longa distância.int). a) Elabore uma procedimento que obtenha o numero de passageiros transportados por um dado autocarro e que efectue a leitura do destino (1.

boolean=funsuma(n). num=num/10.pasos). num1=n. band=0. .basex. n=n/10. pasos=pasos+1. } } if((num1>=0)&&(num1<10)) { inv=num1. } } } /*------------------------------------------------------------------------*/ int funinv(int n) { int inv.num1.band). while(n!=0) { r=n%10.basex). printf("Base %d:%d pasos". } } /*printf("band:%d". if(v>=basex) { printf("base %d: ? pasos". }while(boolean==0).r.*/ /*hasta aqui compila bien*/ while(band==1) { pasos=0. printf("funacumda:%d".v=num%10. inv=(r+(inv*10)). /*FUNCION PARA INVERTIR UN NUMERO*/ if(n>=10) { inv=0. do{ n=funacum(n).n).

num1=n. n=n/basex.a. } } if((num1>=0)&&(num1<10)) { inv=num1.num1. a=funinv(n). } inv=funinv(inv).int basex) { int inv. } else if(suma!=funinv(suma)) { flag=0.sumabase. } /*------------------------------------------------------------------------*/ /*FUNCION PARA PASAR DE BASE 10 A BASE X*/ int funcionbasex(int n.h.basex)+funbase(a.} return(inv). } /*---------------------------------------------------------------------------*/ int funsuma(int suma) { int flag. while(n!=0) { h=n%basex. if(n>=10) { inv=0. } return(flag). /*VERIFICACION DEL NUMERO PALINDROME*/ if(suma==funinv(suma)) { flag=1. /*SUMAS SUCESIVAS PARA VER LA COMPROBACION DE LOS PASOS*/ . return(adicion).basex)). adicion=funcionbasex(sumabase. inv=h+inv*10.basex). return(inv). sumabase=(funbase(n. } /*-------------------------------------------------------------------*/ int funacum(int n) { int adicion.

i++) { a=pow(base1. } return(sum).elhacker. cont=cont+1. for(i=0. q=q/10.html#ixzz1Q6HNvaeH .T[100].int base1) { int cont. while(q!=0) { T[cont]=q%10. } http://foro. i.0. cont=0.sum.} /*------------------------------------------------------------------------------*/ /*FUNCION PARA PASAR DE BASE x A BASE 10*/ int funbase(int q. sum=(sum+(T*a)).i<=cont-1. } sum=0.a.net/ejercicios/ejercicio_de_c-t40275.i).

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->