Taller 4: Arreglos
Video Explicativo
Ejercicio 1
Enunciado:
Crear un vector de tipo Entero con 5 posiciones, llenarlo con información solicitada
al usuario. Después de recoger toda la información, se requiere imprimir el índice
de cada posición en el arreglo con su valor de la siguiente manera:
[0] = 55
[1] = 99
[2] = 11
[3] = 56
[4] = 69
Solución:
Proceso Ejercicio1
Definir arreglo,dato,indice como Entero;
Dimension arreglo[5];
//Llenando arreglo por teclado
Para indice <-0 Hasta 4 Con Paso 1 Hacer
Escribir indice+1,".Ingrese un numero";
Leer arreglo[indice];
FinPara
Limpiar Pantalla;
//Mostrando datos en pantalla
Escribir "Datos del arreglo: ";
Para indice <-0 Hasta 4 Con Paso 1 Hacer
Escribir "[",[indice+1],"]",": ",arreglo[indice];
FinPara
FinProceso
Ejercicio 2
Enunciado:
Crear un arreglo de números enteros de 20 posiciones, el cual, debe ser llenado con
números aleatorios entre 1 y 100; después de haber llenado dicho arreglo, se debe
volver a recorrer utilizando un ciclo diferente al que se usó para llenarse e imprimir
los números pares e impares. Ejemplo
Números pares: 2, 4, 6, 8, 10
Números impares: 1, 3, 5, 7, 9
Solución:
Proceso Ejercicio2
Definir arreglo, indice,resultado como Entero;
Definir pares,impares Como Caracter;
Dimension arreglo[20];
pares<- "";
impares<-"";
Para indice <-0 Hasta 19 Con Paso 1 Hacer
arreglo[indice] <- azar (100);
FinPara
//Mostrando datos en pantalla del arreglo inicial
Escribir "Datos del arreglo inicial: ";
Para indice <-0 Hasta 19 Con Paso 1 Hacer
Escribir "[",[indice+1],"]",": ",arreglo[indice];
FinPara
Para indice <-0 Hasta 19 con Paso 1 Hacer
Si arreglo[indice]%2=0 Entonces
pares<-Concatenar(pares,ConvertirATexto(arreglo[indice]));
pares <-Concatenar(pares,",");
SiNo
impares<-Concatenar(impares,ConvertirATexto(arreglo[indice]));
impares <-Concatenar(impares,",");
FinSi
FinPara
Escribir "Numero pares: ",Subcadena(pares,0,((Longitud(pares)-1)-2));
Escribir "Numero impares: ",Subcadena(impares,0,((Longitud(impares)-1)-2));
FinProceso
Ejercicio 3
Enunciado:
Imprimir los números primos del 1 al 1000, el resultado debe ser buscado de forma
matemática.
Solución:
Proceso Ejercicio3
Definir primos,contador,num,indice como Entero;
contador<-0;
num<- azar(1000);
Escribir "***NUMEROS PRIMOS***";
Para num<-1 Hasta 1000 Hacer
indice<-1;
contador <-0;
Mientras indice <= num Hacer
Si num mod indice ==0 Entonces
contador<-contador+1;
FinSi
indice<-indice+1;
FinMientras
Si contador==2 Entonces
Escribir num,"," Sin Saltar;
FinSi
FinPara
FinProceso
Ejercicio 4
Enunciado:
Dada la siguiente matriz bidimensional, el cual debe de quemar en el código
01 02 03 04 05
06 07 08 09 10
11 12 13 14 15
16 17 18 19 20
Utilizando el conocimiento adquirido, a excepción de hacerlo de forma manual,
imprima la siguiente matriz bidimensional.
01 02 03 04 05
10 09 08 07 06
11 12 13 14 15
20 19 18 17 16
Solución:
Proceso Ejercicio4
Definir fila, columna, colIzquierda, colDerecha,matriz Como Entero;
Dimension matriz[4,5];
matriz[0,0] <- 01;
matriz[0,1] <- 02;
matriz[0,2] <- 03;
matriz[0,3] <- 04;
matriz[0,4] <- 05;
matriz[1,0] <- 06;
matriz[1,1] <- 07;
matriz[1,2] <- 08;
matriz[1,3] <- 09;
matriz[1,4] <- 10;
matriz[2,0] <- 11;
matriz[2,1] <- 12;
matriz[2,2] <- 13;
matriz[2,3] <- 14;
matriz[2,4] <- 15;
matriz[3,0] <- 16;
matriz[3,1] <- 17;
matriz[3,2] <- 18;
matriz[3,3] <- 19;
matriz[3,4] <- 20;
Escribir "MATRIZ INICIAL";
Para fila <- 0 Hasta 1 Con Paso 1 Hacer
Para columna <-0 Hasta 4 Con Paso 1 Hacer
Escribir matriz[fila,columna], " " Sin Saltar;
FinPara
Escribir "";
FinPara
Para fila <- 2 Hasta 3 Con Paso 1 Hacer
Para columna <-0 Hasta 4 Con Paso 1 Hacer
Escribir matriz[fila,columna], " " Sin Saltar;
FinPara
Escribir "";
FinPara
Escribir "";
Escribir "";
Escribir "MATRIZ RESULTANTE";
Para fila <- 0 Hasta 0 Con Paso 1 Hacer
Para columna <-0 Hasta 4 Con Paso 1 Hacer
Escribir matriz[fila,columna] Sin Saltar;
Escribir " " Sin Saltar;
FinPara
Escribir " ";
FinPara
Para fila <- 1 Hasta 1 Con Paso 1 Hacer
colIzquierda<- 10;
colDerecha <- 6;
Para columna<- 0 Hasta 4 Con Paso 1 Hacer
Escribir colIzquierda, " " Sin Saltar;
colIzquierda<- colIzquierda-1;
Escribir " " Sin Saltar;
FinPara
Escribir " ";
FinPara
Para fila <- 2 Hasta 2 Con Paso 1 Hacer
Para columna <-0 Hasta 4 Con Paso 1 Hacer
Escribir matriz[fila,columna], " " Sin Saltar;
FinPara
Escribir " ";
FinPara
Para fila <- 3 Hasta 3 Con Paso 1 Hacer
colIzquierda<- 20;
colDerecha <- 16;
Para columna<- 0 Hasta 4 Con Paso 1 Hacer
Escribir colIzquierda, " " Sin Saltar;
colIzquierda<- colIzquierda-1;
FinPara
Escribir " ";
FinPara
FinProceso
Ejercicio 5
Enunciado:
Se debe de imprimir el siguiente cuadro:
El usuario deberá insertar la fila y columna de la cual desea ver el resultado,
el resultado de cada celda debe estar previamente calculado en una matriz
bidimensional la cual cada resultado obedecerá a la fila y columna insertada
por el usuario.
Solución:
Proceso Ejercicio5
Definir fila,columna, resultados,indice Como Entero;
Definir tablaDatos Como Caracter;
Dimension resultados[10,10];
Dimension tablaDatos[10,10];
tablaDatos[0,0] <- "F 0 1 X 1 ";
tablaDatos[0,1] <- " 2 X 1 ";
tablaDatos[0,2] <- " 3 X 1 ";
tablaDatos[0,3] <- " 4 X 1 ";
tablaDatos[0,4] <- " 5 X 1 ";
tablaDatos[0,5] <- " 6 X 1 ";
tablaDatos[0,6] <- " 7 X 1 ";
tablaDatos[0,7] <- " 8 X 1 ";
tablaDatos[0,8] <- " 9 X 1 ";
tablaDatos[0,9] <- " 10 X 1 ";
tablaDatos[1,0] <- " 1 1 X 2 ";
tablaDatos[1,1] <- " 2 X 2 ";
tablaDatos[1,2] <- " 3 X 2 ";
tablaDatos[1,3] <- " 4 X 2 ";
tablaDatos[1,4] <- " 5 X 2 ";
tablaDatos[1,5] <- " 6 X 2 ";
tablaDatos[1,6] <- " 7 X 2 ";
tablaDatos[1,7] <- " 8 X 2 ";
tablaDatos[1,8] <- " 9 X 2 ";
tablaDatos[1,9] <- " 10 X 2 ";
tablaDatos[2,0] <- "I 2 1 X 3 ";
tablaDatos[2,1] <- " 2 X 3 ";
tablaDatos[2,2] <- " 3 X 3 ";
tablaDatos[2,3] <- " 4 X 3 ";
tablaDatos[2,4] <- " 5 X 3 ";
tablaDatos[2,5] <- " 6 X 3 ";
tablaDatos[2,6] <- " 7 X 3 ";
tablaDatos[2,7] <- " 8 X 3 ";
tablaDatos[2,8] <- " 9 X 3 ";
tablaDatos[2,9] <- " 10 X 3 ";
tablaDatos[3,0] <- " 3 1 X 4 ";
tablaDatos[3,1] <- " 2 X 4 ";
tablaDatos[3,2] <- " 3 X 4 ";
tablaDatos[3,3] <- " 4 X 4 ";
tablaDatos[3,4] <- " 5 X 4 ";
tablaDatos[3,5] <- " 6 X 4 ";
tablaDatos[3,6] <- " 7 X 4 ";
tablaDatos[3,7] <- " 8 X 4 ";
tablaDatos[3,8] <- " 9 X 4 ";
tablaDatos[3,9] <- " 10 X 4 ";
tablaDatos[4,0] <- "L 4 1 X 5 ";
tablaDatos[4,1] <- " 2 X 5 ";
tablaDatos[4,2] <- " 3 X 5 ";
tablaDatos[4,3] <- " 4 X 5 ";
tablaDatos[4,4] <- " 5 X 5 ";
tablaDatos[4,5] <- " 6 X 5 ";
tablaDatos[4,6] <- " 7 X 5 ";
tablaDatos[4,7] <- " 8 X 5 ";
tablaDatos[4,8] <- " 9 X 5 ";
tablaDatos[4,9] <- " 10 X 5 ";
tablaDatos[5,0] <- " 5 1 X 6 ";
tablaDatos[5,1] <- " 2 X 6 ";
tablaDatos[5,2] <- " 3 X 6 ";
tablaDatos[5,3] <- " 4 X 6 ";
tablaDatos[5,4] <- " 5 X 6 ";
tablaDatos[5,5] <- " 6 X 6 ";
tablaDatos[5,6] <- " 7 X 6 ";
tablaDatos[5,7] <- " 8 X 6 ";
tablaDatos[5,8] <- " 9 X 6 ";
tablaDatos[5,9] <- " 10 X 6 ";
tablaDatos[6,0] <- "A 6 1 X 7 ";
tablaDatos[6,1] <- " 2 X 7 ";
tablaDatos[6,2] <- " 3 X 7 ";
tablaDatos[6,3] <- " 4 X 4 ";
tablaDatos[6,4] <- " 5 X 7 ";
tablaDatos[6,5] <- " 6 X 7 ";
tablaDatos[6,6] <- " 7 X 7 ";
tablaDatos[6,7] <- " 8 X 7 ";
tablaDatos[6,8] <- " 9 X 7 ";
tablaDatos[6,9] <- " 10 X 7 ";
tablaDatos[7,0] <- " 7 1 X 8 ";
tablaDatos[7,1] <- " 2 X 8 ";
tablaDatos[7,2] <- " 3 X 8 ";
tablaDatos[7,3] <- " 4 X 8 ";
tablaDatos[7,4] <- " 5 X 8 ";
tablaDatos[7,5] <- " 6 X 8 ";
tablaDatos[7,6] <- " 7 X 8 ";
tablaDatos[7,7] <- " 8 X 8 ";
tablaDatos[7,8] <- " 9 X 8 ";
tablaDatos[7,9] <- " 10 X 8 ";
tablaDatos[8,0] <- "S 8 1 X 9 ";
tablaDatos[8,1] <- " 2 X 9 ";
tablaDatos[8,2] <- " 3 X 9 ";
tablaDatos[8,3] <- " 4 X 9 ";
tablaDatos[8,4] <- " 5 X 9 ";
tablaDatos[8,5] <- " 6 X 9 ";
tablaDatos[8,6] <- " 7 X 9 ";
tablaDatos[8,7] <- " 8 X 9 ";
tablaDatos[8,8] <- " 9 X 9 ";
tablaDatos[8,9] <- " 10 X 9 ";
tablaDatos[9,0] <- " 9 1 X10 ";
tablaDatos[9,1] <- " 2 X10 ";
tablaDatos[9,2] <- " 3 X10 ";
tablaDatos[9,3] <- " 4 X10 ";
tablaDatos[9,4] <- " 5 X10 ";
tablaDatos[9,5] <- " 6 X10 ";
tablaDatos[9,6] <- " 7 X10 ";
tablaDatos[9,7] <- " 8 X10 ";
tablaDatos[9,8] <- " 9 X10 ";
tablaDatos[9,9] <- " 10 X10 ";
resultados[0,0] <- 1;
resultados[0,1] <- 2;
resultados[0,2] <- 3;
resultados[0,3] <- 4;
resultados[0,4] <- 5;
resultados[0,5] <- 6;
resultados[0,6] <- 7;
resultados[0,7] <- 8;
resultados[0,8] <- 9;
resultados[0,9] <- 10;
resultados[1,0] <- 2;
resultados[1,1] <- 4;
resultados[1,2] <- 6;
resultados[1,3] <- 8;
resultados[1,4] <- 10;
resultados[1,5] <- 12;
resultados[1,6] <- 14;
resultados[1,7] <- 16;
resultados[1,8] <- 18;
resultados[1,9] <- 20;
resultados[2,0] <- 3;
resultados[2,1] <- 6;
resultados[2,2] <- 9;
resultados[2,3] <- 12;
resultados[2,4] <- 15;
resultados[2,5] <- 18;
resultados[2,6] <- 21;
resultados[2,7] <- 24;
resultados[2,8] <- 27;
resultados[2,9] <- 30;
resultados[3,0] <- 8;
resultados[3,1] <- 8;
resultados[3,2] <- 12;
resultados[3,3] <- 16;
resultados[3,4] <- 20;
resultados[3,5] <- 24;
resultados[3,6] <- 28;
resultados[3,7] <- 32;
resultados[3,8] <- 36;
resultados[3,9] <- 40;
resultados[4,0] <- 5;
resultados[4,1] <- 10;
resultados[4,2] <- 15;
resultados[4,3] <- 20;
resultados[4,4] <- 25;
resultados[4,5] <- 30;
resultados[4,6] <- 35;
resultados[4,7] <- 40;
resultados[4,8] <- 45;
resultados[4,9] <- 50;
resultados[5,0] <- 6;
resultados[5,1] <- 12;
resultados[5,2] <- 18;
resultados[5,3] <- 24;
resultados[5,4] <- 30;
resultados[5,5] <- 36;
resultados[5,6] <- 42;
resultados[5,7] <- 48;
resultados[5,8] <- 54;
resultados[5,9] <- 60;
resultados[6,0] <- 7;
resultados[6,1] <- 14;
resultados[6,2] <- 21;
resultados[6,3] <- 28;
resultados[6,4] <- 35;
resultados[6,5] <- 42;
resultados[6,6] <- 49;
resultados[6,7] <- 56;
resultados[6,8] <- 63;
resultados[6,9] <- 70;
resultados[7,0] <- 8;
resultados[7,1] <- 16;
resultados[7,2] <- 24;
resultados[7,3] <- 32;
resultados[7,4] <- 40;
resultados[7,5] <- 48;
resultados[7,6] <- 56;
resultados[7,7] <- 64;
resultados[7,8] <- 72;
resultados[7,9] <- 80;
resultados[8,0] <- 9;
resultados[8,1] <- 18;
resultados[8,2] <- 27;
resultados[8,3] <- 36;
resultados[8,4] <- 45;
resultados[8,5] <- 54;
resultados[8,6] <- 63;
resultados[8,7] <- 72;
resultados[8,8] <- 81;
resultados[8,9] <- 90;
resultados[9,0] <- 10;
resultados[9,1] <- 20;
resultados[9,2] <- 30;
resultados[9,3] <- 40;
resultados[9,4] <- 50;
resultados[9,5] <- 60;
resultados[9,6] <- 70;
resultados[9,7] <- 80;
resultados[9,8] <- 90;
resultados[9,9] <- 100;
Escribir "MATRIZ INICIAL";
Escribir " C O L
U M N A
S ";
Escribir " ";
Escribir " 0 1 2
3 4 5 6
7 8 9";
Escribir " ";
Para fila <- 0 Hasta 9 Con Paso 1 Hacer
Para columna <-0 Hasta 9 Con Paso 1 Hacer
Escribir tablaDatos[fila,columna], " " Sin Saltar;
FinPara
Escribir "" ;
FinPara
Escribir " ";
Escribir "Digite la fila";
Leer fila;
Escribir "Digite la columna";
Leer columna;
Para indice <- 0 Hasta 0 Con Paso 1 Hacer
si fila = resultados(fila,columna) Entonces
Escribir "",fila,columna;
FinSi
Escribir "El resultado en la posición: [",fila,",",columna,"] es: ",
resultados[fila,columna];
FinPara
Escribir " ";
FinProceso