Clase02 T Algoritmo v2
Clase02 T Algoritmo v2
Clase02 T Algoritmo v2
Fundamentos de Informática
[email protected]
Tlf 942818949
1
Metodologías de Programación
2
Caracteristicas
3
Algoritmo
4
Herramientas usadas para el Diseño
5
Herramientas usadas para el Diseño
6
Herramientas usadas para el Diseño
7
Ejemplo 1
8
Ejemplo 2
9
Codificación
10
Codificación
11
Codificación
12
Programación Modular
14
Programación Estructurada
16
Algoritmo
Concepto de algoritmo:
Sucesión explícita de reglas para resolver correctamente un problema
genérico bien definido en un número finito de pasos.
17
Algoritmo
Concepto de algoritmo:
Sucesión explícita de reglas para resolver correctamente un problema
genérico bien definido en un número finito de pasos.
18
Representación Gráfica de los Algoritmos
19
Pseudocódigo
20
Pseudocódigo
21
Estructura de un algoritmo:
algoritmo nombre
constantes (→ valores fijos)
datos tipos (→ nuevos dominios de datos)
variables (→ datos)
cuerpo (→ instrucciones)
falgoritmo
acciones y funciones auxiliares
22
Diagrama de Flujo
23
Diagrama de Flujo
24
Diagrama de Flujo
25
Diagramas de Nassi-Schneiderman (N-S)
26
Diagramas de Nassi-Schneiderman (N-S)
27
Programa
28
PARTES CONSTITUTIVAS DE UN PROGRAMA
29
INSTRUCCIONES Y TIPOS DE INSTRUCCIONES
30
TIPOS DE INSTRUCCIONES
31
TIPOS DE INSTRUCCIONES
32
DATOS, TIPOS DE DATOS Y OPERACIONES PRIMITIVAS
Tipo de Datos:
Conjunto específico de valores de los datos y
un conjunto de operaciones que actúan sobre
esos datos.
33
• Simple:
Son de un entero, real, booleano,
tipo carácter
[dominio + operaciones]
• Compuesto:
tupla, tabla
[constructores + funciones de
acceso]
Tienen un nombre
(identificador)
Datos
Los datos se deben declarar con todos estos atributos (excepto los literales).
Un dato contiene siempre un valor de su tipo.
34
Comunicarse con el exterior
[lectura y escritura]
Instrucciones • Secuenciación
Controlar el orden de
• Condicional
ejecución
• Iteración
35
1.2.- Variables
Definición: una variable es un dato cuyo valor puede cambiar durante la ejecución
de un algoritmo.
Para asignar un valor a una variable se utiliza el operador de asignación “:=”.
Ejemplos: x := 3.0; y := x + 2.1; y := 3*x + 2; ... [x, y son variables]
36
1.3.- Constantes
Ejemplo:
Algoritmo NombreAlgoritmo
const Pi: real = 3.1415926535897932385 fconst
var x, y: real fvar
...
x := Pi*Pi;
y := 3*Pi;
...
falgoritmo
37
CONVERSIONES DE VARIABLES
Si n es entera, x es real y realizamos la asignación n:=x, la variable n toma
como valor la parte entera de x.
algoritmo
var x: real; n: entero; c: carácter fvar
...
x := 65.2 [x <- 65.2]
n := DeRealAEntero(x) [n <- 65]
c := DeEnteroACarácter(n) [c <- “carácter correspondien-
te al número 65 en el código
de ASCII, esto es, la
letra mayúscula ‘A’.”]
...
Falgoritmo
42
EN C:
#include <stdio.h>
int main(void)
{
int n;
int suma;
printf("Introduzca número del 1 al 5:");
scanf("%d",&n);
suma=n*(n+1);
printf(“La suma es: %d”, suma)
}
43
EN JAVA:
class Suma
{
public static void main(String[] args)
{
int n;
int suma;
suma=n*(n+1)/2;
System.out.println(“ La suma es :”, suma);
}
}
44
Python:
45
1.6.- Instrucciones
Lectura y Escritura
• Lectura: establece el valor de una variable a través de un dispositivo de entrada.
• Escritura: permite comunicar el valor de una expresión a través de un dispositivo
de salida.
algoritmo ejemplo
var n: entero; x: real; c: carácter; fvar
LeerEntero(n);
EscribirEntero(n);
LeerReal(x);
EscribirReal(x);
LeerCarácter(c);
EscribirCarácter(c)
falgoritmo
46
Lectura de datos
algoritmo leer_variables
var n: entero; x: real; c: carácter; b: booleano fvar
LeerEntero(n); LeerReal(x);
LeerCarácter(c); LeerBooleano(b);
...
falgoritmo
Notación alternativa:
algoritmo leer_variables
var n: entero; x: real; c: carácter; b: booleano fvar
n:=LeerEntero( );
x:=LeerReal( );
c:=LeerCarácter( );
b:=LeerBooleano( ) ...
falgoritmo
47