martes, 15 de julio de 2014

Declaracion de variables en pseudocodigo

Hola a todos, hoy les explicare la declaración de variables en pseudocodigo, como se debe hacer correctamente.
Declarar variables significa indicar el tipo de dato que almacenara las variables que participan en el programa.
Hasta ahora, no hemos declarado las variables, a partir de ahora acostumbraos a hacerlo si lo hacéis en papel, es bueno acostumbrarse para que cuando empecemos con otros lenguajes no nos cueste declarar las variables. En caso de hacerlo con PSeInt, no es necesario hacerlo, aunque se puede hacer con define.
Para declarar variables, lo único que debemos hacer es indicar el nombre de la variable y su tipo (numérico, lógico y cadena), antes del inicio del programa, separados por comas. Si veis otra forma de declarar variables, también es valida. Es normal si al principio, no sabemos todas las variables que pueden aparecer, con el tiempo lo identificaremos de una forma mas rápida y sencilla.
Lo importante de esto es reconocer que tipo de datos queremos que almacene una variable en concreto.
Por ejemplo:
1
2
3
4
5
6
7
8
9
10
Var contador: numérico , suma: númerico
Inicio
   contador<-1;
   suma<-0;
   Mientras contador<=5 Hacer
      suma<-suma+contador;
      contador<-contador+1;
   FinMientras
   Escribir suma
Fin
Si tenemos muchas variables del mismo tipo, podemos agupar las variables separandolas con comas. Por ejemplo:
1
2
3
4
5
6
7
8
9
10
Var contador, suma: númerico
Inicio
   contador<-1;
   suma<-0;
   Mientras contador<=5 Hacer
      suma<-suma+contador;
      contador<-contador+1;
   FinMientras
   Escribir suma

Asignacion en Pseudocodigo

Hola a todos, hoy les explicare una parte importante la asignación  donde veremos como se comportan las variables cuando asignamos valores en ellas.
La asignación es la operación que usamos para dar un valor a una variable.
Debemos tener en cuenta el tipo de variable cuando almacenamos un valor en una variable, en otros lenguajes son mas estrictos con este tema, pero en pseudocódigo solo debemos saber que no podemos mezclar distintos tipos de valores.
Por ejemplo, si tenemos una variable con un valor numérico y queremos volver asignarle un valor de otro tipo, una cadena de texto por ejemplo, nos daría un error porque no coincidirían los tipos. En cambio si ese valor fuera un valor numérico no daría ningún error.
Otra aspecto a tener en cuenta, es que la asignacion es una operacion destructiva, es decir, que si almacenamos un valor en la misma variable el valor que tenia antes desaparece. Veamos un ejemplo:
1
2
3
4
5
Inicio
   A<-5+1
   A<-2-1
   A<-A+7
Fin
Vayamos por pasos, la variable A al principio vale 6, después, A valdrá 1 y por ultimo valdrá 8. Como vemos al final prevalece el ultimo resultado, el valor 6 y 1 desaparecerían, siempre y cuando se almacene en la misma variable.
Por último, debemos saber que en una operación de asignación debemos empezar a leer en la parte de la derecha, que puede contener un valor o una expresión (una suma, varias operaciones, etc.). Es decir, que primero tenemos que ver el valor o expresión y ese valor final sera el se asigne a la variable.
Variable<-valor o expresión
Debéis saber, que cuando tenemos una expresión, como por ejemplo, 5+10/2, en pseudocódigo no se sigue la prioridad de la operación  es decir, que se suma 5+10 y se divide entre 2. Si queremos que una operación tenga mas prioridad debemos ponerla entre paréntesis, por ejemplo, 5+(10/2), realizara la operación del paréntesis antes de realizar la suma.
Para probar lo que hemos aprendido, os invito a realizar este ejercicio, pensarlo y mirar la solución para ver si coincide.
1
2
3
4
5
6
7
8
9
Inicio
   A <- 5
   B <- 7
   C <- 2
   A <- A + B + C
   B <- C / 2
   A <- A / B + A ^ C
   C <- A+(B-C)-B
Fin
a) ¿Qué valor contiene A después de la quinta linea?
b) ¿Qué valor contiene B después de la sexta linea?
c) ¿Qué valor contiene A después de la septima linea?
d) ¿Qué valor contiene C después de la octava linea?