UNIVERSIDAD CENTRAL Facultad de Ingeniería Algoritmos y programación Grupo 1.4 Taller No. 4 Ejecute los siguientes programas en el computador en lenguaje c. Haga que el programa termine sólo cuando el usuario quiera hacerlo terminar. 15. Implemente un algoritmo que pinte un tablero de ajedrez, los peones con la letra P, las torres con T, los caballos con C, los alfiles con A, el rey con R y la reina con M. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x,y; for (x=0;x<8;x++) { for (y=0;y<8;y++) { //peones if (x==1 || x==6) { printf("P"); } //torres else if ((x==0 && y==0) || (x==7 && y==0) || (x==0 && y==7) || (x==7 && y==7) ) { printf("T"); } //caballos else if ((x==0 && y==1) || (x==7 && y==1) || (x==0 && y==6) || (x==7 && y==6) ) { printf("C"); } //alfiles else if ((x==0 && y==2) || (x==7 && y==2) || (x==0 && y==5) || (x==7 && y==5) ) { printf("A"); } //reina else if ((x==0 && y==3) || (x==7 && y==3) ) { printf("M"); } //rey else if ((x==0 && y==4) || (x==7 && y==4) ) { printf("R"); } else { printf(" "); } } printf("\n"); } system("PAUSE"); return 0; } 16. Elabore un algoritmo que muestre los primeros 100 números de izquierda a derecha usando un array de dos dimensiones. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x,y, numeros[10][10]; for (x=0;x<10;x++) { for (y=0;y<10;y++) { numeros[x][y]=(x*10)+1+y; } } for (x=0;x<10;x++) { for (y=0;y<10;y++) { printf("%d ",numeros[x][y]); } printf("\n"); } system("PAUSE"); return 0; } 17. Desarrolle un algoritmo que muestre los primeros 100 números de izquierda a derecha usando un array de dos dimensiones, la última fila a mostrará la suma de sus respectivas columnas. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x,y,sum, numeros[11][10]; for (y=0;y<10;y++) { sum=0; for (x=0;x<10;x++) { numeros[x][y]=(x*10)+1+y; sum=sum+numeros[x][y]; } numeros[10][y]=sum; } for (x=0;x<11;x++) { for (y=0;y<10;y++) { printf("%d ",numeros[x][y]); } printf("\n"); } system("PAUSE"); return 0; } 18. Construya un algoritmos que rellene un array de dos dimensiones con números pares, lo pinte y después que correspondiente. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x,y,num=2, numeros[3][3]; pida una posición X,Y y mostrar el número for (x=0;x<3;x++) { for (y=0;y<3;y++) { numeros[x][y]=num; num=num*2; } } printf("Introduzca coordenada x: "); scanf("%d",&x); printf("Introduzca coordenada y: "); scanf("%d",&y); printf("El número es: %d\n",numeros[x][y]); system("PAUSE"); return 0; } 19. Elabore un algoritmo que rellene una matriz de 3x3 y muestre su traspuesta (la traspuesta se consigue intercambiando filas por columnas y viceversa). #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int x,y,num=0, numeros[4][4]; for (x=0;x<3;x++) { for (y=0;y<3;y++) { numeros[x][y]=num; num++; } } printf("El array original es: \n\n\n"); for(x = 0;x < 3;x++) { for(y = 0;y < 3;y++) { printf(" %d ", numeros[x][y]); } printf("\n\n\n"); } printf("La traspuesta es: \n\n\n"); for(x = 0;x < 3;x++) { for(y = 0;y < 3;y++) { printf(" %d } printf("\n\n\n"); } system("PAUSE"); return 0; } Exitos! Orlando Cristancho [email protected] ", numeros[y][x]);