58346120 pseudocodigo matrices

25
Ejercicios de Pseudocódigo 1. Leer una secuencia de números y mostrar la suma de los pares y el producto de los que son múltiplo de 5. 2. Leer una secuencia de números y determinar el mayor de los pares leídos. 3. Leer una secuencia de números y mostrar el mayor de los múltiplos de 5 leídos y el menor de los múltiplos de 3 leídos. 4. Leer una secuencia de letras y mostrar la suma de sus códigos ASCII. Suponemos que tenemos la función Conv_a_Codigo (char)=int. 5. Dado un vector de 5 enteros actualizar cada posición de dicho vector con un número leído. 6. Leer una secuencia de 20 números almacenarlos en un vector y mostrar la posición donde se encuentra el mayor valor leído. 7. Dado dos vectores A y B de 15 elementos cada uno, obtener un vector C donde la posición i se almacene la suma de A[i]+B[i]. 8. Dado dos vectores A y B de 15 elementos cada uno, obtener un vector C donde la posición i se almacene la suma de A[i]+B[i] y mostrar el mayor de los C[i]. 9. Dado una secuencia de número leídos y almacenados en un vector A mostrar dichos números en orden. 10. Dado una secuencia de número leídos y almacenados en un vector A y un número leído determinar si dicho número se encuentra o no en el vector. 11. Leer una secuencia de 20 números y almacenar en un vector sus factoriales. 12. Leer 20 números y almacenarlos de manera ordenada en un vector. 13. Dado dos matrices A y B obtener la suma. 14. Dado una matriz determinar la posición (i,j) del mayor. 15. Dado una matriz determinar la posición (i,j) del mayor y menor. 16. Leer un número y una letra si la letra es B mostrar el valor en binario, si es O en octal y si es H en hexadecimal. 17. Leer una secuencia de 20 números almacenarlos en un vector A[1..20] y mostrar la suma de los elementos que ocupan posiciones pares y el mayor de los que ocupan posiciones impares. 18. Dada una matriz A[1..4][1..5] realiza la ordenación de la misma. 19. Dada una matriz A[1..4][1..5] realiza el proceso de ordenar solo por filas. 20. Dado un vector de números determina aquellos que sea primos. 1

Upload: joseph-haller-tesla

Post on 02-Jan-2016

48 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 58346120 Pseudocodigo Matrices

Ejercicios de Pseudocódigo

1. Leer una secuencia de números y mostrar la suma de los pares y el producto de los que son múltiplo de 5.

2. Leer una secuencia de números y determinar el mayor de los pares leídos.3. Leer una secuencia de números y mostrar el mayor de los múltiplos de 5 leídos y

el menor de los múltiplos de 3 leídos.4. Leer una secuencia de letras y mostrar la suma de sus códigos ASCII.

Suponemos que tenemos la función Conv_a_Codigo (char)=int.5. Dado un vector de 5 enteros actualizar cada posición de dicho vector con un

número leído.6. Leer una secuencia de 20 números almacenarlos en un vector y mostrar la

posición donde se encuentra el mayor valor leído.7. Dado dos vectores A y B de 15 elementos cada uno, obtener un vector C donde

la posición i se almacene la suma de A[i]+B[i].8. Dado dos vectores A y B de 15 elementos cada uno, obtener un vector C donde

la posición i se almacene la suma de A[i]+B[i] y mostrar el mayor de los C[i].9. Dado una secuencia de número leídos y almacenados en un vector A mostrar

dichos números en orden.10. Dado una secuencia de número leídos y almacenados en un vector A y un

número leído determinar si dicho número se encuentra o no en el vector.11. Leer una secuencia de 20 números y almacenar en un vector sus factoriales.12. Leer 20 números y almacenarlos de manera ordenada en un vector.13. Dado dos matrices A y B obtener la suma.14. Dado una matriz determinar la posición (i,j) del mayor.15. Dado una matriz determinar la posición (i,j) del mayor y menor.16. Leer un número y una letra si la letra es B mostrar el valor en binario, si es O en

octal y si es H en hexadecimal.17. Leer una secuencia de 20 números almacenarlos en un vector A[1..20] y mostrar

la suma de los elementos que ocupan posiciones pares y el mayor de los que ocupan posiciones impares.

18. Dada una matriz A[1..4][1..5] realiza la ordenación de la misma.19. Dada una matriz A[1..4][1..5] realiza el proceso de ordenar solo por filas.20. Dado un vector de números determina aquellos que sea primos.

1

Page 2: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 5VARIABLE

ENTERO n[1..5];ENTERO indice;

FIN_VARIABLEINICIO

PARA indice = 1 HASTA 5 INCREMENTO 1ESCRIBIR (“Introduce un numero”);LEER (indice);

FIN_PARAFIN_INICIO

FIN_ALGORITMO

----------------------------------------------------------------------------------------------------------

ALGORITMO ejercicio 6VARIABLE

ENTERO n[1..20];ENTERO mayor_indice;ENTERO indice;ENTERO mayor;

FIN_VARIABLEINICIOPARA indice = 1 HASTA 20 INCREMENTO 1

ESCRIBIR (“Introduce un numero”);LEER (indice);

FIN_PARAMayor = n[1]

PARA indice = 1 HASTA 20 INCREMENTO 1SI (n[indice] > mayor) ENTONCES

Mayor_indice = indice;FIN_SI

FIN_PARAESCRIBIR (mayor_indice);

FIN_INICIOFIN_ALGORITMO

2

Page 3: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 7VARIABLE

ENTERO A[1..15];ENTERO B[1..15];ENTERO indice;ENTERO suma;ENTERO C[1..15];

FIN_VARIABLEINICIOPARA indice = 1 HASTA 15 INCEMENTO 1

ESCRIBIR (“Introduce un numero para el vector A”);LEER (A[indice]);ESCRIBIR (“Introduce un numero para el vector B”);LEER (B[indice]);

FIN_PARAPARA indice = 1 HASTA 15 INCREMENTO 1

Suma = A[indice] + B[indice];C[indice] = suma;

FIN_PARAPARA indice = 1 HASTA 15 INCREMENTO 1

ESCRIBIR (C[indice]);FIN_PARA

FIN_INICIOFIN_ALGORITMO

3

Page 4: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 8VARIABLE

ENTERO A[1..15];ENTERO B[1..15];ENTERO C[1..15];ENTERO indice;ENTERO suma;ENTERO mayor;ENTERO mayor_indice;

FIN_VARIABLEINICIOPARA indice = 1 HASTA 15 INCRMENTO 1

ESCRIBIR (“Introduce un numero para el vector A”);LEER (A[indice]);

FIN_PARAPARA indice = 1 HASTA 15 INCRMENTO 1

ESCRIBIR (“Introduce un numero para el vector B”);LEER (B[indice]);

FIN_PARAPARA indice = 1 HASTA 15 INCRMENTO 1

Suma = A[indice] + B[indice];C[indice] = suma;

FIN_PARAMayor = C[1];Mayor_indice = 1;

PARA indice = 1 HASTA 15 INCREMENTO 1SI (C[indice] > mayor) ENTONCES

Mayor_indice = indice;Mayor = C[indice];

FIN_SIFIN_PARAESCRIBIR (mayor);ESCRIBIR (mayor_indice);FIN_INICIO

FIN_ALGORITMO

4

Page 5: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 9VARIABLE

ENTERO intercambio;ENTERO n[1..15];ENTERO intermedio;ENTRO indice;

FIN_VARIABLEINICIOPARA indice = 1 HASTA 15 INCREMENTO 1

ESCRIBIR (“Introduce un numero”);LEER (n[indice]);

FIN_PARAREPETIR

Intercambio = 0;PARA indice = 1 HASTA 15 INCREMENTO 1

SI (n[indice] > n[indice + 1]) ENTONCESIntermedio = n[indice];N[indice] = n[indice + 1];N[indice + 1] = Intermedio;Intercambio = 1;

FIN_SIFIN_PARA

HASTA (intercambio = 0)FIN_INICIO

FIN_ALGORITMO

5

Page 6: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 10VARIABLE

ENTERO A[1..10];ENTERO numero;ENTERO indice;

FIN_VARIABLEINICIOPARA indice = 1 HASTA 10 INCREMENTO 1

ESCRIBIR (“Introduce un numero”);LEER (A[indice]);

FIN_PARAIndice = 1;

MIENTRAS (indice < 11) AND (numero <> A[indice]) HACERIndice = indice + 1;

FIN_MIENTRASSI ( indice = 11) ENTONCES

ESCRIBIR (“No esta”);SINO

ESCRIBIR (“Existe”);FIN_SI

FIN_INICIOFIN_ALGORITMO

6

Page 7: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 11VARIABLE

ENTERO n[1..20];ENTERO indice;ENTERO factorial;ENTERO indice1;ENTERO N[1..20];

FIN_VARIABLEINICIOPARA indice = 1 HASTA 20 INCREMENTO 1

ESCRIBIR (“Introduce un numero”);LEER (n[indice]);

FIN_PARAPARA indice = 1 HASTA 20 INCREMENTO 1

Factorial = 1;PARA indice1 = 2 HASTA n[indice] INCREMENTO 1

Factorial = factorial * indice1;FIN_PARA

N[indice] = factorial;FIN_PARAFIN_INICIO

FIN_ALGORITMO

7

Page 8: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 13VARIABLE

ENTERO A[1..5][1..10];ENTERO B[1..5][1..10];ENTERO suma[fila][columna];ENTERO fila;ENTERO columna;

FIN_VARIABLEINICIOPARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 10 INCREMENTO 1LEER (A[fila][columna]);

FIN_PARAFIN_PARAPARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 10 INCREMENTO 1LEER (B[fila][columna]);

FIN_PARAFIN_PARAPARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 10 INCREMENTO 1Suma[fila][columna] = A[fila][columna] + B[fila][columna];

FIN_PARAFIN_PARA

ESCRIBIR (suma[fila][columna]);FIN_INICIO

FIN_ALGORITMO

8

Page 9: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 14VARIABLE

ENTERO A[1..5][1..4];ENTERO fila;ENTERO columna;ENTERO mayor;ENTERO posicion_fila;ENTERO posición_columna;

FIN_VARIABLEINICIOPARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 4 INCREMENTO 1ESCRIBIR (“Introduce un numero”);LEER (A[fila][columna]);

FIN_PARAFIN_PARAMayor = A[1][1];Posición_fila = 1;Posición_columna = 1;PARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 4 INCREMENTO 1SI (A[fila][columna] > mayor) ENTONCES

Mayor = A[fila][columna];Posición_fila = [fila];Posición_columna = [columna];

FIN_SIFIN_PARA

ESCRIBIR (“El mayor es:mayor”);ESCRIBIR (“La posición es:posición_fila, Posición_columna”);

FIN_PARAFIN_INICIO

FIN_ALGORITMO

9

Page 10: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 15VARIABLE

ENTERO A[1..5][1..4];ENTERO fila;ENTERO columna;ENTERO mayor;ENTERO posicion_fila;ENTERO posición_columna;ENTERO menorENTERO posición_fila1;ENTERO posición_columna1;

FIN_VARIABLEINICIOPARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 4 INCREMENTO 1ESCRIBIR (“Introduce un numero”);LEER (A[fila][columna]);

FIN_PARAFIN_PARAMayor = A[1][1];Posición_fila = 1;Posición_columna = 1;PARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 4 INCREMENTO 1SI (A[fila][columna] > mayor) ENTONCES

Mayor = A[fila][columna];Posición_fila = [fila];Posición_columna = [columna];

FIN_SIFIN_PARA

ESCRIBIR (“El mayor es:mayor”);ESCRIBIR (“La posición es:posición_fila, Posición_columna”);

FIN_PARAMenor = 1;Posición_fila1 = 1;Posición_columna1 = 1;PARA fila = 1 HASTA 5 INCREMENTO 1

PARA columna = 1 HASTA 4 INCREMENTO 1SI (A[fila][columna] < menor) ENTONCES

Menor = A[fila][columna];Posición_fila1 = [fila];Posición_columna1 = [columna];

FIN_SIFIN_PARA

ESCRIBIR (“El mayor es:menor”);ESCRIBIR (“La posición es:posición_fila1, Posición_columna1”);

FIN_INICIOFIN_ALGORITMO

10

Page 11: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 16VARIABLE

ENTERO indice;ENTERO pul;ENTERO tipo;ENTERO numero;ENTERO cociente;ENTERO divisor;ENTERO resto;CARÁCTER resultado[1..20];

FIN_VARIABLEINICIOLEER (numero);LEER (tipo); // O,H,BCociente = numero;SELECTOR tipo

Caso “B”: divisor = 2;Caso “O”: divisor = 8;Caso “H”: divisor = 16;

FIN_SELECTORPul = 0;

REPETIRPul = pul + 1;Resto = cociente mod divisor;SELECTOR resto

Caso 10: resultado[pul] = “A”;……

Caso 15: resultado[pul] = “F”;Defecto: resultado[pul] = resto;

FIN_SELECTORCociente = cociente\divisor;

HASTA (cociente = 0)PARA indice = pul HASTA 1 INCREMENTO -1

ESCRIBIR (resultado[pul]);FIN_PARAFIN_INICIO

FIN_ALGORITMO

11

Page 12: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 17VARIABLE

ENTERO A[1..20];ENTERO indice;ENTERO suma;ENTERO mayor;

FIN_VARIABLEINICIOPARA indice = 1 HASTA 20 INCREMENTO 1

ESCRIBIR (“Introduce un numero”);LEER (A[indice]);

FIN_PARASuma = 0;PARA indice = 2 HASTA 20 INCREMENTO 2

Suma = suma + A[indice];FIN_PARAMayor = A[1];PARA indice = 1 HASTA 20 INCREMENTO 2

SI (A[indice] > mayor) ENTONCESMayor = A[indice];

FIN_SIFIN_PARA

ESCRBRIR (“LA suma es:+suma”);ESCRIBIR (“El mayor es:+mayor”);

FIN_INICIOFIN_ALGORITMO

12

Page 13: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 18VARIABLE

ENTERO A[1..4][1..5];ENTERO fila;ENTERO columna;ENTERO v[1..20];ENTERO indice;ENTERO intercambio;ENTERO intermedio;

FIN_VARIABLEINICIOPARA fila = 1 HASTA 4 INCREMENTO 1

PARA columna = 1 HASTA 5 INCREMENTO 1ESCRIBIR(“Introduce un numero”);LEER (A[fila][columna]);

FIN_PARAFIN_PARAPARA fila = 1 HASTA 4 INCREMENTO 1

PARA columna = 1 HASTA 5 INCREMENTO 1V[((fila – 1) + 5) + columna] = A[fila][columna];

FIN_PARAFIN_PARAREPETIR

Intercambio = 0; PARA (indice = 1) HASTA 19 INCREMENTO 1

SI (V[indice] > V[indice + 1]) ENTONCESIntermedio = V[indice];V[indice] = V[indice +1];V[indice +1] = intermedio;Intercambio = 1;

FIN_SIFIN_PARA

HASTA (intercambio = 0)PARA fila = 1 HASTA 4 INCREMENTO 1

PARA columna = 1 HASTA 3 INCREMENTO 1A[fila][columna] = V[((fila – 1) * 5) + columna];

FIN_PARAFIN_PARAFIN_INICIO

FIN_ALGORITMO

13

Page 14: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 19VARIABLE

ENTERO A[1..4][1..5];ENTERO intermedio;ENTERO fila;ENTERO columna;

FIN_VARIABLEINICIOPARA fila = 1 HASTA 4 INCREMENTO 1

PARA columna = 1 HASTA 5 INCREMENTO 1ESCRIBIR (“Introduce un numero”);LEER (A[fila][columna]);

FIN_PARAFIN_PARAREPETIR

Intercambio = 0;PARA fila = 1 HASTA 4 INCREMENTO 1

PARA columna = 1 HASTA 3 INCREMENTO 1SI (A[fila][columna] > A[fila][columna + 1] ENTONCES

Intermedio = A[fila][columna];A[fila][columna] = A[fila][columna + 1];A[fila][columna + 1] = intermedio;Intercambio = 1;

FIN_SIFIN_PARA

FIN_PARAHASTA (intercambio = 0)FIN_INICIO

FIN_ALGORITMO

14

Page 15: 58346120 Pseudocodigo Matrices

ALGORITMO ejercicio 20VARIABLE

ENTERO A[1..20];ENTERO indice;ENTERO indice1;

FIN_VARIABLEINICIOPARA indice = 1 HASTA 20 INCREMENTO 1

ESCRIBIR (“Introduce un numero”);LEER (A[indice]);

FIN_PARAPARA indice = 1 HASTA 20 INCEMENTO 1

Indice1 = 2;MIENTRAS (indice1 < A[indice]) AND (A[indice] mod indice1 <> 0) HACER

Indice1 = indice1 + 1;FIN_MIENTRASSI (indice1 = A[indice]) ENTONCES

ESCRIBIR (“A[indice] es primo”);FIN_SI

FIN_PARAFIN_INICIO

FIN_ALGORITMO

15

Page 16: 58346120 Pseudocodigo Matrices

Realizar un algoritmo que muestre el siguiente menú.

1. Amigos2. Sociables3. Vector de productos4. Vector de sumas5. Bisiesto6. Salir

IMPORTAR MATEMATICASALGORITMO

VARIABLEENTERO opcion;

FIN_VARIABLEINICIOPantalla_inicial ();REPETIR

Pantalla_menu ();Leer_opcion ();SELECTOR

Caso1: procedimiento amigos ()Caso2: procedimiento sociables ()Caso3: procedimiento vector de productos ()Caso4: procedimiento vector de sumas ()Caso5: procedimiento bisiesto ()

FIN_SELECTORHASTA (opcion = 6)

Pantalla_fin ();FIN_INICIOPROCEDIMIENTO pantalla_menu ()

ESCRIBIR (“__”);…………

FIN_PROCEDIMIENTOPRCEDIMIENTO leer_opcion

INICIOLEER (opcion);

FIN_INICIOFIN_PROCEDIMIENTOPROCEDIMIENTO procedimientos_amigos ()

VARIABLEENTERO valor1;ENTERO valor2;CARÁCTER tecla;

FIN_VARIABLEINICIOREPETIRPantalla_amigos ();

REPETIRLEER (valor1);

16

Page 17: 58346120 Pseudocodigo Matrices

LEER (valor2);HASTA ((valor1 > 0) AND (valor2 > 0))SI (amigos(valor1,valor2) = 1) ENTONCES

ESCRIBIR (“Son amigos”);SINO

ESCRIBIR (“No son amigos”);FIN_SIREPETIR

ESCRIBIR (“¿Quieres seguir s/n?”);LEER (tecla);

HASTA ((teca = s) OR (tecla = n))HASTA (tecla = N)FIN_INICIO

FIN_PROCEDIMIENTOENTERO funcion amigos (entero v1, entero v2)

INICIOSI (suma_divisores (v1) = v2) AND (suma_divisores(v2) = v1) ENTONCES

Devuelve (1);SINO

Devuelve (0);FIN_SI

FIN_FUNCIONENTERO funcion suma_divisores (Entero valor)

VARIABLEENTERO indice;ENTERO suma;

FIN_VARIABLEINICIOSuma = 0;PARA indice = 1 HASTA (v1 – 1) INCREMENTO 1

SI (v1 mod divisor = 0) ENTONCESSuma = suma + indice;

FIN_SIFIN_PARA

Devolver (suma);FIN_FUNCIONPROCEDIMIENTO procedimiento_sociable ()

CONSTANTEENTERO c_i = 1;ENTERO c_s = 20;

FIN_CONSTANTEVARIABLE

ENTERO vector[c_i..c_s];ENTERO indice;

FIN_VARIABLEPantalla_sociablePARA indice = c_i HASTA c_s INCREMENTO 1

LEER (vector[indice]);FIN_PARASI ((sociable(vector, c_i, c_s)) = 1) ENTONCES

17

Page 18: 58346120 Pseudocodigo Matrices

ESCRIBIR (“Son sociables”);SINO

ESCRIBIR (“NO son sociables”);FIN_SIFIN_INICIO

FIN_PROCEDIMIENTOENTERO funcion sociables (Entero vector[], Entero c_i, Entero c_s)

VARIABLEENTERO indice;

FIN_VARIABLEINICIOIndice = 1;MIENTRAS (indice < c_i) AND (sociables(vector[indice], ventor[indice + 1]) = 1)

Indice = indice + 1;FIN_MIENTRASSI (indice = c_s) AND ((sociable[c_i], v[c_s]) = 1) ENTONCES

Devolver (1);SINO

Devolver (0);FIN_SIFIN_INICIO

FIN_FUNCIONENTERO funcion vector_producto (Entero vector[], c_i, c_s)

VARIABLEENTERO indice;ENTERO producto;

FIN_VARIABLEINICIOProducto = 1;PARA indice = c_i HASTA c_s INCREMENTO 1

Producto = producto * vector[indice];FIN_PARA

Devolver (productos);FIN_FUNCIONPROCEDIMIENTO vector_de_sumas

VARIABLEENTERO c_i;ENTERO c_s;ENTERO indice;ENTERO vector [c_i..c_s];

FIN_VARIABLEINICIOBorrar_pantalla ();Pantalla_inicial_vector_de_sumas ();Leer (c_i);Leer (c_s);PARA indice = c_i HASTA c_s INCREMENTO 1

LEER (vector[indice]);FIN_PARA

ESCRIBIR (“suma_vector(vector[], c_i, c_s);

18

Page 19: 58346120 Pseudocodigo Matrices

FIN_INICIOFIN_PROCEDIMIENTOENTERO funcion suma_vector (Entero vector[], c_i, c_s)

VARIABLEENTERO indice;ENTEOR suma;

FIN_VARIABLEINICIOSuma = 0;PARA indice = c_i HASTA c_s INCREMENTO 1

Suma = suma + vector[indice[;FIN_PARA

Devolver (suma);FIN_FUNCIONPROCEDIMIENTO bisiesto

VARIABLECARÁCTER año;

FIN_VARIABLEINICIOBorrar_pantalla ();Pantalla_inicial_bisiesto ();ESCRIBIR (“Dame un año”);LEER (año);SI (año =< 0) ENTONCES

ESCRIBIR (“El año no es bisiesto”);SINO

SI (año mod 400 = 0) ENTONCESESCRIBIR (“Es bisiesto”);

SINOSI (año mod 100 = 0) ENTONCES

ESCRIBIR (“No es bisiesto”);SINO

ESCRIBIR (“Es bisiesto”);FIN_SI

FIN_SIFIN_SIFIN_INICIO

FIN_PROCEDIMIENTOENTERO funcion Bisiesto(Entero año)

INICIOSI (año mod 4 <> 0) ENTONCES

Devolver (0);SINO SI (año mod 400 = 0) ENTONCES

Devolver (1);SINO SI (año mod 100 <> 0) ENTONCES

Devolver (1);SINO

Devolver (0);FIN_SI

FIN_FUNCION

19

Page 20: 58346120 Pseudocodigo Matrices

FIN_ALGORITMODefine una función que reciba un vector y devuelva el mayor de todos.

ENTERO funcion mayor_vector (Entero a[], Entero c_i, Entero c_s)VARIABLE

ENTERO indice;ENTERO mayor;

FIN_VARIABLEINICIOMayor = a[c_i];PARA indice = c_i HASTA c_s INCREMENTO 1

SI (a[indice] > mayor) ENTONCESMayor = a[indice];

FIN_SIFIN_PARA

Devolver (mayor);FIN_FUNCION

Define una función que recibiendo un vector y un entero devuelva la existencia o no de dicho entero en el vector.

ENTERO funcion numero_vector (Entero numero, Entero vector[], Entero c-i, c_s)VARIABLE

ENTERO indice;FIN_VARIABLEINICIOIndice = c_i;MIENTRAS (indice <= c_s) AND (vector(indice <> numero) HACER

Indice indice + 1;FIN_MIENTRASSI (indice = c_i + 1) ENTONCES

Devolver (0);SINO

Devolver (1);FIN_SI

FIN_FUNCION

Algoritmo que lea n enteros que indiquen el factorial de los primos.

ALGORITMO vector_de_factoriales_primosVARIABLE

ENTERO vector [c_i..c_s];ENTERO vector_factorial [c_i..c_s];ENTERO cota_superior;ENTERO cota_inferior;ENTERO indice;

FIN_VARIABLEINICIOBorrar_pantalla ();Pantalla:inicial ();

20

Page 21: 58346120 Pseudocodigo Matrices

Borrar_pantalla ();Leer_valores ();PARA indice = cota_inf HASTA cota_sup INCREMENTO 1

SI (numeros_primos(vector[indice]) = 1) ENTONCESVector_factorial[indice] = factorial_de_un _numero (vector[indice]);

FIN_SIESCRIBIR (vector_factorial[indice]);

FIN_PARAPantalla_inicial ();

FIN_INICIOENTERO funcion numero_primo (Entero numero)

VARIABLEENTERO numero;ENTERO indice;

FIN_VARIABLEINICIOIndice = 2;MIENTRAS (indice < numero) AND (numero mod indice <> 0) HACER

Indice = indice + 1;FIN_MIENTRASSI (indice = numero) ENTONCES

Devolver (1);SINO

Devolver (0);FIN_SI

FIN_FUNCIONFIN_ALGORTIMO

21

Page 22: 58346120 Pseudocodigo Matrices

Algoritmo que lea n enteros almacenados en un vector sus factoriales.

ALGORITMO factorialVARIABLE

ENTERO vector_entero[c_i..c_s];ENTERO vector_factorial[c_i..c_s];ENTERO cota_inferior;ENTERO cota_superior;

FIN_VARIABLEINICIOBorrar_pantalla ();Pantalla:inicial ();Borrar_pantalla ();Leer_valores ();PARA indice = cota_inf HASTA cota_sup INCREMENTO 1

Vector_factorial[indice] = factorial_de_un_numero(vector:etero[indice]);ESCRIBIR (vector_factorial[indice]);

FIN_PARAPantalla_final ();

FIN_INICIOPROCEDIMIENTO leer_valores ()

INICIOESCRIBIR (“introduce cotas”);LEER (cota_inf);LEER (cota_sup);ESCRIBIR (“Rellena el vector”);PARA indice = cota_inf HASTA cota_sup INCREMENTO 1

LEER (vector_entero [indice]);FIN_PARA

FIN_PROCEDIMIENTOENTERO funcion factorial_de_un _numero (numero)

VARIABLEENTERO factorial;ENTERO indice;

FIN_VARIABLEINICIOSI (numero < 0) ENTONCES

Devolver (-1);SINO

SI (numero = 1) ENTONCESDevolver (1);

SINOFactorial = 1;

FIN_SIPARA indice = 2 HASTA numero INCREMENTO 1

Factorial = factorial + indice;FIN_PARA

Devolver (factorial);FIN_SIFIN_INICIO

22

Page 23: 58346120 Pseudocodigo Matrices

FIN_FUNCIONFIN_ALGORITMO

Leer una secuencia y determinar la longitud de la palabra

ENTERO funcion palabra_mas_larga (secuencia parrafo)VARIABLE

ENTERO indice;ENTERO contador_palabra;ENTERO mayor_palabra;

FIN_VARIABLEINICIOIndice = 0;Contador_palabra = 0;Mayor_palabra = 0;MIENTRAS (parrafo[indice] <> “\o”) HACER

SI (parrafo[indice] <> “\o”) ENTONCESContador_palabra = contador_palabra + 1;

FIN_SISI (parrafo[indice] <> “\o”) AND (parrafo[indice + 1] = “ ” OR (parrafo[indice +

1] = “\o”) ENTONCESSI(contador_palabra > mayor_palabra) ENTONCES

Mayor_palabra = contador_palabra;FIN_SIContador_palabra = 0;

FIN_SIIndice = indice + 1;

FIN_MIENTRASDevolver (contador_palabra);

FIN_FUNCION Leer una secuencia y determinar la longitud de la misma.

VARIABLEENTERO indice;

FIN_VARIABLEINICIOIndice = \oMIENTRAS (texto[indice] <> “\o”) HACER

Indice = indice -1FIN_MIENTRAS

Devolver (indice);FIN_INICIO

Realizar una funcion que recibiendo una secuencia devuelva dicha secuencia en mayusculas.

ENTERO funcion touppercase_java (secuencia parrafo)VARIABLE

ENTERO indice;SECUENCIA resultado;

23

Page 24: 58346120 Pseudocodigo Matrices

FIN_VARIABLEINICIOIndice = 0;MIENTRAS (parrafo[indice] <> “\o”) HACER

SI (parrafo[indice] >= “a”) AND (parrafo[indice] <= “z”) ENTONCESParrafo[indice] = Entero_to_caracter(carácter_to_entero[indice] -32);

FIN_SIFIN_MIENTRAS

Devolver (parafo);FIN_INICIO

Definir una funcion recibiendo una secuencia cuyo fin sera el carácter “\o” que devuelva el entero que representa.

ENTERO funcion simula_autoi (secuencia texto)VARIABLE

CARÁCTER V_a[1.longitud(texto) + 1];ENTERO indice;ENTERO acumulador;ENTERO indice2;

FIN_VARIABLEINICIOIndice = 0;MIENTRAS (texto[indice] <> “\o”) AND (texto[indice] >= “\o”) AND (texto[indice] <= “9”)

V_a[indice + 1] = texto[indice];Indice = indice + 1;

FIN_MIENTRASV_a[indice] = “\o”;Acumulador = 0;PARA indice2 = 1 HASTA indice -1 INCREMENTO 1

Acumulador = acumulador + (carácter_to_entero (v_a[indice2]) – 45) * (10^(indice – indice2));

FIN_PARADevolver (acumulador);

FIN_FUNCION

Dada una secuencia mostrar por pantalla el numero de apariciones del codigo ascii.

PROCEDIMIENTO apariciones (secuencia texto)VARIABLE

ENTERO ascii[0..255];ENTERO indice;

FIN_VARIABLEINICIOPARA indice = 0 HASTA 255 NCREMENTO 1

Ascii[indice] = 0;FIN_PARAPARA indice = 0 HASTA longitud(texto) INCREMENTO 1

Ascii (carácter_to_entero(texto[indice])) = (ascii[carácter_to_entero(texto[indice])) +1FIN_PARA

24

Page 25: 58346120 Pseudocodigo Matrices

PARA indice = 0 HASTA 255 INCREMENTO 1ESCRIBIR (“EL codigo ascii”+indice”:”+ascii[indice]);

FIN_PARAFIN_PROCEDIMIENTO

25