Notación algorítmica (seudocódigo en castellano) (fecha: 2013-10-30)



Documentos relacionados
ESTRUCTURA DE DATOS: ARREGLOS

Introducción a la Computación TFA

SOLUCION EXAMEN junio 2006

OPERADORES LÓGICOS Y DE COMPARACIÓN EN PHP. PRIORIDADES. EJEMPLOS. EJERCICIOS RESUELTOS. (CU00818B)

7. Manejo de Archivos en C.

Modulo 1 El lenguaje Java

Abelardo Pardo. Iria Estévez Ayres. Damaris Fuentes Lorenzo. Pablo Basanta Val. Pedro J. Muñoz Merino. Hugo A. Parada.

Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.

PRÁCTICA 1: INTRODUCCIÓN A LA ALGORÍTMICA BOLETIN DE PROBLEMAS RESUELTOS. (Curso 03-04)

Tipos Abstractos de Datos

Arrays y Cadenas en C

Visual Basic 1. Empleo de módulos y Procedimientos. Procedimientos definidos por el usuario

Tema 7: Programación con Matlab

Objetivos. Contenidos. Revisar los principales conceptos de la lógica de primer orden

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

ARREGLOS DEFINICION GENERAL DE ARREGLO

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso v1.0 (05.03.

SEMINARIO DE ESPECIFICACIONES ALGEBRAICAS

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

PRACTICA 6. VECTORES Y MATRICES.

Tipos de datos. Lección 1. Programación. Curso J. A. Bañares, Pedro J. Álvarez, S. Velilla

Estructura de Datos y de la Información. Pilas y expresiones aritméticas

Diseño de algoritmos.

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Análisis amortizado El plan:

Ejemplo de lectura por teclado de un número entero: int n; System.out.print("Introduzca un número entero: "); n = sc.nextint();

Una variable de clase escalar tiene un nivel de indirección igual a 1. Por ejemplo, las variables i, b y x definidas como se muestra a continuación.

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta

Soporte lógico de computadoras

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

Proyecto Unico Interpretador de SetCalc

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)

Curso PHP Módulo 1 R-Luis

TIPOS DE VARIABLES EN PHP. DECLARACIÓN Y ASIGNACIÓN. LA INSTRUCCIÓN ECHO PARA INSERTAR TEXTO O CÓDIGO. (CU00816B)

Estructuras de Repetición Repita Mientras

Introducción a los Tipos Abstractos de Datos

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

Capítulo 1. MANUAL DE USUARIO

MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007

La plantilla propone aprovechar esta estructura en común y sólo modificar el contenido del área del documento que sea diferente.

Para crear una lista como la anterior, primero escribe la información, y después selecciona el texto y aplícale el formato de viñetas.

Contenidos. Archivos en C++ Archivos en C++ Introducción

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS

Introducción a la programación orientada a objetos

PHP y MySQL. Indice: Switch Bucles For While do...while

Examen Junio- Grupo A Lunes 17 de Junio - Programación en C++ Pág. 1

Práctica de laboratorio Uso de la Calculadora de Windows con direcciones de red

Esta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro

Sobre la lectura y escritura de datos en FORTRAN.

INTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS

Clases y Objetos. Informática II Ingeniería Electrónica

Integración de Infosms a través de correo electrónico Noviembre 2005

Estructuras de Datos y Algoritmos Práctica I - Curso 2012/13

El soporte del sistema operativo. Hace que un computador sea más fácil de usar. Permite que los recursos del computador se aprovechen mejor.

Módulo 9 Sistema matemático y operaciones binarias

Preliminares. Tipos de variables y Expresiones

Introducción a PHP. * No es necesario declarar previamente las variables.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

GENERACIÓN DE ANTICIPOS DE CRÉDITO

[Guía N 1 Introducción al Portal WEB de la Universidad Simón Bolívar]

En el presente capítulo se describe la programación del instrumento virtual y cómo

2_trabajar con calc I

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

Escuela Politécnica Superior de Ingeniería Departamento de Ingeniería Informática

SIIGO Pyme. Templates. Cartilla I

Programación. Ejercicios Tema 4 Estructuras de Control Repetitivas

Seminario Profesional MS PROJECT MODULO 2: Introducción y organización de las tareas

AUTOR CARLOS EDUARDO BUENO VERGARA JORGE ARMANDO BUENO VERGARA USO DE LOS OBJETOS DEL PROGRAMA. Dfd INFORMÁTICA II PROFESOR. JOSÉ FRANCISCO AMADOR

Herramientas computacionales para la matemática MATLAB: Otros tipos de datos

Ejemplos de conversión de reales a enteros

Creación de Funciones de Conducción

Curso Internet Básico - Aularagon

CCNA Discovery Networking para el hogar y pequeñas empresas

1 ELEMENTOS BASICOS DEL LENGUAJE

Algoritmos y Diagramas de Flujo 2

Prof. Dr. Paul Bustamante

Estructura de datos (arreglos) Vectores y Matrices

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES

Manual para el uso del Correo Electrónico Institucional Via Webmail

Matemática de redes Representación binaria de datos Bits y bytes

Gestión de Permisos. Bizagi Suite. Copyright 2014 Bizagi

UN SIMULADOR DE UNA MAQUINA COMPUTADORA COMO HERRAMIENTA PARA LA ENSEÑANZA DE LA ARQUITECTURA DE COMPUTADORAS

Tema 2: La clase string

Práctica 2: Simón dice

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

Manual de uso: Reservas On Line GOLF

Elementos de Microsoft Word

Estructuras de Datos y Algoritmos Tecnólogo en Informática

Sintaxis y Convenciones de Java. M. en C. Erika Vilches

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

ESTRUCTURAS CONDICIONALES EN PHP: SWITCH, CASE, BREAK. EJEMPLOS DE USO Y EJERCICIOS RESUELTOS. (CU00820B)

Introducción a MS Project. Vista diagrama de gantt

Academia técnica de computación A.T.C.

VENTANILLA ÚNICA - REGISTRO EN LÍNEA. Ministerio de Comercio, Industria y Turismo. Registro Electrónico de Usuarios. para la VUCE

Manual del Usuario Groupware

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.

Transcripción:

Notación algorítmica (seudocódigo en castellano) (fecha: 2013-10-30) 1. Tipos de datos predeidos booleano carácter natural {incluímos el 0 en los naturales, comentarios entre llaves} entero real cadena 2. Deición de constantes constantes letraa = A ; maxnum = 100 {usamos el punto y coma para separar} hoy = "martes" {es una cadena} pi = 3.1416 3. Deición de nuevos tipos de datos tipos mes = (ene,feb,mar,abr,may,jun,jul,ago,sep,oct,nov,dic) {tipo enumerado} mesverano = jul..sep {tipo subrango de otro tipo discreto} día = 1..31 fecha = registro {tipo registro (o estructura), agregación de campos} eldía: día elmes: mes elaño: natural freg pluviometría = vector[mes] de real {tipo vector (array)} fiestas = vector[1..maxnum] de fecha secfechas = fichero de fecha {tipo fichero binario de fechas} entrada = fichero de texto {tipo fichero de texto, i.e., secuencia de líneas (una línea es una secuencia de caracteres)} 4. Declaración de contador: natural:= 0 {podemos inicializar la variable al declararla} éxito, error: booleano cumpleaños,aniversario: fecha festivos,patronos: fiestas 5. Instrucción de asignación contador:= contador+1 error:= falso; éxito:= verdad; éxito:= not error and (contador>3) or éxito cumpleaños.eldía:= 13 festivos[2].elmes:= sucesor(ene) {operaciones sucesor y predecesor para enumerados} cumpleaños:=aniversario {asignación entre registros: todos los campos se asignan} festivos:=patronos {asignación entre vectores: todas las componentes se asignan} 6. Instrucciones de entrada/salida escribir( Introduzca su edad: ); {escribe el mensaje en el dispositivo estándar de salida (pantalla, por ejemplo)} leerlínea(edad); {si edad es una variable entera, lee un valor de tipo entero desde el dispositivo estándar de entrada (teclado, por ejemplo), lo asigna a edad y luego lee la marca de de línea} escribirlínea( La edad introducida es,edad); {escribe el mensaje y el valor de edad y luego salta de línea} escribir( Introduce tres letras: ); {escribe el mensaje} 1

leer(a,b,c); {si a,b,c son de tipo carácter, lee tres caracteres y los asigna a las a,b,c} leerlínea; {lee la marca de de línea} 7. Instrucciones condicionales sino sino_ sino_ sino selección <condición 1>: <secuencia de instrucciones>; <condición 2>: <secuencia de instrucciones>; <condición n>: <secuencia de instrucciones>; [ otroscasos: <secuencia de instrucciones> ] fselección {se requiere que las condiciones sean excluyentes entre sí; una vez ejecutada la secuencia de instrucciones de la primera condición verdadera se termina la instrucción de selección} 8. Instrucciones iterativas para <variable_de_tipo_discreto>:=<valor_inicial> hasta <valor_al> hacer fpara para <variable_de_tipo_discreto>:=<valor_inicial> descendiendo hasta <valor_al> hacer fpara mientrasque <condición> hacer fmq repetir hasta que <condición> 9. Procedimientos y funciones procedimiento <nombre>(ent <parámetros_1>:<tipo_1>; sal <parámetros_2>:<tipo_2>; e/s <parámetros_3>:<tipo_3> ) {ent,sal,e/s significa parámetro de entrada, salida, entrada y salida, respec.} <declaraciones locales de constantes, tipos,, proced., funciones> 2

{un procedimiento es una acción o instrucción virtual; el programa principal es un procedimiento sin parámetros} función <nombre>(<parám_1>:<tipo_1>; <parám_2>:<tipo_2> ) devuelve <tipo_fun> <declaraciones locales de constantes, tipos,, proced., funciones> devuelve <valor_de_tipo_fun> {tras devolver el valor la función termina} {una función es un valor virtual, es decir, se evalúa dentro de una expresión y el resultado es un valor} 10. Módulos módulo tablas importa <lista de módulos que necesita usar> {parte pública: constantes, nombres de tipos, encabezamientos de proced. y func} {parte privada: se incluyen las def. de los tipos cuyos nombres aparecen en la parte pública, otros tipos privados, el código de procedimientos y funciones} 11. Módulos genéricos módulo genérico listasgenéricas parámetros tipo elemento con función < (e1,e2:elemento) devuelve booleano tipo lista procedimiento crear(sal l: lista) procedimiento añadirúltimo(e/s l: lista; ent e:elemento) 12. Uso de módulos genéricos a. Para deir otro tipo también genérico: módulo genérico pilasgenéricas importa listasgenéricas parámetro tipo elemento tipo pila tipo pila = listasgenéricas.lista {el tipo do en listasgenéricas} procedimiento crear(sal p:pila) listasgenéricas.crear(p) {del módulo} b. Concretar un modulo genérico y utilizarlo: importa pilasgenéricas; 3

modulo pila_naturales = pilasgenéricas(natural); {que ofrece el tipo: pila} {para declarar o parámetros:} p: pila; {o bien: p:pila_naturales.pila} {para utilizar sus operaciones:} crear(p); {o bien: pila_naturales.crear(p);} 13. Datos puntero tipo pila = undato {tipo puntero (o referencia) a undato} undato = registro dato:natural siguente:pila freg p,q:pila Valor especial (constante) de cualquier tipo puntero: nil (ninguna dirección) p:=nil Instrucciones con punteros: nuevodato(p); p.dato:=3 q:=p disponer(p) si p=q entonces 14. Instrucciones de creación y uso de ficheros A continuación se muestra un esquema básico del trabajo con ficheros de texto o binarios, junto con las instrucciones disponibles en pseudocódigo para trabajar con ellos. Ficheros de texto f: fichero de texto; d: carácter; {Asociar la variable f con el fichero externo de nombre Leeme.txt :} asociar(f, Leeme.txt ); {Inicializar el fichero para escritura: el fichero externo es creado vacío} iniciarescritura(f); {Para escribir en un fichero de texto se considerarán también disponibles las mismas instrucciones que para escribir en pantalla o salida estándar, con el mismo significado y la misma sintaxis salvo porque se les añade un primer parámetro que es la variable fichero. Ejemplo:} escribir(f,d); {escribe en f el dato d al al del fichero} {Inicializar para lectura el fichero asociado con f, la posición de lectura para el fichero f se situa para que el primer dato que se lea sea el primero del fichero:} iniciarlectura(f); {Para saber si ya no quedan más datos que leer en el fichero (se ha leído ya el último dato), está disponible la función: Fichero(f) (devuelve booleano indicándolo)} mientrasque not Fichero(f) hacer {Para leer de fichero de texto se considerarán también disponibles las mismas instrucciones que para leer de teclado o entrada estándar, con el mismo significado y la misma sintaxis salvo porque se les añade un primer parámetro que es la variable fichero. Ejemplo:} leer(f,d); {lee el siguiente dato del fichero f y lo deja en d (lee carácter), y deja disponible para ser leído el siguiente dato en el fichero} 4

fmq; {Eliminar la asociación entre f y el fichero externo:} disociar(f); Ficheros binarios Similares a los ficheros de texto, pero en ellos la unidad mínima de información para la lectura o escritura es un dato del tipo especificado en la creación de la variable fichero (y por supuesto no están estructurados en líneas). ff: fichero de fecha {tipo fichero binario de fechas. En el se leerán o escribirán datos de tipo fecha} dia: fecha {asociar la variable ff con el fichero externo de nombre misdatos.dat :} asociar(ff, misdatos.dat ); {Inicializar para escritura: el fichero externo es creado vacío y la posición de escritura en el fichero se mantendrá siempre al al del mismo} iniciarescritura(ff); escribir(ff,dia); {escribe en ff el dato dia, siempre al al del fichero} iniciarlectura(ff); {Inicializar para lectura el contenido del fichero asociado con ff, la posición de lectura para el fichero ff queda justo por delante del primer dato del fichero} {Para saber si ya no quedan más datos que leer en el fichero (se ha leído ya el último dato), está disponible la función: Fichero(ff) (devuelve booleano indicándolo)} mientrasque not Fichero(ff) hacer {Para leer un dato de un fichero binario:} leer(ff,dia); {lee la siguiente fecha en el fichero ff y la deja en dia, y deja disponible para ser leído el siguiente dato del fichero} fmq; {eliminar la asociación entre ff y el fichero externo:} disociar(ff); 5