Tema 2. Concepto de Algoritmo

Documentos relacionados
Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA

Elementos de un programa en C

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

Principios de Computadoras II

Ficha de Aprendizaje N 13

Es toda la información que utiliza el computador. Según sea la información que guardemos en los datos, se clasifican en los siguientes tipos:

Programación en java. Estructuras algorítmicas

Exterior del algoritmo. Entorno. Usuario. Procesador. Escribir. v1 v2 v3. Leer. <acción> {; <acción>}

El lenguaje C. 1. Identificadores, constantes y variables

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Capítulo 7 OPERADORES Y EXPRESIONES. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.

UNIDAD I. ALGORITMOS

OPERADORES Y EXPRESIONES

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Herramientas de Programación. M.C. Juan Carlos Olivares Rojas

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO

DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios.

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY

Operadores y Expresiones

Introducción a la programación

Profesor(a): M. A. Zeferino Galarza Hernández

Expresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

CAPITULO II. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Guía práctica de estudio 05: Diagramas de flujo

UNIDAD DE APRENDIZAJE I

Datos y tipos de datos

Tema 4. Operadores y Expresiones

Computación II. Introducción a Visual Basic

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

Un identificador le da nombre único a un elemento en un programa (Variables, procedimientos, etc.). No puede contener operadores como + - * /

Resolución de problemas mediante algoritmos

Tema 2 Introducción a la Programación en C.

4. Operadores Operador asignación

Curso de Programación Avanzada en C

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

INTRODUCCIÓN A LA PROGRAMACIÓN EN FORTRAN. Métodos Numéricos Carlos Zotelo

INICIACIÓN A LA PROGRAMACIÓN II

LENGUAJE. Tema 2 Elementos de un programa

2. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS

Profesor(a): Ing. Miriam Cerón Brito

Tema: Entorno a C# y Estructuras Secuenciales.

CAPITULO ALGORITMOS Y PROGRAMAS CONTENIDO

: Algorítmica y Estructura de Datos I

Expresiones y sentencias

La resolución de un problema

Representación de la información

ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS Tipos de datos Expresiones Operadores y operandos Identificadores como localidades de memoria

Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación

CAPÍTULO 4: VARIABLES Y RAZONES

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Fundamentos de Programación Visual Basic

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

GUÍA BÁSICA DE SCHEME v.4

Guía Nº 1(B) ALGEBRA

Estructuras Secuénciales

1. Computadores y programación

13. Utilizar la fórmula del término general y de la suma de n términos consecutivos

Taller de Resolución de Problemas Computacionales

Operadores. Javier Fernández Rivera -

Estructura Selectiva Múltiple

Estatutos de Control C# Estatutos de Decisión (Selección)

Estructuras de Control

Inicio del programa. Entrada de datos. Proceso de datos. Salida de datos. Fin del programa

Tema 2. El lenguaje JAVA

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo

Preparación para Álgebra 1 de Escuela Superior

Algoritmos y Programas

DES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia: Semestre: Área en plan de estudios:

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

Variables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.

Tabla de Símbolos. Programación II Margarita Álvarez

CONJUNTOS NUMÉRICOS. La noción de número es tan antigua como el hombre mismo ya que son necesarios para resolver situaciones de la vida diaria.

Conectados con el pasado, proyectados hacia el futuro Plan Anual de Matemática II Año PAI VII Grado

ÁREA: MATEMÁTICAS UNIDAD : 1 TEMPORALIZACIÓN: OCTUBRE 1ª QUINCENA OBJETIVOS CONTENIDOS CRITERIOS DE EVALUACIÓN

001. Interpreta correctamente códigos (teléfonos, matrículas, NIF ).

5to. ESTANDARES MATEMATICOS COMUNES FUNDAMENTALS

CAPÍTULO II SISTEMAS NUMÉRICOS. Este método de representar los números se llama sistema de numeración decimal, donde 10 es la base del sistema.

Se entiende por sistema numérico a los símbolos y al conjunto de reglas que se aplican sobre ellos para realizar la representación de una cantidad.

Opuesto de un número +3 + (-3) = (+5) = 0. N = 0,1, 2,3,4, Conjunto de los números naturales

Representación de números enteros: el convenio exceso Z

CENTRO UNIVERSITARIO MONTEJO A.C. SECUNDARIA Temario Matemáticas 1

Colegio Decroly Americano Matemática 7th Core, Contenidos I Período

PROPIEDADES DE LOS CAMPOS. Cada campo de una tabla dispone de una serie de características que proporcionan un control

UNA ECUACIÓN es una igualdad de dos expresiones algebraicas.

GRAMATICAS LIBRES DEL CONTEXTO

Tema: Excel Formulas, Funciones y Macros

UNIDAD DIDÁCTICA #1 CONTENIDO

INSTITUTO POLITECNICO NACIONAL CENTRO DE ESTUDIOS CIENTIFICOS Y TECNOLOGICOS " GONZALO VAZQUEZ VELA "

Primaria Sexto Grado Matemáticas (con QuickTables)

CONTENIDOS Y CRITERIOS DE EVALUACIÓN MATEMÁTICAS 5º ED. PRIMARIA

Unidad 2. Los números enteros.

Transcripción:

Tema 2. Concepto de Algoritmo Objetivos Definir el concepto de algoritmo Resolver problemas sencillos mediante el diseño de un algoritmo Conocer los tipos de datos elementales y las operaciones sobre ellos Tema 2. Concepto de algoritmo 2 1

Tema 2. Concepto de algoritmo 1. Resolución de problemas 2. Definición de algoritmo 3. Tipos de datos 4. Elementos de un algoritmo 5. ariables, constantes y expresiones 6. Precedencia de los operadores Tema 2. Concepto de algoritmo 3 Resolución de problemas Cómo se resuelve un problema mediante la programación? Definir claramente el problema Identificación de datos de entrada, de salida, de variables intermedias Separar entre ase de solución general al problema: diseño de un algoritmo ase de solución específica: programa de ordenador escrito en algún lenguaje de programación Problema Diseño del algoritmo Programa de ordenador Tema 2. Concepto de algoritmo 4 2

Pasos para resolver un problema Diseño del algoritmo Codificación del algoritmo mediante un programa escrito en lenguaje de programación adecuado Ejecución y validación de programa Tema 2. Concepto de algoritmo 5 Definición de algoritmo La palabra algoritmo proviene del nombre del matemático persa del siglo IX Muhammad ibn Musa al-jwarizmi Un algoritmo es una secuencia ordenada de pasos, exenta de ambigüedad, que permite la resolución de un problema determinado Características de un algoritmo Preciso: exento de ambigüedad inito: si se sigue el algoritmo, se debe terminar en algún momento Definido: si se sigue dos veces el algoritmo con los mismo datos de entrada, la salida debe ser la misma Tema 2. Concepto de algoritmo 6 3

Algoritmo para cambiar una bombilla 1. Retirar la bombilla fundida 1. Colocar una escalera debajo de la bombilla 2. Subir la escalera 3. Desenroscar la bombilla en el sentido contrario de las agujas del reloj 4. Bajar la escalera 2. Poner una bombilla nueva 1. Coger la bombilla nueva 2. Subir la escalera 3. Enroscar la bombilla en el sentido de las agujas del reloj 4. Bajar la escalera 5. Retirar la escalera Tema 2. Concepto de algoritmo 7 Notaciones para describir algoritmos Método informal Lenguaje natural entajas: comprensible e intuitivo Inconveniente: impreciso Métodos formales Pseudocódigo Lenguaje natural limitado y sin ambigüedad Diagramas Diagramas de flujo u organigramas Utiliza un conjunto de símbolos para representar cada estructura de control y mediante líneas de flujo se indica el orden en que se realiza el flujo lógico del algoritmo Diagramas de Nassi-Schneiderman o Diagramas N-S Los pasos sucesivos se escriben en cajas con distintas formas según la estructura de control que representen Tema 2. Concepto de algoritmo 8 4

Descripción de algoritmos Metodología para describir algoritmos Entrada Proceso Salida Tema 2. Concepto de algoritmo 9 Algoritmo para calcular el cociente de una división entera sin usar la operación de división (Lenguaje Natural) 1. Leer el numerador N y el denominador D 2. Inicializar el cociente a 0 (C 0) 3. Si N<D ir al paso 7 4. Restar a N el valor de D (N N-D) 5. Incrementar en uno C (C C+1) 6. Si N>=D volver al paso 4 7. Mostrar el valor de C Tema 2. Concepto de algoritmo 10 5

Algoritmo para calcular el cociente de una división entera (Organigrama) Leer N y D C 0 SI N<D NO N N-D Escribir C C C+1 Tema 2. Concepto de algoritmo 11 Tipos de datos Conjunto de valores junto con las operaciones sobre esos valores Tipos elementales Entero Real Carácter Lógico Tema 2. Concepto de algoritmo 12 6

Tipos de datos Tipo Entero Conjunto de los números enteros positivos y negativos En la práctica están limitados por el almacenamiento -> Overflow Operaciones básicas: aritméticas, relacionales Tipo Real Conjunto de los números reales positivos y negativos (parte entera y parte decimal separada por un punto) En la práctica están limitados por el almacenamiento -> Overflow Operaciones básicas: aritméticas, relacionales Tema 2. Concepto de algoritmo 13 Tipos de datos Tipo carácter Conjunto de elementos de un conjunto de caracteres predefinidos o alfabeto (normalmente se utiliza el conjunto de caracteres ASCII) Generalmente se almacenan internamente como datos enteros (código ASCII) Operaciones de conversión de enteros a caracteres y viceversa y relacionales Lógicos alores entre 2 posibles, es decir, valores binarios (verdad/falso, si/no) En algunos lenguajes no se implementan sino que se consideran como verdad cualquier valor distinto de 0 Operaciones: operadores lógicos (AND, OR y NOT) undamentales para evaluar condiciones Tema 2. Concepto de algoritmo 14 7

Operadores lógicos AND OR NOT (3<4) OR (3=4) (Respuesta= S ) AND (salir= N ) NOT ((3<4) OR (3=4)) (caracter= A ) AND (caracter= B ) es siempre ALSO (N<=10) OR (N>10) es siempre ERDAD Tema 2. Concepto de algoritmo 15 Elementos de un algoritmo ariables, constantes y expresiones Estructuras de control Secuencial Operación de asignación Operación de entrada Operación de salida Condicional Repetitiva Tema 2. Concepto de algoritmo 16 8

ariables Una variable es un objeto de datos que posee un valor conocido por su nombre (identificador) Toda variable tiene un tipo asociado Su valor puede ser modificado pero en un instante dado sólo contiene un valor determinado Es necesario declarar las variables al principio del algoritmo Elegir el nombre mediante un identificador Determinar el tipo de datos que va a contener Ejemplos Sueldo: real Edad: entero Letra_nif: caracter Tema 2. Concepto de algoritmo 17 Constantes Objeto de datos que contiene un valor invariable conocido por su identificador Es necesario inicializar las constantes al principio del algoritmo Esto determina el tipo de la constante Ejemplos PI=3.14 SALUDO= Hola mundo MAXIMO=500 RESPUESTA= S Tema 2. Concepto de algoritmo 18 9

Identificadores Un identificador es una secuencia de caracteres que permite identificar de forma única a cada elemento/objeto de un algoritmo No todos los caracteres son válidos por lo que normalmente se usan letras, dígitos y subrayado (_) El primer carácter debe ser una letra o subrayado Pueden tener cualquier longitud dentro del límite que imponga el compilador Las palabras reservadas del lenguaje no pueden utilizarse como identificadores Algunos lenguajes no distinguen entre caracteres en mayúsculas y minúsculas (Pascal, Modula-2) y otros sí (C, Java) Reglas para crear identificadores Usar solo letras, dígitos y subrayado Usar minúsculas para identificadores de variables Usar mayúsculas para identificadores de constantes Para identificadores de funciones con más de una palabra usar subrayado para separar las palabras o mayúsculas para la primera letra de cada palabra (Ej. CalcularechaNacimiento) Tema 2. Concepto de algoritmo 19 alores constantes También llamados valores literales Se trata de valores que aparecen explícitamente en un algoritmo y que no tienen identificador asociado (sólo pueden ser referenciados por su propio valor) Ejemplos 0 Introduzca el dato de entrada 100 7.5 x Tema 2. Concepto de algoritmo 20 10

Expresiones Una expresión es la combinación de distintas variables, constantes, valores constantes, operadores, paréntesis y nombres de funciones Toda expresión tiene en todo momento un valor concreto que es el resultado de evaluarla de izquierda a derecha, siempre teniendo en cuenta la precedencia de los operadores y los paréntesis que aparecen en la expresión El valor devuelto tras la evaluación de una expresión determina el tipo de la expresión (entera, lógica ) Ejemplos 5+6-5*2 (5+6-5)*2 (A<0) OR B AND C Tema 2. Concepto de algoritmo 21 Precedencia de los operadores Operadores Lógicos NOT AND OR Operadores Relacionales <, >, =, <=, >=, <> Operadores Aritméticos Operadores de signo (+,-) Multiplicación y división (*, /, %) Suma y resta (+, -) Tema 2. Concepto de algoritmo 22 11

Ejemplo de árboles de precedencia 7* 3-5 2 / (2 + 3) * 8 21 25 5 ((2 * 3) < 8) AND ((5 * 2) >= 14) 6 10-19 5 40 verdad falso falso Tema 2. Concepto de algoritmo 23 Resumen Resolución de problemas mediante el diseño de algoritmos y la posterior codificación de un programa en un lenguaje de alto nivel Algoritmo Definición Características Etapas para describir algoritmos Elementos básicos Tipos de datos Identificadores, variables, constantes y expresiones Precedencia de los operadores Tema 2. Concepto de algoritmo 24 12