obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

51
INTRODUCCIÓN A LA PROGRAMACIÓN

Transcript of obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Page 1: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

INTRODUCCIÓN A LA

PROGRAMACIÓN

Page 2: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

CONCEPTOS BÁSICOS EN LA SOLUCIÓN DE PROBLEMAS

obtener una

solución

aceptable al

problema

propuesto

Elaboración de un algoritmo

Page 3: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

REGLAS PASO A PASO PARA

REALIZAR SUMAS, RESTAS,

MULTIPLICACIONES Y DIVISIONES

ENTRE NÚMEROS DECIMALES. AL

TRADUCIR AL LATÍN EL APELLIDO

SE OBTUVO LA PALABRA

ALGORISMUS QUE

POSTERIORMENTE DERIVÓ EN

ALGORITMO

INVENTÓ UN MÉTODO PARA

ENCONTRAR EL MÁXIMO

COMÚN DIVISOR DE DOS

NÚMEROS – SON

CONSIDERADOS COMO LOS

PADRES DE LA CIENCIA DE

LOS ALGORITMOS O

ALGORITMIA.

MOHAMMED AL-KHOWÂRIZMÎ,

MATEMÁTICO PERSA QUE VIVIÓ

EN EL SIGLO IX

AL-KHOWÂRIZMÎ Y

EUCLIDES –EL GRAN

MATEMÁTICO GRIEGO

DEL SIGLO IV ANTES

DE CRISTO

Page 4: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

ALGORITMO

PASOS NO AMBIGUOS

SUCESIÓN FINITA

TIEMPO FINITO

Page 5: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

PSEUDOCÓDIGO

DIAGRAMAS DE FLUJO

ALGORITMO

FORMAS DE ESCRIBIR UN ALGORITMO

Palabras “clave”, que usan reglas muy sencillas que describen el algoritmo

Representación gráfica de un algoritmo

Fácil hacer cambios si nos equivocamos en la lógica del programa.

Es independiente del lenguaje de programación que vaya a usarse.

Fácilmente traducible a muchos lenguajes de programación.

Ventajas

Page 6: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

TIPOS DE ALGORITMO

Cualitativo

• Secuencia ordenada y

lógica de pasos que se

encuentran descritos

por medio de palabras

Cuantitativo

• Aquellas agrupaciones

lógicas y ordenadas de

pasos o instrucciones que

involucren cálculos

matemáticos.

ALGORITMO

Page 7: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

CARACTERISTICAS

Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.

Un algoritmo no debe poseer pasos ambiguos.

Un algoritmo debe poseer un número de pasos finito, es decir debe tener un inicio y un fin.

Un algoritmo debe entregar el mismo resultado sin importar el número de veces que sea ejecutado

Page 8: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

1. Sacar la bombilla vieja.

1.1 SI la bombilla está encendida, apagarla

1.2 Colocar una escalera

1.3 Subir por la escalera

1.4 Subir un escalón

1.5 Si se alcanza la bombilla, fin; y saltar al punto 1.7

1.6 caso contrario repetir el paso anterior 1.4

1.7 Desenroscar la bombilla vieja

2. Colocar la nueva bombilla

2.1 Enroscar la bombilla nueva

2.2 Bajar la escalera

2.3 retirar la escalera

3. Encender la bombilla

EJEMPLO DE UN ANALISIS DE ALGORITMO CUALITATIVO

Page 9: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

EJEMPLO DE UN ANALISIS DE ALGORITMO CUANTITATIVO

{ algoritmo para la conversión de kilos a libras }

var

Peso_libras, peso_kilos: real;

Inicio

Leer (peso_kilos);

Peso_libras (2.2) * peso_kilos;

Escribir (Peso_libras);

Fin;

Libras = (cantidad de kilos) x 2.2

Page 10: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

ACTIVIDAD INDIVIDUAL No 2

1.- ¿Te acuerdas del algoritmo para ver la TV?. Eso es un algoritmo cualitativo, escríbelo paso a paso

2.- Escribe el algoritmo para llegar a clase presencial de un módulo, iniciando desde el momento de despertarse.

3.- Presente los pasos que debe realizar en la UED para matricularse por primera vez.

Page 11: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

EJEMPLO.

Suponga que un familiar suyo estuvo de viaje, visitó Japón, y

le trajo de presente un robot, que solamente atiende dos

tipos de ordenes:

avanzar X centímetros, girar X grados.

Una secuencia de ellas es posible dárselas al robot, para que

recorra un camino determinado. Si queremos indicarle al

robot (la carita feliz de color turquesa) se desplace hasta

donde está el objetivo debemos de algún modo ”decirle” lo

que debe hacer, si suponemos que cada rectángulo de la

cuadricula tiene diez centímetros de lado, las ordenes le

daríamos a nuestro alegre amigo para alcanzar el objetivo

podrían ser algo como:

Page 12: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.
Page 13: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

1 avanzar 70cm.

2 girar 90 grados a la izquierda.

3 avanzar 250cm.

4 girar 90 grados a la izquierda.

5 avanzar 80 cm.

Page 14: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

TIPOS DE DATOS

Un dato es la expresión general que describe los objetos con los cuales opera un computador

•Simples (sin estructura) y •compuestos (estructurados).

Page 15: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

TIPOS DE DATOS NUMERICOS

ENTEROS

Números completos que no poseen una parte decimal y pueden ser positivos o negativos. Suelen denominarse también números de punto fijo.

5, 6, -15, 13456, 8755, - 12122

REALES

Números que poseen una parte fraccionaria y pueden ser positivos o negativos. Valor sobrepasa el rango del tipo de dato entero.Números reales de tipo decimal, números reales de punto flotante.

- 8.12, 45666, 3.0, -78963 0.00084.565296 x 1020 4.565296 E + 19

Page 16: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El tipo de dato caracter representa un conjunto finito de caracteres que la computadora reconoce gracias a que cada elemento del conjunto tiene una equivalencia en código ASCII desde el 0 hasta el 255.

(American Standard Code for Information Interchange) es un código internacional de 8 bits que permite que el computador interprete letras, dígitos, signos de puntuación u otros símbolos que se le proporcionen. Puede definir hasta 256 símbolos.

•Los dígitos del 0 al 9•Los caracteres alfabéticos de la a-A a la z-Z.•Gran variedad de caracteres especiales como +, * , /, $, @, &.

TIPOS DE DATO CARACTER

La cadena de caracteres o String, es una sucesión ordenada de datos de tipo de caracter delimitados por una comilla simple o apóstrofe tanto al inicio como al final de la sucesión.

Para conocer cual es la longitud de una cadena de caracteres, basta con contar el número de caracteres existentes entre los limitadores.

Algunos ejemplos de cadenas de caracteres son: ´Hola Mundo´, ´09558348´, ´17 de agosto de 1973´.

Page 17: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El tipo de dato lógico, también conocido como tipo de dato booleano representa el conjunto formado por dos posibles valores: Verdadero o Falso.

El tipo de dato lógico es muy útil cuando se evalúan condiciones dentro de un algoritmo o dentro de un programa.

Por proceder de la lógica booleana o aristotélica.

TIPOS DE DATOS LOGICO

(3>2)= 1 = verdadero

(7>9)= 0 = falso

Page 18: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El tipo de dato apuntador consiste en una representación abstracta de lo que se conoce como direcciones de memoria de un computador.

Es importante señalar que no es realmente una dirección física de memoria, sino que al contrario simplemente señala o apunta hacia una dirección en la memoria del computador.

El tipo de dato apuntador es muy útil en la creación y procesamiento con estructuras de datos de tipo dinámico.

Se le denomina así a las estructuras de datos que van asignándose memoria de manera automática conforme lo necesitan en el transcurso de la ejecución de un programa.

TIPOS DE DATOS APUNTADOR

px = &x; //Al apuntador px se le asignó la dirección de la variable xpc = &c; //Al apuntador pc se le asignó la dirección de la variable c

Page 19: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Variable es un objeto cuyo valor puede o no cambiar durante el desarrollo de un algoritmo, o ejecución de un programa.

Toda variable declarada en un programa de computador ocupará para sus posibles valores una porción de memoria que deberá ser asignada de manera explícita el momento de su definición.

Luego de realizada la asignación de memoria el programador puede estar seguro de que ninguna otra variable ocupará el mismo, ya sea que pertenezca o no al mismo programa.

VARIABLE

Page 20: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Toda variable utilizada en un algoritmo o en un programa de computación se compone de tres partes esenciales:

•Nombre

•Tipo

•Valor

COMPONENTES DE UNA VARIABLE

Page 21: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El nombre de una variable, también conocido como identificador, es el conjunto de caracteres permitidos, letras y números, con los cuales se denomina a una variable dentro de un algoritmo o de un programa.

debe cumplir con las siguientes reglas:

•Debe comenzar con una letra

•Puede contener letras, números o el caracter subrayado ( _ )

•No debe coincidir con el nombre de alguna palabra clave del lenguaje de programación utilizado.

•La máxima longitud de un nombre depende del compilador[1] que utilice la herramienta de programación que esté siendo utilizada, por ejemplo en algunas versiones de PASCAL el límite es de 80 caracteres, en C no tiene un número máximo sin embargo solo son significativos para ciertas versiones de compiladores los primeros 31 caracteres, etc.

•Es preferible utilizar nombres más descriptivos, con el fin de que el lector del programa o del pseudocódigo identifique claramente el propósito de una variable.

NOMBRE DE UNA VARIABLE

Page 22: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Nombres correctos de variables son:

contador,prueba23, BALANCE_TOTAL, num2, cosas_del_tiempo.

nombres incorrectos de variables son:

1contador, Prueba23$, BALANCE...TOTAL, personal de escuela, 234, J/85.

EJEMPLOS DE VARIABLE

Page 23: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El tipo de una variable permite describir el uso que se le dará a la misma dentro de un algoritmo o de un programa.

Dependiendo del lenguaje de programación en el cual se implementará el algoritmo, existen diferentes tipos de variables tales como enteras, flotantes o reales, de caracter, lógicas o booleanas, de cadena.

Es importante anotar que tanto en los lenguajes de programación como en el pseudocódigo se deben considerar las siguientes reglas sobre el tipo de una variable:

•Si se intenta asignar un valor de un tipo a una variable de otro tipo se producirá un error de tipo.

•Cuando las variables son utilizadas en expresiones deben ser todas del mismo tipo[1]

A manera de ayuda en el cumplimiento de esta regla se pueden combinar variables de distintos tipos siempre y cuando se incluya una operación de “casting” o conversión entre tipos. Esta operación se tratará con detalle más adelante.

EL TIPO DE UNA VARIABLE

Page 24: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El valor de una variable es el contenido que tiene asociado en un determinado momento de la ejecución de un programa o desarrollo de un algoritmo. El valor de una variable depende del tipo de la misma, así por ejemplo una variable de un tipo entero podrá almacenar solo valores enteros mientras que una variable de tipo booleano podrá almacenar los valores VERDADERO o FALSO.

EL VALOR DE UNA VARIABLE

Page 25: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Las variables se suelen declarar al principio del programa, y esta será la norma que vamos a usar; toda variable utilizada, debe haber sido previamente declarada. Para ello, escribiremos algo como esto: i,j,k; ENTERO; x,y,z: REAL; a,b,c: CARACTER; Esto querrá decir que las variables i, j, k serán enteras (con signo), que las variables x, y, z serán reales (con signo) y que las variables a, b, c serán caracteres.

Al escribir la declaración de variables de esta forma, si alguna se nos ha olvidado, es muy fácil incluirla.

DECLARACIONES DE VARIABLES

Page 26: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Una variable, en el momento que la declaramos, está vacía, hueca, sin vida, sentido ni VALOR. Y hasta que dicha variable no tenga valor, lo mejor será no hacer cosas con ella. Entonces, aquí viene la pregunta: ¿y cómo asigno en mi variable un 7? ¿Puedo asignar un 23?  Para poder asignar cosas en las variables, lo que hacemos es asignarles un valor, es decir, "Pepe es una variable de tipo entero. Si a Pepe le asigno 14, a partir de ahora, poner Pepe es tanto como poner 14".

Para ello, nosotros vamos a usar un símbolo, una flechita hacia la izquierda. Cuando queramos hacer asignaciones, haremos esto:

¿COMO PONGO VALORES A LAS VARIABLES

Pepe 14 (asignamos un entero)

Carolina -9.65 (asignamos un real)

Juan 'a' (asignamos un caracter)

Page 27: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Se denomina constante a todo valor que no debe cambiar durante el desarrollo de un algoritmo o durante la ejecución de un programa. Al igual que las variables, las constantes también poseen una estructura, la misma que está compuesta por un identificador (nombre de la constante) y un valor (contenido de la constante). En lo que se refiere al tipo de dato que maneja una constante se debe decir que es implícito y tiene correspondencia directa con el valor que se le asigna el momento de la declaración. Respecto a las reglas que se aplican a los identificadores de las variables, tienen la misma validez para el caso de las constantes.

CONSTANTE

Page 28: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Una expresión aritmética es una agrupación válida de operandos (variables y/o constantes) que se encuentran relacionados entre sí por medio de operadores aritméticos.

Cada operador aritmético tiene correspondencia directa con una operación aritmética, así por ejemplo operadores de suma, resta, exponenciación.

Las variables y constantes que constituyen los operandos de una expresión, deben ser del mismo tipo de dato, o por lo menos de tipos de datos compatibles entre los cuales puede haber una conversión de tipos. El valor que toma una expresión se suele denominar resultado de la expresión y su tipo de dato depende del tipo que tengan los operandos. A continuación se listan los operadores aritméticos disponibles así como los tipos de datos de sus operandos resultado.También llamada “casting”, es la conversión de enteros a reales y de reales a enteros, esta operación depende de la versión del compilador con el que se trabaje.

EXPRESIONES ARITMÉTICAS

Page 29: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Operador Operación Tipos de Operandos Tipo de Resultado

^,* * Exponenciación Entero o Real Entero o Real

+ Suma Entero o Real Entero o Real

- Resta Entero o Real Entero o Real

* Multiplicación Entero o Real Entero o Real

/ División Real Real

Div División entera Entero Entero

Mod Módulo (resto o

residuo de la

división)

Entero Entero

Page 30: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Si la expresión aritmética contiene más de un operador, el computador debe identificar que operación debe realizar primero. Las reglas que permiten realizar esta identificación se denominan reglas de precedencia y son las siguientes: Las operaciones que están encerradas entre paréntesis se evaluarán primero. Si existen paréntesis anidados estos se resolverán de adentro hacia fuera.

Ante la ausencia de paréntesis el orden en el que deberán ejecutarse las operaciones es el siguiente:

Exponenciaciones Multiplicaciones y Divisiones, Divisiones enteras (div) y Resto (mod)Sumas y Restas

Si existen operadores con la misma prioridad, estos deben evaluarse de izquierda a derecha

PRECEDENCIA DE OPERADORES

Page 31: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

3 + 6 * 14 Primero se ejecuta la multiplicación entre 6 y 14, obteniéndose la expresión 3 + 84 que se suman resultando 87. 

– 4 * 7 + 2 ^ 3 / 4 – 5 + 2 Primero se efectúa la exponenciación entre 2 y 3, obteniéndose la expresión: – 4 * 7 + 8 / 4 – 5 + 2.Luego se realiza la multiplicación entre – 4 y 7, obteniéndose la expresión: – 28 + 8 / 4 – 5 + 2Luego se realiza la división entre 8 y 4, obteniéndose la expresión: – 28 + 2 – 5 + 2Luego se efectúa la suma entre – 28 y 2, obteniéndose la expresión: -26 – 5 + 2Luego se realiza la resta entre – 26 y -5, obteniéndose la expresión: – 31 + 2Finalmente se realiza la suma entre – 31 y 2, obteniéndose –29

EJEMPLO DE EXPRESIONES ARITMÉTICAS Y SU EVALUACION

Page 32: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Una expresión relacional es una agrupación válida de variables lógicas y/o constantes lógicas que se encuentran relacionados entre si por medio de operadores lógicos y operadores relacionales. Una expresión lógica siempre será evaluada a Verdadera o Falsa.

EXPRESIONES RELACIONALES (LÓGICAS O BOOLEANAS)

OPERADOR LÓGICO OPERADOR LÓGICO OPERADOR LÓGICO

not, Negación not, pp

And, ^ Conjunción

(interacción)

p and q, p^q

o, v Disyunción (unión) p or q, p v q

OPERADORES LÓGICOS

Los operadores lógicos básicos se resumen en el siguiente cuadro:

Las definiciones de las operaciones lógicas y sus respectivos operadores se resumen en una tabla de valores denominadas tablas de verdad.

Page 33: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Operador Relacional Significado Operador de Complemento

> Mayor que <=

< Menor que >=

= Igual que !=,<>

!=, <> Diferente que =

>= Mayor o igual que <

<= Menor o igual que >

Los operadores relacionales son aquellos que permiten representar las condiciones a considerar dentro del desarrollo de un algoritmo o en la ejecución de un programa. Entre ellos se tiene a los siguientes:

Todos los operadores relacionales tienen la misma prioridad, así que se los evalúa siempre de izquierda a derecha, excepto cuando se agrupan con paréntesis, en cuyo caso se resolverían primero las expresiones internas antes que las externas.

OPERADORES RELACIONALES

Page 34: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

(1>0) and (3=3) Primero se evalúa la expresión 1 > 0, obteniéndose la expresión Verdadero and (3=3) Luego se evalúa la expresión 3=3, obteniéndose la expresión Verdadero and Verdadero

Finalmente se evalúa la expresión Verdadero and Verdadero, obteniéndose como resultado Verdadero.

OPERADORES RELACIONALES

Page 35: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Son estructuras a través de las cuales se le asigna un valor (constante o variable) o el resultado de una operación (expresión) a una variable. En pseudocódigo la asignación se suele representar con el símbolo u operador . La operación de asignación dentro de los lenguajes de programación es conocida como “instrucción o sentencia de asignación”. Las estructuras o enunciados de asignación son de gran utilidad cuando se desea definir el valor que tomará una constante o cuando deseamos establecer el valor de una variable. La estructura de asignación tiene el siguiente formato:Variable de destino expresión  Esto significa que a la variable se le puede asignar valores provenientes de la evaluación de una expresión. 

ESTRUCTURA DE ASIGNACIÓN

Page 36: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

dias_semana 7

respuesta temp_fahrenheit

kilos 2.2* libras

temp_fahrenheit (9/5) * temp_celcius + 32

 

Como se observa, la expresión puede tener solo números (expresiones matemáticas) , o solo variables, o una combinación de todo.

EJEMPLO

Page 37: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Se trata de una asignación aritmética cuando la variable de destino de la parte izquierda de la estructura es de tipo numérico y se cumple con una de las siguientes tres condiciones:

• La expresión de la parte derecha de la asignación tiene un resultado de tipo numérico.

• La variable origen de la parte derecha de la asignación es tipo numérico.

• La constante de la parte derecha de la asignación es de tipo numérico.

ASIGNACIÓN ARITMÉTICA

Page 38: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Se trata de una asignación lógica cuando la variable de destino de la parte izquierda de la estructura es de tipo lógico y se cumple con una de las siguientes tres condiciones:

• La expresión de la parte derecha de la asignación tiene un resultado de tipo lógico.

• La variable origen de la parte derecha de la asignación es de tipo lógica.

• La constante de la parte derecha de la asignación es de tipo lógica. 

ASIGNACIÓN LÓGICA

Page 39: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Se trata de una asignación de caracteres cuando la variable de destino de la parte izquierda de la estructura es de tipo caracter y se cumple con una de las siguientes tres condiciones:

•La expresión de la parte derecha de la asignación tiene un resultado de tipo caracter.

•La variable origen de la parte derecha de la asignación es de tipo carácter.

•La constante de la parte derecha de la asignación es de tipo caracter.

ASIGNACIÓN DE CARACTER

Page 40: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Los operadores que se utilizan para efectuar operaciones de tipo complejo tales como: raíz cuadrada, valor absoluto, redondeo, etc., se denominan funciones internas, estándar o incorporadas y pueden recibir como argumentos expresiones, variables o constantes de tipo real o entero.

Se denomina argumento al valor que se le pasa a una función con el fin de que dicha función pueda cumplir con su objetivo.

FUNCIONES INTERNAS, INCORPORADAS O ESTÁNDAR

FUNCION DESCRIPCIÓN TIPO DE DATO DEL

ARGUMENTO (X)

TIPO DE DATO DEL

RESULTADO

abs (x) Valor absoluto de x Entero o real Entero o real

arctan (x) Arco tangente de x Entero o real Real

cos (x) Coseno de x Entero o real Real

exp (x) Exponencial de x Entero o real Real

ln (x) Logaritmo natural de x Entero o real Real

log (x) Logaritmo en base 10 de x Entero o real Real

round (x) Redondeo de x Real Entero

sen (x) Seno de x Entero o real Real

sqr (x) Cuadrado de x Entero o real Real

sqrt (x) Raíz cuadrada de x Entero o real Real

tan (x) Tangente de x Entero o real Real

tochar (x) Convierte x a caracter Entero Caracter

trunc (x) Truncar la parte decimal de x Real l Entero

Page 41: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

EJEMPLO RESULTADO

abs (-3) 3

arctan (12.34) 85.36703

cos (0.7854) 0.999906049

exp (3.1) 22.197913

ln (20) 2.9957323

log (15) 1.176091259

round (3.75) 4

sen (0.5236) 0.0091384

sqr (6.2) 38.44

sqrt (15.4) 3.9242834

tan (15) 0.267949

tochar (66) ´B´

trunc (6.56) 6

Page 42: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Un programa de computación es un conjunto de instrucciones que le indica al computador como llevar a cabo una determinada tarea. Sin importar qué lenguaje de programación se esté utilizando, un programa tiene ciertas secciones o partes. 1. Un programa en Pseudocódigo posee las siguientes partes:  2. Sección de Cabecera o Encabezado, donde se puede colocar un

comentario opcional sobre el propósito del algoritmo. 3. Sección Declarativa, donde se declaran las variables y constantes

que intervendrán en el algoritmo.

 Sección Ejecutable, donde se expresa la lógica del algoritmo por medio de sentencias que serán ejecutadas de acuerdo a las estructuras de control propias del pseudocódigo.

ESTRUCTURA DE UN PROGRAMA PSEUDOCÓDIGO

Page 43: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.
Page 44: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Si un algoritmo utiliza dentro de su desarrollo algunas variables, estas deben ser declaradas antes de poder ser referenciadas. La declaración de variables en un bloque de pseudocódigo, comienza con la palabra reservada var a continuación de la cual se coloca la lista de variables a utilizarse en el algoritmo con el siguiente formato: uno o más identificadores de variables, un espacio en blanco (opcional), el signo de dos puntos (:), el tipo de dato de la variable o variables, un espacio en blanco y el signo de punto y coma (;) que indica el fin de una línea; así por ejemplo:.

DECLARACIÓN DE VARIABLES EN PSEUDOCÓDIGO

Programa SUMA;

var

contador, numero, sumatoria: Entero;

raiz : real;

carácter : Char;

Page 45: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Para que un algoritmo pueda utilizar una constante dentro de su desarrollo, ésta debe ser definida con anterioridad en la sección de declaraciones del pseudocódigo. La declaración de constantes en un bloque de pseudocódigo comienza con la palabra reservada const a continuación de la cual se coloca la lista de constantes a ser referenciadas en el algoritmo con el siguiente formato: el identificador de la constante, un espacio en blanco (opcional), el signo igual (=), un espacio en blanco (opcional), el valor de la constante y el signo de punto y coma (;) que indica el fin de una línea, así por ejemplo:

DECLARACIÓN DE CONSTANTES EN PSEUDOCÓDIGO

const

dias_semana =7;

horas_dia = 24;

msg_inicial = ‘Hola Mundo’;

Page 46: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Para que un algoritmo pueda utilizar una constante dentro de su desarrollo, ésta debe ser definida con anterioridad en la sección de declaraciones del pseudocódigo. La declaración de constantes en un bloque de pseudocódigo comienza con la palabra reservada const a continuación de la cual se coloca la lista de constantes a ser referenciadas en el algoritmo con el siguiente formato: el identificador de la constante, un espacio en blanco (opcional), el signo igual (=), un espacio en blanco (opcional), el valor de la constante y el signo de punto y coma (;) que indica el fin de una línea, así por ejemplo:

DECLARACIÓN DE VARIABLES EN PSEUDOCÓDIGO

const

dias_semana =7;

horas_dia = 24;

msg_inicial = ‘Hola Mundo’;

Page 47: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

En todo lenguaje de programación es importante contar con alguna regla para poder insertar líneas de comentario dentro del código fuente de un programa. Poner comentarios de lo que vamos haciendo es muy útil, sobre todo cuando llega la hora de revisar el algoritmo, si no, más de una vez nos encontraremos diciendo "uumm... ¿qué cosa hacía esto?"  No cuesta nada documentar el código y nos ahorrará dolores de cabeza.

Los comentarios permiten aclarar el propósito de la utilización de una instrucción determinada, así como también pueden servir para aclarar la lógica de solución que se siguió en la confección del programa. Todo esto es importante para hacer que nuestros programas sean más entendibles y sobre todo para poder dar mantenimiento a un programa sin tener que preocuparse por recordar o no la lógica del mismo. La convención que seguiremos será poner los comentarios entre llaves. Así, por ejemplo {esto será un comentario}

COMENTARIOS EN PSEUDOCÓDIGO

Page 48: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

En la mayoría de las ocasiones, los programas necesitan para su ejecución, de valores que deben ser proporcionados por el usuario a través del teclado. Por lo tanto, considerando que un programa tiene su origen en un algoritmo debe existir una estructura en pseudocódigo que permita representar esa introducción de datos por medio del teclado.

Dicha estructura se denomina estructura de lectura y permite representar el ingreso por teclado de los valores requeridos por el algoritmo, asignándolos inmediatamente a variables de entrada. La estructura de lectura de datos tiene el siguiente formato: Leer (variables de entrada)

ESTRUCTURA DE LECTURA DE DATOS

Variables de Entrada

Page 49: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Algunos lineamientos para la construcción de estructuras de lectura de datos son: Se puede utilizar una estructura de lectura para representar el ingreso de valores para más de una variable de entrada, siempre y cuando sean del mismo tipo. De todas maneras se aconseja utilizar una estructura de lectura por cada variable de entrada con el fin de dar mayor claridad al código. Si se va a utilizar una sola estructura de lectura para más de una variable de entrada, los identificadores de las mismas se separarán por comas. Todas las variables de entrada que sean referenciadas por una estructura de lectura deberán hacer sido declaradas con anticipación. Considerando las siguientes declaraciones:

var

a, b, c: Entero;

x, y : Real

Inicio

Leer (a);

Leer (b);

Leer (c);

Leer (x, y);

Fin

Page 50: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

El objetivo fundamental de un programa, y por ende de un algoritmo, es el de entregar al usuario la solución a un programa planteado. Dicha solución en la mayoría de los casos está formada por una serie de información que debe ser desplegada en la pantalla del computador. De esta manera similar a las operaciones de lectura de datos, las operaciones de salida de resultados también poseen una estructura en pseudocódigo que permite representar el despliegue en la pantalla de la información que se obtendrá en el desarrollo de un algoritmo, dicha estructura se denomina estructura de salida de resultados y tiene el siguiente formato:

ESTRUCTURA DE LECTURA DE DATOS

Escribir (variables y/o constantes de salida);

EscribirySaltar((variables y/o constantes de salida);

Variables y/o Constantes de salida

El diagrama de flujo de la estructura de salida es:

Page 51: obtener una solución aceptable al problema propuesto Elaboración de un algoritmo.

Algunos lineamientos para la construcción de estructuras de salida de resultados son: Se puede utilizar una sola estructura de salida de resultados para desplegar en pantalla los valores de las variables o constantes sin importar el tipo de dato de las mismas. Si se va utilizar más de una variable y/o constante de salida, los identificadores de las mismas deberán separarse por comas.Es muy común anteponer al valor de salida de una variable una constante formada por una cadena de caracteres que contengan un texto explicativo que permite dar una mayor claridad al momento del despliegue de los resultados en pantalla.

Escribir (temp_Fahrenheit)

Escribir (sumatoria)

Escribir(‘viva la vida’)

Escribir (‘La suma de los 10 primeros números pares es’, suma_pares)

Escribir (‘El factorial del número’, numero,’es’, factorial)