Diagramas de flujo y pseudocódigo

Slides:



Advertisements
Presentaciones similares
PROGRAMACIÓN I CENTRO DE ESTUDIOS INTEGRADOS EL MARISCAL - CEIM Ing. Luisa Fernanda Arenas Castañeda Feb 6 de 2016.
Advertisements

ALGORITMOS Y TIPOS DE DATOS Un algoritmo es un método para resolver un problema. Para la creación de un programa (resolver un problema) en un lenguaje.
INFORMATICA II TEMA. ALGORITMOS MAESTRA PAULINA RUIZ SOSA.
El controlador de relleno y las referencias relativas.
MATLAB 7 EJERCICIOS. E01. Escribir un programa que permita determinar si un número entero dado es par o impar. (Utilizar el operador mod) E02. Utilizando.
ALGORITMOS, DIAGRAMAS DE FLUJO ING. DIANA CRUZ. QUÉ ES UN ALGORITMO ALGORITMO PARA UNA RECETA DE COCINA ETAPAS PARA SOLUCIONAR UN PROBLEMA PROPIEDADES.
ITESCO – Arquitectura Computadoras L. S. C. A. Raúl Monforte Chulin - MORCH Systems 1.1. Arquitectura básica y sus operaciones. Objetivo: El estudiante.
Resolución de problemas utilizando computaoras
Estructuras de Control en Visual Basic.net
Operadores Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.
Estructuras de Control.
Actividad #2 Los algoritmos
Introducción a la Programación Multimedial
. Primera Open Class Asignatura: Programación Estructurada Tema:
Subject: Programming Methodology
ESTRUCTURAS CONDICIONALES
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
Tecnologías de la Información NI3C
Olimpiadas Chilenas de Informática - Formación
Conceptos básicos de programación
Fundamentos de programación
MATRICES.
Tema 4 Elementos para el Desarrollo de Algoritmos
TUTORIAL PSeint.
Estructuras de control repetitivas
Tema 2 Variables y cálculos
Bucles y estructuras de decisión
Tema 6. Conceptos básicos de programación Clase 1
FÓRMULAS Una fórmula es la representación de una operación aritmética en una hoja de cálculo. Características: Siempre comienza por el signo igual(=) ó.
Infografía. Estructura de Datos.
LÓGICA DE PROGRAMACIÓN
Procedimientos y Funciones
EXPRESIONES Una expresión es una forma especial de asignación.
Unidad 2. Algoritmos Unidad 4. Control de flujo
Unidad 3. Introducción a la programación
Fundamentos de programación
ALGORITMOS Un procedimiento o método para resolver un problema que cumpla con unos requisitos se dice que es un algoritmo. Se puede dar por tanto la siguiente.
PROGRAMACIÓN 1 INTRODUCCIÓN
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
DOCENTE: ANGEL PALACIO BIENVENIDOS AL MUNDO DEL
HERRAMIENTAS DE PROGRAMACIÓN
Fundamentos de programación
Tema 6 Clasificación de algoritmos
Estructuras de Repetición Pseudocodigo1 Estructuras de Repetición Algoritmos Mientras Hacer-Mientras Para.
Fundamentos de Programación
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
Tema 9. Estructuras de repetición. Clase 2
Metodología de la Programación
Tema 5 Representación y Técnicas de Diseño de Algoritmos
POLINOMIOS p(x) = p0 + p1x + p2x2 + p3x3 + … + pnxn pn ≠ 0
FUNDAMENTOS DE PROGRAMACION
Bucles y estructuras de decisión
M. en TI. Omar Téllez Barrientos DOCENTE DE INFORMÁTICA GENERACIÓN DE PSEUDOCÓDIGOS Y ALGORITMOS
Introducción a la Estadística Informática
INTRODUCCIÓN A LA PROGRAMACIÓN ABRAHAM SOPLA MASLUCÁN MAESTRO EN CIENCIAS DE LA COMPUTACIÓN INSTITUTO TECNOLÓGICO DE MONTERREY.
Estructura general de un programa. Estructura general de un programa. Pseudocódigo Diagrama de flujo Concepto de programas. Concepto de programas. Instrucciones.
Estructuras de Control
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
TUTORIAL PS EINT FUNDAMENTOS DE PROGRAMACIÓN Ing. Elizabeth Díaz Orea.
Formulas y Funciones Excel.
Expresiones algorítmicas
Eduardo Cruz Pérez.
Estructuras de Repetición Algoritmos
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 2)
CONTROLES Y ESTRUCTURAS BÁSICAS DE PROGRAMACIÓN  1. Algoritmos: conjunto de instrucciones programadas para resolver una tarea específica.  2. Datos:
DIAGRAMAS DE FLUJO Y PSEUDOCÓDIGO
Tema 8. Estructuras de decisión. Clases 1 y 2.
UNIDAD III ESTRUCTURA SECUENCIAL
UNIDAD II Generalidades sobre Algoritmos
UNIDAD V ESTRUCTURA REPETITIVA (Repetir Hasta Que)
Transcripción de la presentación:

Diagramas de flujo y pseudocódigo

Se utiliza un conjunto de símbolos normalizado, estándar. Diagramas de flujo Representaciones gráficas del flujo de datos e informaciones que maneja un programa. Se utiliza un conjunto de símbolos normalizado, estándar. Utilizaremos un subconjunto reducido de símbolos.

Símbolos utilizados. Operación Todos los símbolos estarán unidos por líneas de flujo. Leer datos Escribir datos

Símbolos utilizados. Decisión Alternativa múltiple Alternativa

Símbolos utilizados. bucles MIENTRAS HACER …. MIENTRAS

Pseudocódigo Un programa puede describirse mediante un lenguaje intermedio entre el lenguaje natural y el lenguaje de programación Tiene flexibilidad para expresar las acciones que han de realizar. Tiene limitaciones que facilitaran su posterior codificación. Diremos que una notación es un pseudocódigo si mediante ella podemos describir la solución de un problema en forma de algoritmo dirigido a la computadora, utilizando palabras y frases del lenguaje natural sujetas a unas determinadas reglas.

El pseudocódigo se ha de considerar más bien una herramienta para el diseño de programas que una notación para la descripción de los mismos. Debido a su flexibilidad permite obtener la solución a un problema mediante aproximaciones sucesivas, es decir, mediante lo que se denomina diseño descendente. Asimismo tendrá la posibilidad de describir datos, tipos de datos, constantes, variables, expresiones, archivos y cualquier otro objeto que sea manipulada por el programa. Para evitar complicaciones utilizaremos las estructuras y características del lenguaje en el que codifiquemos siempre que no utilice notaciones de difícil comprensión.

Las acciones que expresamos en pseudocódigo pueden ser de dos tipos: Las sentencias se ejecutan de forma secuencial, una detrás de otra y de arriba abajo. Hasta que no se ha completado la sentencia anterior no comienza la siguiente. Las acciones que expresamos en pseudocódigo pueden ser de dos tipos: Acciones simples: También denominadas instrucciones primitivas, son aquellas que el procesador ejecuta de forma inmediata. Acciones compuestas: Aun no esta resuelta en términos de acciones simples y sentencias de control. Estas acciones se definirán en términos de acciones simples en otra parte del programa.

Estructura de un programa en Pseudocodigo Un programa es la solución final de un problema. Consiste en la descripción de los objetos (entorno:) y de las instrucciones (Inicio…Fin). Un programa tendrá la siguiente estructura: Programa Nombre_Del_Programa; Entorno: // Descripción de los objetos Inicio // Descripción de las acciones Fin Subprograma Nombre_subprograma Fin; ….

Elementos de un programa Cualquier programa, en cualquier lenguaje, constará de los siguientes elementos. El juego de caracteres (1,2….0,a,b….,z, +,-..) Variables y constantes: Será donde almacenemos los datos con los que trabajaran las sentencias y las expresiones. Operaciones: +,-,/,*….. Sentencias y expresiones: Indican las acciones que debe realizar el programa, utilizando las variables o constantes. Comentarios: Explican detalladamente el funcionamiento del programa. No tienen ningún valor para el compilador. Se usan para permitir entender el programa para las personas

El juego de caracteres [ 1,2...0,a,b......z,*,-( )...] Un carácter es un elemento pequeño utilizado en el tratamiento de la información. Un dato de tipo carácter contiene un solo carácter, siendo un carácter un conjunto finito y ordenado de caracteres que la computadora reconoce. Si bien estos caracteres no son estándar, la mayoría de las computadoras reconoce los caracteres alfabéticos, numéricos y especiales. Alfabéticos (a,b,c,d, ......z) (A,B,C,D,.........Z) Numéricos (0, 1, 2, 3, ...... 9) Especiales (+, -, *, /, < , >, $.......)

Variables y constantes Son objetos de un programa todos aquellos manipulados por las instrucciones. Mediante ellos, en un programa podremos realizar el almacenamiento de los datos y de los resultados de las distintas operaciones que intervienen en la solución del problema. Todos los objetos van a tener tres atributos Nombre: Es un identificador del mismo Tipo: Conjunto de valores que puede tomar Valor: Elemento del tipo que se le asigna.

Reservan una zona de memoria en la que almacenan un valor Constantes El valor es asignado al codificar el programa y no varia durante la ejecución de este. Pueden estar definidas como una variable, tienen identificador, o declaramos su valor solamente, en este caso las denominaremos simplemente “valor” Variables Su valor puede cambiar y normalmente cambiará durante la ejecución del programa. Tienen que tener siempre un identificador o nombre, que será la forma de acceder o modificar su valor.

Identificadores Los identificadores son palabras creadas por el programador para dar nombre a los objetos y demás elementos que necesita declarar en un programa, como: Variables Constantes Tipos Estructuras de datos Archivos Subprogramas (funciones)

Ejemplo de identificadores namespace SumaDosNumeros { class Programa static void Main(string[] args) int num1, num2; String cadena; System.Console.WriteLine("Escriba dos números"); cadena = System.Console.ReadLine(); num1 = int.Parse(cadena); num2 = int.Parse(cadena); System.Console.WriteLine("La suma es: {0} ", num1 + num2); }

Nombre de identificadores static void Main(string[] args) { int num1, num2; String cadena; System.Console.WriteLine("Escriba dos números"); cadena = System.Console.ReadLine(); num1 = int.Parse(cadena); num2 = int.Parse(cadena); System.Console.WriteLine("La suma es: {0} ", num1 + num2); } Estilo recomendado “Nombres representativos” static void Main(string[] args) { int x, y, z; String a; System.Console.WriteLine("Escriba dos números"); a = System.Console.ReadLine(); x = int.Parse(a); y = int.Parse(a); z = x + y; System.Console.WriteLine("La suma es: {0} ", z); } Estilo NO recomendado “El nombre de los identificadores no informa de su utilidad”

Operadores Hay tres tipos de operadores: aritméticos

Relacionales lógicos Reglas de Prioridad Las operaciones aritméticas siguen reglas de prioridad o precedencia y son: operador exponencial *, ^ operadores de multiplicación y división, / operadores de suma y resta +, -

Expresiones aritméticas Las expresiones aritméticas son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Las mismas son utilizadas en notación matemática tradicional. a + (b – 20) * 2 (a + b)** 2 Cada expresión tiene un valor, que se determina tomando los valores de las variables y constantes implicadas y ejecutando las operaciones indicadas. Reglas de Prioridad Las expresiones que tengan dos o más operadores requieren reglas matemáticas que permitan determinar el orden de las operaciones, dichas reglas son de prioridad o precedencia y son: Las operaciones que están encerradas entre paréntesis se evalúan primero. Si existen paréntesis anidados, los mismos se resuelven de adentro hacia fuera. Las operaciones aritméticas dentro de una expresión siguen el siguiente orden de prioridad: Operador exponencial Operadores * y / (multiplicación y división) Operadores + y - (suma y resta) En el caso de coincidir operadores de igual jerarquía en una expresión encerrada entre paréntesis, el orden de prioridad se resuelve de izquierda a derecha.

Teorema de la programación estructurada En 1966 Böhm y Jacopini demostraron el teorema de la programación estructurada. Teorema: Todo algoritmo puede ser descrito utilizando solamente tres tipos de estructuras de control: Secuencial Alternativa Repetitiva No se necesitan bifurcaciones incondicionales para la descripción de los algoritmos.

Instrucciones Como ya se mencionó anteriormente, un algoritmo es un conjunto de acciones que se han de ejecutar para la resolución de un problema. A cada una de estas acciones se le denomina Instrucción o Sentencia. Un conjunto de Instrucciones forma un programa. Las instrucciones se deben escribir y luego almacenar en memoria en el mismo orden en que han de ejecutarse, es decir, en secuencia. Las instrucciones básicas que se pueden implementar en un algoritmo soportan todos los lenguajes de programación. Dicho de otro modo, las instrucciones básicas son independientes del lenguaje de programación. La clasificación más corriente es: Instrucciones de Comienzo y Fin Instrucciones de transferencia Instrucciones de entrada Instrucciones de salida Instrucciones de control

Instrucciones de Comienzo y Fin Son las instrucciones que ordenan el comienzo o fin del algoritmo. Todo programa debe comenzar con la instrucción INICIO o COMENZAR o su simbología correspondiente Todo programa debe finalizar con la instrucción FIN o PARAR o su simbología correspondiente.

Instrucciones de transferencia Aritméticas Cualquier operación aritmética que se desea realizar es llamada con este nombre. Tienen dos etapas: La ejecución de la operación, que implica la obtención de un resultado. Una transferencia para almacenar en un campo de la memoria el resultado obtenido. La forma general de la instrucción aritmética es: b  a o a = b donde: a es el nombre de una variable donde se almacena el resultado de b, y b es una expresión aritmética Ejemplo: Sumar el contenido de los campos A y B La instrucción sería A + B  C o C = A + B

Instrucciones de entrada Esta instrucción introduce datos desde algún dispositivo de entrada. Una instrucción de Entrada implica la introducción de datos en la memoria principal del ordenador desde dispositivos externos a la misma, por ejemplo, el teclado, un diskette, etc.- En la memoria principal solo pueden guardarse valores mediante su almacenamiento en variables. Por eso, cualquier operación de entrada lleva implícita la asignación del valor introducido en una variable de memoria a la que se deberá hacer referencia cuando se necesite.

Ejemplo Si se tiene una instrucción de este tipo: 1 Ejemplo Si se tiene una instrucción de este tipo: 1. Leer (A, B, C) Lo que se lee es 10, 20, 30 y se asignarán a las variables los siguientes valores: A = 10 B = 20 C = 30 2. Leer (Nombre, Domicilio) Lo que se lee es Juana, San Juan 1220 y se asignarán a las variables lo siguiente: Nombre = Juana Domicilio = San Juan 1220

Instrucciones de salida Permiten la salida de datos desde la memoria principal del ordenador hacia dispositivos externos de salida; por ejemplo impresoras, pantalla, disquete, disco duro, etc Ejemplo Si queremos imprimir o visualizar en pantalla los valores de las variables anteriores A, B y C, el resultado sería: 10, 20, 30

Acciones simples Asignación: Almacena en una variable el resultado de evaluar una expresión. Variable = expresión Ejem: numero = 5 Entrada: Toma un dato del dispositivo estándar de entrada y lo almacena en la variable. Leer Variable Ejemplos: Leer NombrePersona Leer Alumno, Calificacion Salida: Imprime en el dispositivo estándar de salida el resultado de evaluar una expresión. Escribir expresión Escribir numero Escribir numero * 2 Las instrucciones Leer y escribir no son en realidad acciones primitivas en ningún lenguaje de programación, pero conviene considerarlas así desde el punto de vista del diseño (Este es un ejemplo de diseño descendente).

Sentencias de control Se denominan sentencias estructuradas y controlan el flujo de ejecución de otras instrucciones Secuencia Alternativa Alternativa simple Alternativa doble Alternativa múltiple Repeticiones o bucles Mientras Repetir Para

Sentencias de control: Secuencia Las instrucciones se ejecutan en el mismo orden en el que aparecen escritas. Utilizamos punto y coma como separador de instrucciones que están en la misma línea. En php todas las sentencias deben estar separadas por ‘;’ esten o no en la misma línea. PSEUDOCÓDIGO: Inst_1 Inst_2 Inst_3 … Inst_N

Ejemplo sentencias de control: Secuencia Calcular la nota media de dos calificaciones introducidas por teclado

Diagrama de Flujo

Objetos del programa. Variables y constantes Podemos considerarlos como los recipientes de los datos que manipula el programa. Será necesario indicar cuáles son sus nombres y sus tipos, lo que se hará previamente a la descripción del conjunto de instrucciones que forman el algoritmo. El conjunto de objetos de un programa se denomina entorno.

Objetos del programa. Variables y constantes Declaramos primero el nombre de la variable o constante y luego el tipo Entorno: i:entero; nota:real; nombre: alfanumerico; Declaramos primero el tipo y luego el nombre de la variable o constante Entorno: entero i, j; real nota; alfanumerico nombre; Utilizaremos cualquiera de las dos notaciones, lo importante es que hay que definir previamente a su utilización el nombre y tipo de los objetos con los que trabajaremos. En C++ se utiliza la segunda notación En PHP no hace falta declarar los objetos

Ejercicio 3. Resuelto Algoritmo que toma como dato de entrada un número que corresponde a la longitud de un radio y escribe la longitud de la circunferencia, el área del circulo y el volumen de la esfera. Objetos (constantes y variables) PI : Constante (3.1415) Radio : variable para tomar el dato de entrada Longitud : variable para calcular la longitud de la circunferencia Area : variable para calcular el área de la circunferencia Volumen : variable para calcular el volumen de la circunferencia Formulas matemáticas Longitud = 2∏r Área = ∏r2 Volumen = 4/3 ∏r3

Ejercicio 4. Propuesto Algoritmo que lee dos números, calculando y escribiendo el valor de su suma, resta, producto y división.

Sentencias de control: Alternativa simple PSEUDOCÓDIGO: Si CONDICION entonces Inst_1; Inst_2; …; Inst_N; FinSi; En esta instrucción, la condición es una expresión Booleana. Las instrucciones Ins_1, Inst_2, …;Inst_N; se ejecutan solamente si la evaluación de la condición produce el resultado VERDADERO; en otro caso no hace nada.

Ejercicio 5. Resuelto. Algoritmo que lea un número por el teclado e indique si el número leído es mayor que 10

Diagrama de Flujo

Ejercicio 6. Propuesto Diseñe un algoritmo que, dado un número que entra como dato, nos indique si está contenido dentro de los límites predeterminados. El límite inferior es de 100 y el superior de 200. Programe un algoritmo que, dados dos números que entran como datos, indique si uno es divisor del otro. Implementar un algoritmo en el que dada la temperatura máxima del mes y la temperatura medida en el día de hoy, actualice el valor de la máxima si la temperatura leída hoy es mayor que dicha máxima.

Sentencias de control: Alternativa doble PSEUDOCÓDIGO: Si CONDICION entonces Inst_1; Inst_2; …; Inst_N; Sino Inst_N+1; Instr_N+2; …; Inst_M; FinSi; En esta instrucción, la condición es una expresión Booleana. Si la CONDICION es verdadera se ejecutan Inst_1, …Inst_N; Si la CONDICION es falsa se ejecutan Inst_N+1; …;Inst_M Si se ejecuta una parte nunca se ejecutará la otra. Dentro de las instrucciones que forman los bloques del SI puede haber más instrucciones SI. O sea Inst_X puede ser una sentencia SI.

Ejercicio 7. Resuelto Algoritmo que lee dos números y nos dice cuál es el mayor o si son iguales. Objetos: num1 y num2 variables de tipo entero

Ejercicio 7 (continuación …)

Ejercicio 8. Resuelto. Algoritmo que lea una calificación por teclado y nos indique si el alumno está suspenso o aprobado.

Diagrama de Flujo

Sentencias de control: Alternativa múltiple PSEUDOCÓDIGO: Opcion Expresion de V1: Instrucción/es_1; V2: Instrucción/es_2; V3: Instrucción/es_3; ... Otro: Instrucción/es_N; FinOpcion; La expresión puede ser alfanumérica o numérica entera. Si su valor es V1 se ejecutan las instrucciones 1, si es V2 las instrucciones 2, etc. Si el valor no coincide con ningún valor de los anteriores se ejecutará la opción “Otro”. En C# la expresión será de un tipo integral o string

Sentencias de control: Alternativa múltiple Esta sentencia no es imprescindible. Se puede sustituir por un conjunto de Alternativas dobles anidadas. En el supuesto de que no pongamos el valor “Otro” y la expresión no sea igual a ningún valor no ejecutamos ninguna sentencia. Ejemplo: Algoritmo que lea un número entero entre 1 y 4 y lo escriba en letra por pantalla.

Ejercicio 10. Propuesto Algoritmo que lee una calificación numérica entre 0 y 10 y la transforma en calificación alfabética, escribiendo el resultado 0<=Nota<3 MD 3<=Nota<5 INS 5<=Nota<6 SUF 6<=Nota<7 BIE 7<=Nota<9 NOT 9<=Nota<=10 SOB En un determinado comercio se realiza un descuento dependiendo del precio de cada producto. Si el precio es inferior a 6 €, no se hace descuento; si es mayor o igual a 6 € y menor que 60 € se hace un 5% de descuento, y si es mayor o igual a 60 € se hace un 10% de descuento. Realizar el algoritmo que lee el precio de un producto y nos calcula y escribe su precio final. Realizar un algoritmo que lea tres números por teclado y nos indique cual de ellos es el mayor.

Ejercicio 11. Propuesto Algoritmo que lee como dato de entrada un año y nos dice si se trata de un año bisiesto o no. Se sabe que son bisiestos todos los años múltiplos de 4, excepto los que sean múltiplos de 100 sin ser múltiplos de 400. Algoritmo que lee como datos de entrada una fecha expresada en día (1..31), mes (1..12), y año y nos dice la fecha que será el día siguiente. Se supondrá que febrero tiene siempre 28 días. Algoritmo que recibe como datos de entrada una hora expresada en horas, minutos y segundos que nos calcula y escribe la hora, minutos y segundos que serán transcurrido un segundo.

Sentencias de control: Repeticiones o bucles En todo bucle hay una o varias acciones que se han de repetir. Existe una condición que determina el número de repeticiones. Es fundamental que el valor de la condición sea afectado por las acciones dentro del bucle para asegurar la terminación del bucle en algún momento. Según en el punto en el que se evalúe la condición o la forma de esta tendremos las siguientes sentencias: Mientras (while) Hacer … Mientras (do … while) Para (for)

Sentencias de control: Bucle mientras PSEUDOCÓDIGO: Mientras CONDICION hacer Instrucción_1; Instrucción_2; ... FinMientras; Se evalúa la condición antes de iniciar el bucle Se repiten sucesivamente las instrucciones mientras que la condición sea verdadera Las instrucciones pueden no ejecutarse si no se cumple la primera vez la condición.

Ejercicio 13. Resuelto Realizar un algoritmo que lea números por teclado hasta que introduzcan el número -1

Diagrama de Flujo

Sentencias de control: Bucle hacer .. mientras PSEUDOCÓDIGO: Hacer Instrucción_1; Instrucción_2; ... Mientras CONDICION; Se evalúa la condición después de ejecutar las instrucciones del bucle. Se repiten sucesivamente las instrucciones mientras que la condición sea verdadera Las instrucciones del bucle siempre se ejecutan al menos una vez.

Sentencias de control: Bucle Para Para Vc=Vi a Vf incremento Inc hacer Instrucción_1; Instrucción_2; ... FinPara; Se repiten las instrucciones Inst_1, Inst_2, etc, un número fijo de veces. Tantas como sucesivos valores toma la variable de control del bucle Vc desde el inical Vi incrementándose en cada repetición en Inc, hasta que el valor de Vc supera a Vf. Si el incremento es +1, que es el caso más habitual, puede omitirse la parte “incremento Inc” Esta estructura este diseñada para manejar más fácilmente los contadores

Contadores Un contador es un objeto que se utiliza para contar cualquier evento que pueda ocurrir dentro de un programa. Suelen estar asociados a algún bucle. En general suelen contar de forma natural desde 0 y de 1 en 1, aunque se pueden realizar otros tipos de cuenta necesarios en algunos procesos. Dos operaciones básicas: Inicialización: Todo contador se inicializa a 0, si realiza cuenta natural o a Vi, valor inicial. Contador = 0; Contador = Vi; Contabilización o incremento: Cada vez que aparece el evento a contar se ha de incrementar el contador en 1 si se realiza cuenta natural o en In si se realiza otro tipo de cuenta Contador = Contador + 1; Contador = Contador + In;

Ejercicio 15. Resuelto Realizar un algoritmo que visualice por pantalla los 10 primeros números

Diagrama de flujo

Ejercicio 16. Propuesto Realizar un algoritmo que muestre por pantalla los números pares menores de 100. Realizar un algoritmo que muestre por pantalla los números múltiplos de 5 menores que 10000. Algoritmo que lea un número por teclado e imprima por pantalla todos los números positivos pares menores que N

Acumuladores Son objetos que se utilizan en un programa para acumular elementos sucesivos con una misma operación. En general se utilizan para calcular sumas y productos, sin descartar otros posibles tipos de acumulación. Suelen estar asociados a algún bucle. Se diferencian de los contadores en que el incremento es el valor de una variable que varia en cada ciclo del bucle. Dos operaciones básicas: Inicialización: Todo acumulador necesita ser inicializado con un valor neutro de la operación a acumular. Suma = 0; Producto = 1; Acumulación: Suma = Suma + Elemento; Producto = Producto * Elemento;

Ejercicio 17. Resuelto Realizar un algoritmo que calcule la suma y el producto de los 10 primeros números naturales Realizar traza

Interruptores (switches) Los interruptores son objetos que se utilizan en un programa y sólo pueden tomar dos valores VERDADERO o FALSO. Realizan la función de transmitir información de un punto a otro del programa. Actúan como recordatorios manteniendo características de objetos o cálculos que estuvieron presentes en un momento anterior de la ejecución de un programa. Se utilizan iniciándolos con un valor y en los puntos que corresponda se cambian al valor contrario, de tal forma que examinando el valor posteriormente podemos realizar la transmisión de información que deseamos. Suelen ser de tipo booleano.

Ejercicio 18. Resuelto Algoritmo que lee una secuencia de notas (con valores de 0 a 10) que termina con el valor -1 y nos dice si hubo algún suspenso.

Conmutadores Un conmutador es un objeto que sólo puede tomar dos valores opuestos (Verdadero y Falso), que se utiliza para conmutar entre dos procesos distintos de forma alternativa. Se utilizan dándoles un valor inicial y en los puntos donde corresponda se niegan, de tal forma que adquieran el valor contrario al anterior. Suelen ser de tipo booleano.

Ejercicio 19. Resuelto Algoritmo que suma independientemente los pares y los impares de los números comprendidos entre 1 y 100.

Ejercicio 20. Propuesto Algoritmo que lee un número entero positivo N y calcula e imprime el factorial de N!. Si lee un número negativo indica con un mensaje que no es posible la operación. Algoritmo que lee un número X y otro entero positivo N y calcula la N-ésima potencia de X (sin utilizar el operador de potencia). Algoritmo que obtenga el producto de dos números enteros positivos mediante sumas sucesivas. Algoritmos que obtenga el cociente y el resto de dos números enteros positivos mediante restas. Algoritmo que lee tres números A, B, C, y los imprime en orden creciente e indica si fueron introducidos en ese orden. Algoritmo que lee una secuencia de 10 números y obtiene e imprime cuantos hay positivos, negativos y nulos. Algoritmo que lee una secuencia de números no nulos, terminada con la introducción de un 0, y obtiene e imprime el mayor, visualizando un mensaje de si ha leído algún número negativo.

Ejercicio 21. Propuesto Algoritmo que lea un número por teclado y nos diga si es primo. Algoritmo que genera la lista de los N primeros números primos, siendo N el dato de entrada. Algoritmo lea un número N y muestre por pantalla los números primos menores que N. Algoritmo que calcula e imprime los números perfectos menores que 1000. (Un número es perfecto si la suma de sus divisores, excepto él mismo, es igual al propio número.). Algoritmo que evalúa un polinomio de grado N. Los datos de entrada son el valor de la variable y los coeficientes. Algoritmo que lee un número entero positivo N e imprime su tabla de multiplicar. Algoritmo que lee un número entero y positivo N y escribe la lista de sus divisores. Algoritmo que lee un número entero y positivo y calcula y escribe la suma de sus divisores.