P. 1
ALGORITMOS

ALGORITMOS

4.88

|Views: 45.566|Likes:
Publicado porronzalo

More info:

Published by: ronzalo on Mar 17, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPT, PDF, TXT or read online from Scribd
See more
See less

08/21/2013

pdf

text

original

Algoritmos

DEFINICIÓN DE ALGORITMO

Conjunto de pasos o acciones que se realizan de manera ordenada para llegar a la solución de un problema. Conjunto de sentencias/instrucciones en lenguaje nativo, las cuales expresan la lógica para la resolución de un problema. Conclusión: Es un método para resolver un problema. La resolución de un problema exige el diseño de un algoritmo que resuelva el problema.

ETAPAS EN LA RESOLUCIÓN DE UN PROBLEMA USANDO UNA COMPUTADORA

Problema  Algoritmo  Algoritmo + LP  Programa de computadora

Diseño del algoritmo.- Describe los pasos a seguir para la resolución de un problema dado (análisis y desarrollo del algoritmo) Programa en computadora.- El algoritmo se expresa mediante un lenguaje de programación en un programa.

TIPOS DE ALGORITMOS
Algoritmo Cualitativo.- Son los algoritmos descritos mediante palabras. Ej.:
    

La elaboración de una receta de cocina El tejido a mano de una chompa Búsqueda de un número telefónico El cambio de una llanta El cambio de un foco quemado

TIPOS DE ALGORITMOS
Algoritmo Cuantitativo.- Son los algoritmos que se basan en cálculos numéricos. Ej.:

Pasos a seguir para resolver una ecuación de segundo grado Pasos a seguir para calcular los sueldos de los empleados de una empresa Instrucciones para calcular los impuestos a pagar de los vecinos de un municipio

CARACTERÍSTICAS DE UN ALGORITMO
Los algoritmos características:

deben

tener

estas

Indicar un orden a seguir en cada uno de sus pasos. Ser definido (confiable), si se ejecuta dos veces debe lograrse el mismo resultado. Ser finito, es decir terminar en un número finito de pasos.

UN ALGORITMO COMO PROCESADOR DE DATOS
ENTRADA = DATOS  PROCESADOR  SALIDA = INFORMACIÓN

Ej.: Leer la base y altura de un rectángulo y mostrar el área en pantalla.

Entrada (Lectura de datos) Se conocen los valores de la Base y la Altura Proceso (Calculo de Area) Area = Base * Altura Salida (Muestra los resultados) Muestra valor del Area

EJEMPLO

Ej.: Un socio de una biblioteca solicita un libro para lectura, si el libro se encuentra se le presta el libro, si no se devuelve la ficha de pedido. INICIO LEER Ficha de pedido EXAMINAR el Estante SI el libro esta en Estante ENTONCES Acepta el pedido Recepción Carnet de socio SI NO Niega el pedido Devuelve Ficha de Pedido FIN SI FIN

DATOS

Para la computadora es una secuencia de bits 0 ó 1. Sin embargo los lenguajes de alto nivel permiten ignorar los detalles de la representación interna dependiendo del nivel de abstracción del lenguaje utilizado.

TIPOS DE DATOS PRIMITIVOS
 

Datos numéricos: Conjunto de los valores numéricos. Pueden representarse en dos formas: Entero: Subconjunto de los números enteros pueden ser + o -, no tienen componentes fraccionarios. Real: Subconjunto de los números reales + ó - , los números reales siempre tienen punto decimal Datos lógicos: De tipo lógico, también denominado booleano, verdadero o falso. Datos cadena: Conjunto finito y ordenado de caracteres.

TIPOS DE DATOS PRIMITIVOS
DATOS

NUMÉRICOS

CARACTERES

LÓGICOS

ENTEROS

REALES

CONSTANTES Y VARIABLES
CONSTANTES Es un grupo de datos que permanecen sin cambio durante la ejecución del algoritmo o del programa, pueden ser: Constante Numérica que representa un determinado valor Constante Alfanumérica o literal que representa cualquier combinación de caracteres Constante Lógica

CONSTANTES Y VARIABLES

VARIABLES Es un grupo de datos que puede variar o alterarse durante la ejecución del algoritmo o la ejecución del programa, se les identifica por los siguientes atributos:
   

El Nombre o identificador que se le asigna El tipo que describe el uso de la variable El valor de la variable que es la cantidad que tiene asociada en un determinado momento Una variable de un tipo determinado solo puede tomar valores de ese tipo

TIPOS DE VARIABLES
Las variables puede ser identificadas de acuerdo a la función que asume en el algoritmo, como: CONTADOR Sirve para llevar una cuenta con incrementos o decrementos constantes, generalmente de 1 en 1. Ej.: Cumpleaños, variable que acumula el número cumpleaños año con año Requiere de las siguientes instrucciones: Cumpleaños = 1 //inicializar en uno Cumpleaños = Cumpleaños + 1 //Cumpleaños aumenta en uno cada año de

TIPOS DE VARIABLES
ACUMULADOR Sirve para llevar una suma o cuenta de diferentes valores (acumular). Ej.: SEdad variable que almacena la suma de las edades de una cantidad de personas. Requiere de las siguientes instrucciones: SEdad = 0 // Inicializa en cero SEdad = SEdad + Edad // SEdad se incrementa en el valor de Edad
 

Inicializar, significa poner en blanco o en cero una variable o campo antes de su utilización. Los acumuladores y contadores por lo general se inicializan en cero.

TIPOS DE VARIABLES
VARIABLE DE TRABAJO Campo que almacena temporalmente el resultado de alguna operación. No es variable de entrada ni de salida. Ej.: Me piden encontrar el área de un cuadrado, para ello necesito el valor para el Lado AREACUADRADO = LADO x LADO

EXPRESIONES ARITMÉTICAS
Son combinaciones de constantes y/o variables unidos por operadores aritméticos paréntesis y nombres de funciones especiales.
Operadores Aritméticos Operador ^ + * / % Significado Potenciación  Adición Sustracción Multiplicación División resto Tipos operandos Base entera o real Exponente Entero Entero o real Entero o real Entero o real Entero o real Entero Tipo de resultado Entero o real Entero o real Entero o real Entero o real Entero o real Real Entero

LOS OPERADORES EN ALGORITMOS Y EN C#
OPERADORES ARITMÉTICOS Adición o suma Resta o Sustracción Multiplicación División Real Potencia Nota : Ddo y Dsor se declaran enteros  
+ * / ^ Modulo(resto) MOD Ej.: R = Ddo % Dsor % Ej.: R = (Ddo % Dsor)

ALGORITMOS PSEUDOCODIGO
+ * /

C#

EXPRESIONES RELACIÓNALES
Operadores Relaciónales algoritmos Operado r < <= > >= = ≠ Complem ento >= > <= < ≠ = Significado Operador menor que menor o igual que mayor que mayor o igual que que igual distinto de (diferente) Complem ento mayor o igual que mayor que menor o igual que menor que distinto de (diferente) En lenguaje C# Operador < <= > >= == != Comple mento >= > <= < != ==

EXPRESIONES RELACIÓNALES

En algoritmos

En C#

Edad > 18 SalBruto <= SalNeto EstCivil≠ 'S'

Edad > 18 SalBruto <= SalNeto EstCivil  != 'S'

EXPRESIONES LÓGICAS O BOOLEANAS
En algoritmos (Edad > 18 ) Y ( Talla < 1.70 ) NO ( sexo = ´F’ ) En C# ( Edad > 18 ) && ( Talla < 1.70 )   == ´F’ ) !( sexo

(EstCivil = ‘C’ ) O (Sueldo ( EstCivil == ‘C’ ) || (Sueldo > > 2000) 2000)

PSEUDOCÓDIGO

 

Es un lenguaje de especificación de algoritmos. Es similar al lenguaje común o al lenguaje natural humano Su traducción a un lenguaje de programación es sencilla Utiliza enunciados donde cada uno de ellos representan una instrucción en un programa de computadora Ofrece gran facilidad para representar en un lenguaje no formal las instrucciones de un algoritmo que sirve de base para el código o programa fuente Utiliza palabras reservadas en ingles o en castellano como:

Iniciar el algoritmo Finalizar el algoritmo Lectura (permite ingresar los valores de las variables) Mostrar (permite mostrar los valores de las variables)

INICIO FIN LEER MOSTRAR SI (expBooleana) {.......} SINO {.......}

Estructura Selectiva

SELECCIONA según (selector) { caso 1: … caso 2: … caso N: … } PARA ( ...; Hasta;...) {.........}

Estructura Repetitiva

MIENTRAS (expBooleana) {....} DO {....} MIENTRAS (expBooleana)

INSTRUCCIÓN DE ASIGNACIÓN

Operación en la cual el computador desarrolla o evalúa una expresión matemática y almacena el resultado final en una determinada variable. En la forma más simple de asignación el computador mueve una constante o el contenido de un campo a otra variable.

SINTAXIS:
Nombre_de_la_variable = expresión, variable o constante

ASIGNACIÓN ARITMÉTICA:
En algoritmos var1 = 3 + 4 * 2 var2 = 0.65 / 0.2 var3 = var1 / var2 En C# var1 = 3 + 4 * 2; var2 = 0.65 / 0.2; var3 = var1 / var2;

ASIGNACIÓN DE CARACTERES O CADENA DE CARACTERES
En algoritmos caracter vCad, car car = 'S' car = 'S'; En C# char vCad, car;

vCad = "28 de julio de 1821" vCad = "28 de julio de 1821";

ESTRUCTURA Y DISEÑO DE UN ALGORITMO EN PSEUDOCÓDIGO
ENCABEZADO:  Empezar con la palabra ALGORITMO seguida por una descripción adecuada de acuerdo al problema a resolver Ej.:ALGORITMO Calcular área del circulo INICIO DEL ALGORITMO  Indicar el inicio del Algoritmo Ej.: INICIO

ESTRUCTURA Y DISEÑO DE UN ALGORITMO EN PSEUDOCÓDIGO
DECLARACIÓN DE CONSTANTES  Definir los valores que no cambian en el transcurso del algoritmo Ej.: CONST Pi = 3.1416 DECLARACIÓN DE LAS VARIABLES A USAR  Definir las variables que sean necesarios para resolver el problema, identificándolas con un nombre y determinando sus tipos. Ej.: REAL Radio, Área

LEER CALCULAR E IMPRIMIR

Definir en forma eficiente las estructuras de datos que permitan leer, calcular o imprimir tantas veces como lo requiera la operación a ser resuelta. Leer Datos: Permite introducir los valores de las variables de entrada disponibles como materia prima, para evaluar las variables de salida Ej.: LEER Radio Calcular: Permite procesar los valores de entrada para producir la salida adecuada. Ej.: Area = Pi x Radio x Radio Area = Pi * pow (Radio,2) Mostrar: Resultados del proceso de los datos, permite dar salida a la información requerida. Ej.: MOSTRAR Area

ALGORITMO
ALGORITMO calcular área del circulo INICIO CONST Pi = 3.1416 REAL Radio, Area LEER Radio Area = Pi * pow (Radio, 2) MOSTRAR Area FIN

Ejercicio
Ej.: Construir un algoritmo que permita calcular el jornal básico de un obrero, si para ello se requiere ingresar por teclado la tarifa horaria y el numero de horas trabajadas. La formula del jornal es: Jornal = TarHora x NroHoras
ALGORITMO calculo del jornal básico INICIO REAL TarHora, Jornal ENTERO NroHoras LEER TarHora LEER NroHoras Jornal = TarHora * NroHoras MOSTRAR Jornal FIN

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->