ALGORITMOS PRIMEROS PASOS PARA DISEÑAR ALGORITMOS
10101010111101101010101010110101010010101010101010 10110 1001 01010 1010 DATOS 10100 1010 111110 1001 VARIABLES 01010 1010 OPERADORES 10101 0101 00111 0010 ACUMULADORES 10101 0101 01110 0101 01010 1010 10101 0101
EDICION: Alessandro Viera
INDICE DE CONTENIDO
Los Algoritmos pág.. 3
Diagrama de flujo pág. 4
Pseudocodigo pág.. 8
Datos pág.. 9
Variables pág.. 11
Operador pág.. 12
Contadores y sumadores pág.. 14 y 15
INTRODUCCIร N
La siguiente informaciรณn en esta revista es sobre los algoritmos y su contenido, se busca en esta revista brindarle al lector una buena informaciรณn sobre este tema de la computaciรณn, en nuestro contenido podrรกn observar ilustraciones para desarrollo del tema y ejemplos de cada una de las explicaciones y sin mas que decir esperando que esta revista cumpla con sus expectativas.
Escrito por: Alessandro Viera
ALGORITMOS ¿Qué son los Algoritmos? Los algoritmos son una serie de pasos estructurados que nos permiten resolver un problema, los algoritmos no son útiles para elaborar un programa ya que no utiliza el mismo lenguaje, pero si un lenguaje similar y lo podemos utilizar para aprender y tener una inducción a lo que es la programación.
tradas.
Entrada: Debe tener una o mas entradas antes de que el algoritmo inicie o al mismo tiempo que el algoritmo inicia. Las entradas son tomadas de objetos específicos.
no puede ser ejecutado por un computador ya que no esta escrito en un lenguaje de programación en especifico.
Eficacia: Mantiene car acter ísticas básicas para que se cumpla con eficacia una serie de pasos de manera finita y pueda ser desarrollado con lápiz y papel. PROGRAMA Y ALGORITMOS
Los algoritmos están relacionados con los programas pero no se CARACTERISTICA DE LOS puede decir que son los mismos ALGORITMOS ya que los algoritmos son utilizaPrecisión: Un algor itmo debe dos para visualizar como se puede seguir una secuencia exacta para realizar un programa para postepoder solucionar un problema. riormente utilizar un lenguaje de Carácter finito: Tiene que tener programación: un final al terminar de especificar Algoritmos: Son desar rollados los pasos para la solución de una para indicar una serie de pasos actividad. para la solución de un problema y
Programa: Se ejecutan en un computador y poseen un lenguaje Salida: Posee una o mas salidas adecuado para que dicho progray debe tener relación con las en- ma pueda ejecutarse en el compu-
Diagrama de flujo Los diagramas de flujo son una representación grafica de los algoritmos se utiliza para presentar algoritmos no tan largos debido a que la construcción de un diagrama de flujo requiere mucho espacio para ser representado. Las normas para la elaboración de un diagrama de flujo fueron estandarizadas por “International Organization for Standardization” ISO. Simbolos usados en los Diagramas de flujos
Indica el inicio o el fin Indica entrada de datos Nos indica el inicio de una operación aritmética o la asignación de un valor en la memoria. Indica la salida de información Conector dentro de la pagina. Representa la continuidad del diagrama dentro de la misma página Representa la continuidad del diagrama en otra página. Símbolo de decisión
Símbolo de decisión múltiple
Diagrama de flujo Otros símbolos muy utilizados
Símbolo del mientras: Da la opción de decidir. Si es verdadera se inicia el ciclo si es falsa cesara
Símbolo del para: Se utiliza cuando se conoce el número de iteraciones.
Símbolo repita hasta: Si la condición es verdadera termina el ciclo si es falsa continua
Diagrama de flujo Pasos para diseñar un diagrama de flujo
No deben quedar líneas de flujo en el aire sin conectar.
Se debe evitar el cruce de líneas usando los conectores
Los textos escritos es símbolos deben ser explícitos y cortos.
Usar conectores si solo si es necesario
Los símbolos deben ser representados de manera que se vean de arriba hacia abajo y de izquierda a derecha. Solo se deben usar líneas horizontales y verticales. Ejemplo de Diagrama de flujo
Pseudocodigo El Pseudocodigo nació después del Diagrama de flujos, el Pseudocodigo es el mas utilizado ya que es útil para escribir programas sin necesidad de utilizar tanto espacio como lo gasta el Diagrama de Flujos para pre-diseñar programas de la Computadora, sabiendo que el Pseudocodigo no es ejecutable en una computadora ya que esta escrito en un lenguaje natural se utiliza para el pre diseñamiento de un programa que se desea elaborar.
Cuerpo: Dentro de esta estructura del Pseudocodigo se desarrollan los pasos que deben ejecutarse a lo largo del algoritmo el cuerpo esta compuesto por el inicio y el final del Pseudocodigo. Ejemplo de Pseudocodigo Cabecera Programa: Area_de_un_Triangulo Declaraciones: Base, Altura y Entero
Estructura del Pseudocodigo Cuerpo: - El Pseudocodigo se divide en Inicio 3 partes para su desarrollo la Insertar “Valor de la base” cabecera, declaraciones y cuerLEA base po. Cabecera: Es el nombre del Insertar “Valor de la Altura” algoritmo es lo primero que se LEA altura escribe antes de desarrollar el Resultado“Area del Triangulo=”, Pseudocodigo. (BASE*ALTURA/2)
Declaraciones: Son las var ia- FIN bles que van a intervenir en el desarrollo del algoritmo.
DATOS Los datos que utilizan los programas se dividen en dos tipos que analizaremos a continuación: Datos simple: Es el dato que no se puede dividir ni modificar. Ejemplo: 2017 año o una letra A Datos compuestos: Son los datos que tienen mas de un carácter ejemplo: 28 de agosto de 1992 TIPOS DE DATOS Datos de tipo entero: En este gr upo se encuentran todos los números enteros.
Z= (...-5,-4,-3,-2,-1,0,1,2,3,4,5...) Ejemplo: La edad de una persona 19 años o el año 2017 La cantidad de dígitos que se pueden expresar dependerá del tipo de ordenar ya que los datos de tipo entero puede llegar a hacer un número infinito solo usaremos unos parámetros establecidos por el computador. El Pseudocodigo para anunciar que va a representar un número entero utilizan la palabra ENTERO. Datos de tipo real: Son todos los números pertenecientes al conjunto de números reales.
Ejemplo: La altura de un triangulo 13,4 El peso de una persona 102,5 En Pseudocodigo para expresar un número real se comienza con la terminología Real. Datos de tipo lógico: Son aquellos datos que solo pueden representar por {verdadero, falso}. Ejemplos: Un vehículo tiene asociado un sistema computarizado que anuncia si hay un error en alguna pieza, si hay un error el sistema mostrara “Verdadero” y le anunciara al conductor que pieza esta fallando y si todo esta en orden mostrara “Falso” y se le mostrara al conductor que todo esta en orden. Datos de tipo caracteres: Son los caracteres que posee el computador son de tipo simple (¨) caracteres doble “. Ejemplo: Se tiene una breve encuesta con dos respuestas a y b. Si se selecciona la primera pregunta es “a” y si se selecciona la segunda pregunta es “b”.
DATOS Datos de tipo cadena: Los datos objeto, el usuario podrá registrar de tipo cadena están caracterizados los datos y no seguirá un patrón de por ser un conjunto de caracteres finido de valores. están representados de tipo simple (´) o doble (“) Ejemplo: “Barquisimeto” “ESTADO LARA” Los espacios entre cadenas de caracteres son válidos. Clasificación de los tipos de datos simples Los datos se clasifican en predefinidos y definidos Datos simples predefinidos: Son aquellos que están predefinidos por el programador y son estándares. Por ejemplo el programador hizo un programa para un peso de un gimnasio, si la persona pesa mas de 100 kilos arrojara que hay sobre peso y si la persona pesa menos de 40 lanzara el resultado de que hay desnutrición. Datos simples indefinidos: Son aquellos que son arrojados por el usuario generalmente que va a utilizar por ejemplo un programa para el calculo de volumen o area de un
Variables Las variables son zonas de memorias que se modifican al iniciar el proceso de un programa. TIPOS DE VARIABLES Variables numéricas: Son aquellas en las cuales se almacenan valores numéricos, positivos o negativos, es decir almacenan números del 0 al 9, signos (+ y -) y el punto decimal. Ejemplo: iva = 0.15 pi = 3.1416 costo = 2500 Variables Lógicas: Son aquellas que solo pueden tener dos valores (cierto o falso) estos representan el resultado de una comparación entre otros datos. Variables Alfanuméricas: Esta for mada por car acteres alfanumér icos (letras, números y caracteres especiales). Ejemplo: letra = ’a’ apellido = ’lopez’ dirección = ’Av. Libertad #190’
OPERADOR Un operador es un símbolo (+, -, *, /, ...) que tiene una función predefinida (suma, resta, multiplicación, división) y que recibe sus argumentos de manera infija, en el caso de tener 2 argumentos de manera prefija o postfija, en el caso de tener uno solo ( , o bien, ). Los operadores aritméticos: Nos permiten, básicamente, hacer cualquier operación aritmética, que necesitemos (ejemplo: suma, resta, multiplicación..).
Los operadores relacionales: Al igual que en matemáticas, estos operadores nos permitirán evaluar las relaciones (igualdad, mayor, menor...) entre un par de operando (en principio, pensemos en números). Los operadores relacionales de los que disponemos en C son:
OPERADORES Otros operadores importantes:
Los Operadores lógicos: Como operadores lógicos designamos a aquellos operadores que nos permiten ``conectar'' un par de propiedades (al igual que en lógica):
Operadores a nivel de bit (bitwise operators): En deter minadas ocasiones nos puede interesar manipular datos a nivel de bit; por ejemplo activar o desactinumero = 2701; if ( EsPrimo (numero) && (numero > 1000) ){ / var flags. Un flag es una * Ejecu- ``variable'' que puede tomar 2 valores, por lo que se suele representar con un bit. Debido a que en C (y en la mayoría de lenguajes de programación) no existen tipos predefinidos de un bit, lo que se suele hacer taremos este código si numero */ /* es agrupar varios flags en una vaes primo y numero es mayor que riable de tipo entero (``short int'', ``int'' o lo que queramos). 100 */ } Los operadores lógicos de los que disponemos en C son los siguientes:
CONTADORES Es una variable que está en ambos miembros de una asignación interna, a la que se le suma un valor constante. Es necesario haber inicializado en un momento previo a esta variable, ya que va a ser leído su contenido. Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante, cada vez que se produce un determinado suceso, acción o iteración. Los contadores se utilizan con la finalidad de contar sucesos, acciones o iteraciones internas en un bucle, proceso, subrutina o donde se requiera cuantificar; deben ser inicializados antes del ciclo o proceso, e incrementados o decrementados dentro del ciclo. La inicialización consiste en asignarle al contador un valor inicial, es decir el número desde el cual necesitamos se inicie el conteo. El contador contara (valga la redundancia) las iteraciones dentro del algoritmo o contara el numero de registro q desees. Ejemplo
c <-- 0; REPITA Escribir (' acceso prohibido') c <-- c + 1 Hasta que c=100 Se escribirá “acceso prohibido” en pantalla.
ACUMULADORES Es una variable que está en ambos miembros de una asignación interna a la que se le suma un valor variable.Es una variable que como su nombre lo indica, suma sobre sí misma un conjunto de valores, al finalizar con el ciclo contendrá, en una sola variable, la sumatoria de todos los valores, que cumplen una determinada condición. Es necesario haber inicializado en un momento previo a esta variable, ya que va a ser leído su contenido. El sumador acumulara en operaiones sencillas o complejas segun lo desees, dentro del algoritmo. EJEMPLO s<--0 c<--0 Repita Escribir ('Ingrese Temperatura '); Leer(t) c<-c+1 ......................CONTADOR s<-s+t ......................SUMADOR hasta c= 10 prom<-- t/c;
DIFERENCIAS ENTRE SUMADOR Y ACUMULADOR La diferencia entre un contador y un acumulador es que mientras el primero va aumentando en una cantidad fija preestablecida, el acumulador va aumentando en una cantidad o valor variable.
FUENTES
1
Algoritmos “http:// informaticafrida.blogspot.com/2009/03/algoritmo.html”
2
Diagrama de flujos: “http:// www.luismiguelmanene.com/2011/07/28/los-diagramas-deflujo-su-definicion-objetivo-ventajas-elaboracion-fasesreglas-y-ejemplos-de-aplicaciones/”
3 4
5 6
Datos: “http://progra.usm.cl/apunte/materia/tipos.html”
Variables: “https://claseinfo.blogia.com/temas/variables-yconstantes/ Operador: “http://luzumisu.over-blog.com/article28322968.html” Contadores y sumadores: “https://sites.google.com/ site/algoritmicai/contadores-y-sumadores”