Pseint Condicionales Si, For, While
Pseint Condicionales Si, For, While
Pseint Condicionales Si, For, While
1.- Introducción
El programa utiliza pseudocódigo, un lenguaje de programación ficticio cuya principal misión es que el programador
pueda centrarse en los aspectos lógicos de la programación, dejando el apartado técnico para cuando se vea la sintaxis
de un lenguaje de programación verdadero. Además, es un entorno de desarrollo de programación o IDE (Integrated
Development Environment ). Los programas pueden escribirse en un simple editor de textos. Sin embargo, un IDE
ayuda a la programación: coloreando las palabras clave, mostrando las instrucciones clave cuando las tenemos a medio
escribir (Similar a cuando escribimos mensajes con el móvil), resaltando los errores, etc…
Podemos descargar PSEINT en la siguiente página:
http://pseint.sourceforge.net/ En PSeInt podemos elegir entre 2 perfiles:
En la asignatura funcionaremos en modo estricto porque, si bien es más complicado, facilitará el aprendizaje de
cualquier otro lenguaje real. Aunque PSeInt subraya con rojo los errores de sintaxis, también permite verificarlos
mediante Ejecutar/Verificar Sintaxis
Algunas de las normas comunes a otros lenguajes a seguir en el perfil estricto son:
Al igual que muchos lenguajes como C o Javascript, las sentencias siempre finalizan en punto y coma.
Los identificadores, o nombres de variables, deben constar sólo de letras, números y/o guión bajo (_),
comenzando siempre con una letra.No puede contener símbolos(@,#, ▼, [,],=, etc), ni eñes (ñ ó Ñ) y no puede
tener espacios en blancos. .
Los identificadores, o nombres de variables, no pueden coincidir con las palabras reservadas del lenguaje
(instrucciones).
Se pueden crear variables del mismo tipo en una solo línea separadas por comas
Definir n1,n2,suma Como Entero;
Se pueden introducir comentarios después del ; de una línea, o en una línea separadas, mediante el uso de la
doble barra ( // ). Todo lo que precede a //, hasta el fin de la línea, no será tomado en cuenta al interpretar el
algoritmo.
No puede haber instrucciones fuera del proceso (antes de PROCESO, o después de FINPROCESO), aunque sí
comentarios.
Las estructuras no secuenciales pueden anidarse. Es decir, pueden contener otras adentro, pero la estructura
contenida debe comenzar y finalizar dentro de la contenedora.
Conviene asignar un nombre al algoritmo, sustituyendo sin_titulo por un nombre que tenga relación con el programa.
El nombre del pseudocódigo en ninguna sintaxis puede tener espacios y en sintaxis estricta tampoco caracteres
acentuados.
No confundir el nombre del algoritmo con el del archivo que guardemos. Pueden ser distintos, aunque recomendamos
que coincidan para tenerlo mejor localizado.
Los textos van entre comillas, los números no. Podemos escribir un número entre comillas y será mostrado sin error, sin
embargo, el lenguaje lo reconocerá como un texto y no como un
número. Nota: Las comillas deben ser siempre simples y nunca
tipográficas.
Para comprobar este hecho, prueba a escribir el siguiente código.
En la línea dos, “2*6” es considerado texto y no realiza ninguna operación matemática, mientras que en la línea cuatro
sí. Recordar que en programación, el signo * sirve para multiplicar.
Si quisiéramos guardar el resultado para usarlo más adelante deberíamos utilizar otra nueva variable, amplía el
algoritmo para que el resultado se almacene en otra variable
Esta función es básica en programación. Lo que viene a decir es que si ocurre “algo” que haga “algo”. Un ejemplo.
Algoritmo ComparacionEdades
Definir EdadAlumno1 Como Entero;
Definir EdadAlumno2 Como Entero;
Escribir "Dime la edad del Alumno1";
Leer EdadAlumno1;
Escribir "Dime la edad del Alumno1";
Leer EdadAlumno2;
Si EdadAlumno1=EdadAlumno2 Entonces
Escribir "Ambos alumnos tienen la misma edad";
FinSi
Si EdadAlumno1>EdadAlumno2 Entonces
Escribir "El alumno1 es mayor que el alumno2";
FinSi
Si EdadAlumno1<EdadAlumno2 Entonces
Escribir "El alumno2 es mayor que el alumno1";
FinSi
FinAlgoritmo
El anterior programa es válido pero es bastante ineficiente, ya que obliga al programa a comprobar todas las
situaciones incluso aunque se cumpla la primera (edades iguales), Para mejorar el programa se utiliza la función Si…
Sino. Cuando se cumple una de las condiciones deja de comprobar todo lo demás.
Algoritmo ComparacionEdades
Definir EdadAlumno1 Como Entero;
Definir EdadAlumno2 Como Entero;
Escribir "Dime la edad del Alumno1";
Leer EdadAlumno1;
Escribir "Dime la edad del Alumno1";
Leer EdadAlumno2;
Si EdadAlumno1=EdadAlumno2 Entonces
Escribir "Ambos alumnos tienen la misma edad";
Sino
Si EdadAlumno1>EdadAlumno2 Entonces
Escribir "El alumno1 es mayor que el alumno2";
Sino
Si EdadAlumno1<EdadAlumno2 Entonces
Escribir "El alumno2 es mayor que el alumno1";
FinSi
FinSi
FinSi
FinAlgoritmo
Cuando queremos comprobaciones más complejas, podemos utilizar los operadores lógicos Y, O, NO. Veamos
el siguiente ejemplo:
Algoritmo Beca
Definir EdadAlumno Como Entero;
Escribir "Dime la edad del Alumno";
Leer EdadAlumno;
Si EdadAlumno>=18 Y EdadAlumno<=25 Entonces
Escribir "El alumno SÍ recibe beca";
Sino
Escribir "El alumno NO recibe beca";
FinSi
FinAlgoritmo
PSEINT ofrece una ayuda de las operaciones matemáticas que puede utilizar en el lateral izquierdo.
Si escribimos en PSEINT…
Ejemplo:
Escribir 17 MOD 5; //Mostrará en
pantalla 2
Ejemplo:
Escribir TRUNC(7.25);//Mostrará en
pantalla 7
Escribe el siguiente algoritmo para comprobar qué hacen las distintas funciones.
La siguiente instrucción permite que el programa realice unas instrucciones u otras en función del valor de una variable.
Los bucles sirven para que una secuencia de instrucciones se repita varias veces.
Concretamente, los bucles “Para” se utilizan para que un trozo de algoritmo se repita el número de veces que le
indiquemos.
Su utilización es:
Para <variable> <- <inicial> Hasta <final> Con Paso <paso> Hacer
<instrucciones>
FinPara
Si quiero hacer un programa completo que permita todas las posibilidades, debería escribir algo como lo siguiente:
Algoritmo CuentaIncremental
Definir num,intervalo,cuenta como Entero;
Escribir "¿Hasta qué número quieres llegar?";
Leer num;
Escribir "¿Cuál es el intervalo entre número y número?";
Leer intervalo;
Para cuenta<-1 Hasta num Con Paso intervalo Hacer
Escribir cuenta;
FinPara
FinAlgoritmo
Cuando simplemente quiero que algo se repita un determinado número de veces, por ejemplo repetir Hola 10 veces:
Sirve para que se ejecuten unas instrucciones cuando se cumpla una condición.
Condición
Con este tipo de estructura se ejecutará una vez todas las acciones, si se cumple la condición se saldrá del bloque si no
se volverán a repetir hasta que se cumpla la condición.
Algoritmo ListaNumero
Definir ultimo como entero;
Definir contador como entero;
contador<-0
Escribir "¿Hasta qué número cuento?";
Leer ultimo;
Repetir
Escribir contador Sin Saltar;
Escribir "-" Sin Saltar;
contador<-contador+1
Hasta Que ultimo=contador;
Escribir "Al fin acabé";
FinAlgoritmo