sábado, 7 de marzo de 2009

2.- Pseudocodigos

EJERCICIOS DE PROGRAMACIÓN EN PSEUDOCÓDIGO

Representación de variables
Cuando representamos datos, numéricos o alfanuméricos, debemos darles un nombre. Una variable es un nombre que representa el valor de un dato. En esencia, una variable es una zona o posición de memoria en la computadora donde se almacena información. En un pseudocódigo y también en un programa se pueden crear tantas variables como queramos.



Ejemplos:
A = 50; Variable tipo numérica A cuyo valor es 50.
Ciudad = "Asunción"; Variable alfanumérica o de tipo carácter Ciudad, cuyo valor es "Asunción"
X = C + B; Variable numérica X cuyo valor es la suma de los valores de las variables numéricas C y B. (Nota: C y B deben tener algún valor).

Asignación
Para asignar un valor a una variable se utilizará el símbolo = que en este contexto significa “es reemplazado por”. De forma general tendremos que:
Nombre_variable = expresión
El valor de Nombre_variable se sustituye por el valor de expresión
Ejemplos:
C = 13
B = 25
X = C + B (después de estas instrucciones, X contendrá el valor 13 + 25 = 38)

Existe otra forma de asignar un valor a una variable, a través de la instrucción leer:
Leer (Nombre_variable)
Esta instrucción pide al usuario un valor que será asignado a la variable Nombre_variable, es decir, en Nombre_variable se almacena el valor ingresado por el usuario.

Operadores de relación
Los operadores relacionales se utilizan para formar expresiones que al ser evaluadas producen un valor de tipo lógico: verdadero o falso.

Estructuras de selección
El formato de la estructura de selección es:

si (condición) entonces
instrucción 1
instrucción 2
...................
instrucción n
si no
instrucción a
instrucción b
...................
instrucción z
fin si

El resultado de evaluar la condición puede ser verdadero o falso: en el caso de que sea verdadero, se ejecutarán: instrucción 1, instrucción 2, ... , instrucción n. Si el resultado de evaluar condición es falso se ejecutarán: instrucción a, instrucción b, ... , instrucción z.

Ejemplo:
Si A = 5 entonces
Imprimir("A es 5")
si no
imprimir("A no es igual a 5")
fin si

Estructuras de repetición
El formato de la estructura de repetición es:

mientras (condición)
instrucción 1instrucción 2.....instrucción n
fin mientras

El resultado de evaluar condición puede ser verdadero o falso:
Mientras sea verdadero, se ejecutarán: instrucción 1, instrucción 2, ... , instrucción n. Estas instrucciones dejarán de ejecutarse cuando condición sea falso.
Ejemplo:
leer(contraseña)
mientras (contraseña < > "joshua")
imprimir("La contraseña es incorrecta !")
leer (contraseña)
fin-mientras
imprimir("Ha tecleado la contraseña correcta")
Nota: El bucle se repetirá mientras que contraseña <> “joshua” sea verdadero

Salida de resultados
Los resultados de nuestros algoritmos los vamos a mostrar al usuario a través de la instrucción imprimir, que tiene la siguiente forma general:
Imprimir(argumento 1, argumento 2, argumento 3, ... , argumento n)
Donde los argumentos pueden ser cadenas de caracteres entrecomilladas o variables:
· Si son cadenas de caracteres entrecomillados se imprime literalmente lo que está entre comillas
· Si son variables se imprime el contenido de dicha variable (no el nombre)
Ejemplo:
sueldo = 1000
trabajador = “Martínez”
Imprimir( “el sueldo de “, trabajador , ” es “, sueldo , ” Euros.“ )
La instrucción imprimir, muestra lo siguiente: el sueldo de Martínez es 1000 Euros.


EJERCICIOS: PROPUESTOS

Ejercicio 1: Observa la siguiente secuencia de instrucciones:

1. A = 5
2. B = 7
3. C = 2
4. A = A + B + C
5. B = C / 2
6. A = A / B + A ^ C
7. Imprimir(A)

Ahora responde a las siguientes cuestiones:
a) ¿Qué valor contiene A después de la cuarta instrucción?
b) ¿Qué valor contiene B después de la quinta instrucción?
c) ¿Qué valor contiene A después de la sexta instrucción?
d) ¿Qué valor imprime la última instrucción?
e) Si en lugar de Imprimir(A) hubiésemos escrito Imprimir(“A”) ¿Qué aparecería?

Ejercicio 2: Observa la siguiente secuencia de instrucciones:

1. A = 5
2. B = 7
3. C = 1
4. D = (A == B)
5. E = (A <> B)
6. F = (MOD(B/A) >= C)

Ahora responde a las siguientes cuestiones:
a) ¿Qué valor contiene D después de la cuarta instrucción?
b) ¿Qué valor contiene E después de la quinta instrucción?
c) ¿Qué valor contiene F después de la sexta instrucción?
d) ¿Cuánto valen A, B y C después de la última instrucción?

Ejercicio 3: Observa la siguiente secuencia de instrucciones:

1. leer(A)
2. leer(B)
3. leer(C)
4. D = (A == B)
5. E = (A <> B)
6. F = (MOD(B/A) >= C)

Ahora responde a las siguientes cuestiones: Supongamos que el usuario introduce 3 en A, 4 en B y 5 en C

a) ¿Qué valor contiene D después de la cuarta instrucción?
b) ¿Qué valor contiene E después de la quinta instrucción?
c) ¿Qué valor contiene F después de la sexta instrucción?
d) ¿Cuánto valen A, B y C después de la última instrucción?

Ejercicio 4: Observa la siguiente secuencia de instrucciones:

1. leer (A)
2. resultado = 1
3. mientras (A>1)
4. resultado = resultado * A
5. A = A – 1
6. fin mientras
7. imprimir(resultado)

Ahora responde a las siguientes cuestiones:
a) Si en la primera instrucción se introduce un valor 2 en A ¿Qué valor se imprime?
b) Si en la primera instrucción se introduce un valor 3 en A ¿Qué valor se imprime?
c) Si en la primera instrucción se introduce un valor 4 en A ¿Qué valor se imprime?
d) ¿Qué se está calculando?

Ejercicio 5: Observa la siguiente secuencia de instrucciones:

1. leer (A)
2. Si (A>0)
3. Imprimir (A,’es positivo’)
4. Si no
5. Imprimir (A,’es negativo’)
6. Fin si

a) Describe, instrucción por instrucción, qué se está haciendo con este algoritmo.
b) ¿Qué pasa si A = 5? ¿Y si A = - 100?
c) Escribe otro algoritmo para distinguir múltiplos de 3 y compáralo

Ejercicio 6: Observa la siguiente secuencia de instrucciones:

1. leer (NumeroA)
2. leer (NumeroB)
3. Si (NumeroA < numeroa =" 5" numerob =" -" numeroa =" 10" numerob =" 100?" numeroa =" 10" numerob =" 10?

No hay comentarios:

Publicar un comentario