Fundamentos de programación

Yhoan Galeano
Web Developer
Algoritmos
Es una secuencia finita ‘bien definida’ de tareas ‘bien definidas’, que permite visualizar la solución a un problema determinado en un momento específico.
Deben ser:
- Finito
- Concreto
- Legible
- Eficiente
- No ambiguo
- Preciso
- Definido
Estructura
Entrada(s)
Salida(s)
Procesos
Dentro del proceso...
Preposiciones declarativas
Sentencias Operacionales
Sentencias estructurales
Variables y constantes
Operaciones entre variables
Flujo del programa
Diagramas de flujo
Representa gráficamente estructuras y operaciones del algoritmo mediante una simbología estándar.

Inicio

Entrada

Decisión

Proceso

Salida

Fin


Subrutinas o funciones


Code cooking

Pseudocódigo

Representa el algoritmo en un lenguaje estructurado y entendible.
Estructura
Entrada:
real: celsius, kelvin
Inicio
leer(celsius)
kelvin <- celsius + 273.15
escribir(kelvin)
Fin
Se definen las entradas y su tipo
Se debe establecer un inicio
Cada instrucción debe empezar con un verbo
Cada asignación se hace con <-
Fin del proceso
Se debe mantener una
identación o sangría sobre
el margen izquierdo
Tipos de datos
- Entero (-4, -3, 2, 1, 0..)
- Carácter ("a", "f", "b"..)
- Cadena ( "Homero")
- Lógico (verdadero, falso)
- Real (4.5, 2, -3.7, 2/2..)
Datos
Variables
- Representa un espacio en memoria en el que se puede almacenar un dato.
- No debe coincidir con palabras reservadas según el lenguaje de programación.
- Deberá iniciar siempre por un carácter alfabético
- No pueden contener espacios en blanco
Estructura de una variable
[tipo de dato] nombreDeLaVariable = valor
real kelvin = 273.15
ejemplo
real: celsius
Declaración
leer(celsius)
Lectura
kelvin <- celsius + 273.15
Asignación
escribir(celsius)
Escritura
Condicionales
si edad >= 18 entonces
Simple
finsi
escribir("Es mayor de edad")
si edad >= 18 entonces
Doble
finsi
escribir("Es mayor de edad")
sino
escribir("NO es mayor de edad")
Ciclos
mientras monedas > 0 hacer
Mientras que, hacer
finmientras
jugar_maquinitas()
para contador = 0 hasta 5 incremento 1 hacer
Para, hacer
finpara
escribir(contador)
funciones
funcion resultado<-sumar (n1,n2)
finfuncion
resultado <- n1 + n2
Fundamentos de programación - Clase 2
By Yhoan Andres Galeano Urrea
Fundamentos de programación - Clase 2
- 682