INTRODUCCION A LA INFORMATICA Informática es la ciencia que estudia el tratamiento automático y racional de la información.

Se dice que el tratamiento es automático por ser máquinas las que realizan los trabajos de captura, proceso y presentación de la información, y se habla de racional por estar todo el proceso definido a través de programas que siguen el razonamiento humano. Dentro de la ciencia de la informática se encuentran incluidas una serie de funciones de las que mencionamos a continuación las más importantes: • • • • El desarrollo de nuevas máquinas El desarrollo de nuevos métodos de trabajo La construcción de aplicaciones informáticas Mejorar los métodos y aplicaciones existentes

Desde la aparición de las primeras máquinas de cálculo, no se ha parado la investigación para obtener máquinas más potentes, rápidas, pequeñas y baratas. Por otra parte, en paralelo con el desarrollo de estas máquinas, tampoco se detiene la investigación para conseguir nuevos métodos de trabajo, novedosas formas de explotación de las máquinas e innovadores modos de compartir los recursos. La función de creación de aplicaciones informáticas se refiere al desarrollo de programas para que las máquinas realicen el trabajo para el que han sido creadas. ELEMENTOS Y CONCEPTOS FUNDAMENTALES Desde el punto de vista informático, el elemento físico utilizado para el tratamiento de la información es el computador, computadora u ordenador, que puede ser definido de la siguiente manera: es una máquina compuesta de elementos físicos, en su mayoría de origen electrónico, capaz de realizar una gran variedad de trabajos a gran velocidad y con gran precisión, siempre que se le den las instrucciones adecuadas. El conjunto de órdenes que se dan a una computadora para realizar un proceso determinado se denomina programa, mientras que el conjunto de uno o varios programas más la documentación correspondiente para realizar un determinado trabajo, se denomina aplicación informática El término sistema informático se utiliza para nombrar al conjunto de elementos necesarios (computadora, terminales, impresoras, etc.) para la realización y explotación de aplicaciones informáticas. La información es el elemento que hay que tratar y procesar cuando en una computadora ejecutamos un programa, y se define como todo aquello que permite adquirir cualquier tipo de conocimiento; por tanto, existirá información cuando se da a conocer algo que se desconoce. Los datos que maneja un programa son en un principio información no elaborada y una vez procesados (ordenados, comparados, sumados, etc.) constituyen lo que se denomina información útil o simplemente resultados. Para que una información sea tratada necesita transmitirse o trasladarse de un lugar a otro, y para que exista transmisión de información son necesarios tres elementos: • • • El emisor que da origen a la información El medio que permite la transmisión El receptor que recibe la información

Al conjunto de operaciones que se realiza sobre una información se le denomina tratamiento de la información. Estas operaciones siguen una división lógica que se representa en el siguiente esquema: Entrada Recogida de datos Depuración de datos Almacenamiento de datos Aritmético Proceso Lógico Recogida de resultados Salida Distribución de resultados
Preparado por Prof: Luis González T. Sólo para fines docentes 1

Tratamiento de la información

En términos generales se denomina entrada al conjunto de operaciones cuya misión es tomar los datos del exterior y enviarlos a la computadora; para ello en ocasiones es necesario realizar operaciones de depuración o validación de los mismos. Estos datos deben quedar en la memoria de la computadora para su posterior tratamiento. Al conjunto de operaciones que elaboran los datos de entrada para obtener los resultados se le llama proceso o algoritmo y consiste generalmente en una combinación adecuada de operaciones de origen aritmético y test de tipo lógico. Por último, se denomina salida al conjunto de operaciones que proporcionan los resultados de un proceso a las personas correspondientes. Se engloban en la salida también aquellas operaciones que dan forma a los resultados y los distribuyen adecuadamente. El algoritmo necesario para la resolución de un problema queda definido cuando una aplicación informática es analizada, de tal forma que posteriormente cada proceso se codifica en un lenguaje que sea reconocido por la máquina, y tras una preparación final obtendremos una solución ejecutable por la computadora. La automatización de un problema para que pueda ser desarrollado por una computadora se representa en el siguiente esquema:
Planteamiento del problema Análisis del mismo Algoritmo de solución Ejecución por computadora

CICLO DE VIDA DE UNA APLICACION INFORMATICA Una aplicación informática se compone de uno o varios programas interrelacionados que tienen por objeto la realización de una determinada tarea de forma automática mediante el uso de un sistema informático. Ciclo de vida de una aplicación informática es el proceso que se sigue desde el planteamiento de un problema hasta que se tiene una solución instalada en la computadora, y en funcionamiento por los usuarios finales mientras sea de utilidad El citado proceso. Se compone de varias fases, agrupadas en dos bloques bien diferenciados: FASES DEL DISEÑO FASES DE LA INSTALACION EDICION Problema ANALISIS Especificación PROGRAMACION Algoritmo CODIFICACION programa PRUEBA DE EJECUCION Aplicación EXPLOTACION Y MANTENIMIENTO MONTAJE Programa ejecutable COMPILACION Programa objeto Programa fuente

DISEÑO DEL PROGRAMA Fase de análisis: Consiste en el examen y descripción detallada de los siguientes aspectos relativos al problema: Equipo a utilizar (computador, periféricos, soportes, material auxiliar, etc.). Personal informático. Estudio de los datos de entrada (INPUT) Estudio de los datos de salida (OUTPUT) Relación entre la salida y la entrada. Descomposición del problema en módulos.
2

Preparado por Prof: Luis González T. Sólo para fines docentes

El resultado de esta fase se denomina especificación del problema, formada por e conjunto de documentos elaborados para los aspectos citados. Fase de programación: Consiste en el diseño de la solución al problema planteado en forma de algoritmo. Se debe abordar en forma sistemática, esto es, aplicando explícitamente un conjunto de técnicas, como programación estructura y diseño descendente. El resultado es un algoritmo o descripción del conjunto de acciones que deberán ser realizadas por el computador. Para su representación se utilizan diferentes notaciones, como ordinogramas, pseudocódigo, etc. Fase de codificación: En esta fase se transcribe e algoritmo resultante de la fase anterior a un lenguaje de programación concreto. Al resultado se le denomina programa, que normalmente será escrito en hojas de codificación. INSTALACION Y EXPLOTACION DE PROGRAMA Fase de edición: Escritura del programa fuente a partir de las hojas de codificación en la memoria del computador, grabando en algún soporte permanente. Se realiza con la ayuda de un programa del sistema denominada editor. Fase de compilación: Traducción del programa fuente a lenguaje de máquina cuyo resultado es el programa objeto. Para ello se dispone de programas compiladores o intérpretes, que, además, comprueban la correcta sintaxis de programa. Fase de montaje: En los programas compilados es necesario añadir al programa objeto algunas rutinas del sistema o algunos subprogramas externos que se hayan compilados separadamente. De ello se encarga el programa montador (linker) Fase de ejecución: Consiste en ejecutar el programa sucesivas veces con diferentes datos de prueba para asegurar su correcto funcionamiento. Fase de explotación y mantenimiento: La explotación consiste en e uso continuo y habitual por parte de os usuarios de la aplicación mientras tenga utilidad. Paralelamente a la explotación de una aplicación se realiza el mantenimiento de la misma, consistente en la comprobación periódica de su buen funcionamiento. ERRORES Según el momento fase en que se detectan, los errores se clasifican de la siguiente manera: Errores de compilación: Los errores en tiempo de compilación o sintácticos, corresponden al incumplimiento de las reglas sintácticas del lenguaje, por ejemplo una palabra reservada del lenguaje mal escrita, una instrucción incompleta, etc. Estos errores son los más fáciles de corregir, ya que son detectados por el compilador, el cual dará información sobe el lugar donde está y la naturaleza de cada uno de ellos mediante un mensaje de error. Errores de ejecución: Se deben generalmente a operaciones no permitidas, como dividir por cero, leer un dato no numérico en una variable numérica. Se detectan porque se produce una parada anormal del programa durante su ejecución y se dice entonces que el programa se ha caído o que ha sido abortado por el sistema. Son más difíciles de detectar corregir que os errores sintácticos, ya que ocurren o no. Errores de lógica: Corresponden a la obtención por el programa de resultados que n son correctos, y la única manera de detectarlos es realizando un numero suficiente de ejecuciones de prueba con una gama lo más amplia posible de juegos de datos de prueba, comparando los datos producidos por el programa con los obtenidos a mano para esos mismos datos. Son los más difíciles de corregir, no sólo por a dificultad para detectarlos, sino porque se deben a la propia concepción y diseño del programa. Errores de especificación: Es posiblemente el peor tipo de error y el más costoso de corregir. Se deben a la realización de unas especificaciones incorrectas motivadas por una mala comunicación entre el programador y quien plantea en problema. Se detectan normalmente cuando ya ha concluido e diseño e instalación del programa, por lo que su corrección puede suponer la repetición de gran parte del trabajo realizado.
Preparado por Prof: Luis González T. Sólo para fines docentes 3

CALIDAD DE LOS PROGRAMAS Para un determinado problema se pueden construir diferentes algoritmos de resolución o programas. Las características generales que debe reunir un programa son las siguientes:
-

Legibilidad: Ha de ser claro y sencillo, de tal forma que facilite su lectura y comprensión. Fiabilidad: Ha de ser capaz de recuperarse frente a errores o usos inadecuados. Portabilidad: Si diseño debe permitir la codificación en diferentes lenguajes de programación, así como su instalación en diferentes sistemas. Modificabilidad: Ha de facilitar su mantenimiento, esto es, las modificaciones y actualizaciones necesarias para adaptarlo a una nueva situación. Eficiencia: Se deben aprovechar al máximo los recursos de la computadora, minimizando la memoria utilizada y el tiempo de proceso o ejecución, siempre que no sea a costa de los requisitos anteriores.

PILARES BASICOS EN LOS QUE SE SUSTENTA LA INFORMATICA Los tres pilares básicos en que se sustenta la Informática son: • • • Elemento físico (Hardware) Elemento lógico (Software) Elemento humano (Personal informático)

Esquema básico del elemento físico (hardware) El hardware es el elemento físico de un sistema informático, es decir, todos los materiales que los componen, como el propio computador, los dispositivos externos, los cables, los soportes de la información y en definitiva todos aquellos elementos que tienen entidad física.
Memoria Principal

Entrada

U. C. P. U. C. U. A. L.

Salida

Memoria Auxiliar (Soportes magnéticos)

Unidad Central de Proceso (U.C.P.). Es el elemento principal o centro neurálgico de una computadora y su misión consiste en coordinar, controlar y ejecutar todas las operaciones del sistema informático y consta de: • • Unidad de Control (U.C.). Es la encargada de gobernar al resto de las unidades, además de interpretar y ejecutar las instrucciones controlando su secuencia. Unidad Aritmética y Lógica (U.A.L.). Es la encargada de realizar todas las operaciones elementales de tipo aritmético y de tipo lógico.

Memoria Principal. También denominada memoria interna, es el elemento encargado de almacenar los programas y los datos necesarios para que el sistema informático realice un determinado trabajo. Es importante saber que para que un programa pueda ser ejecutado en una computadora tiene que estar en esta memoria, así como los datos que necesiten ser procesados en ese momento.
-

Memoria RAM (Random Access Memory): Memoria de acceso directo, suele también llamarse Memoria de Lectura Escritura. Se utiliza para almacenar programas, datos y resultados, el usuario la puede ocupar para realizar todos los procesos que desee. La memoria RAM viene en módulos denominados SIMM de memoria y se colocan en la tarjeta madre en calzos llamados Slots.

-

Memoria ROM (Read Only Memory): Memoria sólo de lectura. Esta es una memoria permanente, ya que os programas contenidos en ella siempre están en memoria este el equipo apagado o encendido, esta memoria es indispensable para que el equipo pueda funcionar, ya que aquí se graban los programas básicos de operación que proporciona el fabricante del equipo.
4

Preparado por Prof: Luis González T. Sólo para fines docentes

La memoria del computador de mide en Megabytes. suficiente para almacenar una carácter único. Es importante aclarar que no hay diferencia entre la memoria convencional y la memoria superior. Este estándar evita que un programa emplee por accidente la misma área de memoria que uno de los periféricos de la computadora personal lo que podría trabar el sistema. Memoria extendida: Sobre los 1023 K (trabaja en línea. más rápida). es más lenta) Ocupa el disco duro como anexo a la memoria RAM Preparado por Prof: Luis González T.Los usuarios no tienen acceso a esta memoria. Sólo para fines docentes 5 . Los sistemas Recientes usan memoria Expandida. puede solicitar un bloque de 4 M de memoria extendida y usarlo para almacenar los datos. es probable que sea un sistema antiguo. Pero que simula. Si se desea agregar memoria a su sistema. más rápida) Sobre los 1023 k (Trabaja en bloques. más lenta). El DOS por si mismo no puede acceder directamente la memoria arriba de 1 M. Un computador típico tiene de 8 a 16 Megabytes de RAM y los sistemas que ejercen aplicaciones de alto poder tienen entre 32 a 64 Megabytes de RAM. se utiliza 2 porque son dígitos binarios. Resumen de memoria RAM Convencional Superior (UMA) Extendida Expandida Virtual Primeros 640 k (programas y datos) Entre 640 y 1023 k (Periféricos y Dispositivos anexos) Sobre los 1023 k (Trabaja en línea. por lo que se emplea un administrador de memoria que se llama HYMEN. En el lenguaje de computadoras esto significa algo que no existe en realidad. Uno de os sistema que más usa este método es Windows (crea archivos con extensión TMP). Cuando se tiene memoria virtual no es que se use parte de la RAM. Si su computador personal tiene un total de 8 M de RAM significa que tiene 1 M de memoria convencional y 7 M d memoria extendida. luego: 1 Bits 1 Byte 1 Kilobyte 1 Megabyte 1 Gigabyte 1 Terabyte 0ó1 8 Bit 1024 Byte 1024 Kilobyte 1024 Megabytes 1024 Gigabyte Categorías de la Memoria RAM - - Memoria convencional: El primer megabyte de RAM en el computador personal se llama memoria convencional por convención se ponen aparte los primeros 640 K de RAM para programas y datos. Memoria Superior (UMA): entre 640 y 1023 K (periféricos y dispositivos anexos). puede empezar al inicio de este bloque de 4M y leerlo completo hasta el final. Byte: se define como la unidad mínima procesable por el computador. Ciertos dispositivos tiene rangos de memoria estándar asignados a ellos. aumenta la memoria extendida. por lo que no puede accesar directamente la memoria extendida. La única diferencia es que la industria adoptó un estándar para emplearlas y los programadores de DOS por lo general no permiten que sus programas usen cualquier memoria por encima de los 640K. no la memoria expandida. Si necesita leer datos. no se puede grabar. 1 kilobyte son 1024 byte La capacidad de RAM de un computador suele expresarse en múltiplos de K -2 elevado a 8. Los controladores de dispositivos usan la UMA para códigos de datos de programa. modificar ni borrar nada de lo que contenga. Memoria Virtual: Ocupa el disco duro como anexo a la memoria RAM. Esta es la quinta categoría. si no que se recurre a usar parte del disco duro para simular más memoria RAM. Si su computador contiene memoria expandida. Esto significa que si un programa necesita tener 4 M de RAM en los cuales pueda almacenar sus datos. Un byte está compuesto por 8 bits. Los programas pueden ejecutarse de la misma manera en la memoria superior que en la memoria convencional. ¿Qué tiene de fantástico la memoria extendida? Los programas pueden accesarla en forma lineal.SYS para proporcionar el acceso a la memoria extendida. - - Memoria expandida: Sobre los 1023 K (trabaja en bloques.

recuperándola cuando sea requerida y sin que se pierda. un adaptador de vídeo presentado por IBM en 1987. son los dispositivos encargados de introducir los datos y los programas desde el exterior a la memoria principal para su utilización. con 256 colores a elegir de una paleta de 262. un adaptador de monitor de vídeo lanzado por IBM en 1984. como unidades de salida más importantes del computador tenemos: - Monitor: (pantalla) permite visualizar los datos y respuestas dadas por el computador Tipos de monitor: EGA. También denominados periféricos o unidades de salida. El EGA es capaz de emular el CGA. así como de proporcionar varios modos de vídeo adicionales.Elementos de Entrada. Sólo para fines docentes 6 . acrónimo inglés de Color Graphics Adapter (Adaptador para Gráficos Color) y el MDA. la preparan para que la máquina pueda entenderla de forma correcta. Modo de Texto: 80 x 25 Modo Gráfico: 1024 x 768 - Impresora: Memoria Auxiliar. aunque el dispositivo quede desconectado de la red eléctrica. La principal unidad de entrada es el teclado: existen de 84 y 101 teclas Elementos de Salida. son los dispositivos encargados de recoger y proporcionar al exterior los datos de salida o resultados de los procesos que se realicen en el sistema informático.144 colores. en informática. entre ellos un modo de 43 caracteres de línea y un modo gráfico con 640 píxeles horizontales por 350 píxeles verticales y 16 colores seleccionados en una paleta de 64. VGA. La característica principal de los soportes que manejan estos dispositivos es la de retener la información a lo largo del tiempo mientras se desee. - CGA :Adaptador para Gráficos Color. Preparado por Prof: Luis González T. Los nuevos modos más conocidos son el de 640 píxeles horizontales por 480 verticales. en informática. Estos dispositivos. son los dispositivos de almacenamiento masivo de información que se utilizan para guardar datos y programas en el tiempo para su posterior utilización. El adaptador VGA reproduce todos los modos de vídeo de la tarjeta EGA (acrónimo de Enhanced Graphics Adapter) e incorpora varios modos adicionales. También llamados periféricos o unidades de entrada. con 16 colores simultáneos a elegir de una paleta de 262. También denominada Memoria secundaria. acrónimo inglés de Enhanced Graphics Adaptor (adaptador de gráficos mejorado). y el modo de 320 píxeles horizontales por 200 verticales. además de recibir la información. acrónimo de Video Graphics Array.144 colores.

Dentro del bloque de instrucciones podemos diferenciar tres partes fundamentales. no dependen de otra cosa que de su propia aparición en el programa para ser ejecutadas. En un ordinograma aparece bajo el símbolo de operación en general con el siguiente formato: A=A+3 B=A Preparado por Prof: Luis González T. - Instrucción de entrada: Su misión es tomar uno o varios objetos desde un dispositivo de entrada y almacenarlos en la memoria central en los objetos cuyos identificadores aparecen en la propia instrucción. Las instrucciones primitivas pueden ser de entrada. Constituido por el conjunto de operaciones que se han de realizar para la obtención de los resultados deseados. CLASIFICACION DE LAS INSTRUCCIONES Según la función que desempeñan dentro de un programa. Instrucciones primitivas: Son aquellas que ejecuta el procesador de modo inmediato. En él se especifican todos los objetos que utiliza el programa (constantes. variables. de asignación o de salida. tipo y otras características corresponden a cada uno de ellos. como se muestra en la siguiente figura: DECLARACIONES PROGRAMA Entrada de datos INSTRUCCIONES Proceso o algoritmo Salida de resultados Entrada de Datos: La constituyen todas las instrucciones que toman los datos de entrada desde un dispositivo externo y los almacena en la memoria principal para que puedan ser procesados. Bloque de instrucciones. archivos. Salida de resultados: Conjunto de instrucciones que toman los datos finales (resultado) de la memoria principal y los envían a los dispositivos externos.) indicando las características de estos. etc.ESTRUCTURA GENERAL DE UN PROGRAMA Un programa puede considerarse como una secuencia lógica de acciones (instrucciones) que manipulan un conjunto de objetos (datos) para obtener unos resultados que serán la solución al problema que resuelve dicho programa. Si estos objetos tuviesen algún valor previo. las instrucciones se clasifican de la siguiente manera: Instrucciones de declaración: Su misión es anunciar la utilización de objetos en un programa indicando que identificador. Sólo para fines docentes 7 . registros. PARTES PRINCIPALES DE UN PROGRAMA Las partes principales de un programa están relacionadas con sus dos bloques ya mencionados. Todo programa. éste se perdería. Proceso o algoritmo: Está formado por las instrucciones que modifican los objetos a partir de su estado inicial (datos de entrada) hasta el estado final (resultados) dejando los objetos que lo contiene disponibles en la memoria principal. Este bloque se encuentra localizado siempre por delante del comienzo de las acciones. tablas. Es decir. En un ordinograma aparece con el símbolo de operación de entrada/salida de la siguiente manera: Leer dato - Instrucción de asignación: Es la que nos permite realizar cálculos evaluando una expresión y depositando su valor final en un objeto o realizar movimiento de datos de un objeto a otro. en general contiene dos bloques bien diferenciados para la descripción de los dos aspectos anteriormente citados: - - Bloque de declaraciones.

Su representación en un ordinograma es la siguiente: - CONDICION V1 INST 1 V2 INST 2 . bien tomándolos de objetos depositados en la memoria o definidos de alguna forma en la propia instrucción. dia. si se cumple. Existen tres grandes grupos de instrucciones de control: - Instrucciones alternativas: Son aquellas que controlan la ejecución de uno o varios bloques de instrucciones dependiendo del cumplimiento o no de alguna condición o del valor final de una expresión. Existen tres modelos típicos de instrucciones alternativas: Alternativa simple: Controla la ejecución de un conjunto de instrucciones por el cumplimiento o no de una condición. de tal forma que cada conjunto de instrucciones está ligado a un posible valor de la expresión. si no se cumple. Se ejecutará el conjunto que se encuentre relacionado con el valor que resulte de la evaluación de la expresión. de tal forma que si éste no aparece se ejecutará el último. si no se cumple..- Instrucción de salida: Su misión consiste en enviar datos a un dispositivo externo. En un ordinograma se representa por medio del símbolo de operación de entrada/salida de la siguiente manera: Escribir "Fecha". Sólo para fines docentes 8 .. existiendo un bloque al final que engloba otros posibles valores no definidos.. con el objetivo de controlar la ejecución de otras instrucciones o alterar el orden de ejecución normal de las instrucciones de un programa. Su representación en un ordinagrama es la siguiente: - CONDICIÓN SI NO INSTRUCCIONES INSTRUCCIONES Alternativa Múltiple: Controla la ejecución de varios conjuntos de instrucciones por el valor de una expresión. de tal forma que si se cumple. Su representación en un ordinograma es la siguiente: CONDICIÓN SI NO INSTRUCCIONES Alternativa doble: Controla la ejecución de dos conjunto de instrucciones por el cumplimiento o no de una condición. se ejecutan las instrucciones del otro. se ejecutan. de tal forma que. mes. no se ejecutan.. INST N VN OTROS INST Preparado por Prof: Luis González T.. se ejecutan las instrucciones de un bloque. agno Instrucciones de control: Son instrucciones que no realizan trabajo efectivo alguno salvo la evaluación de expresiones. generalmente lógicas..

de tal forma que éstas se ejecutan mientras se cumpla la condición. La diferencia entre este bucle y el anterior es que este bucle siempre se ejecutará una vez. hasta que la condición sea CIERTA. mientras la condición sea cierta. es decir. Su configuración en el ordinograma es la siguiente: - CONDICIÓN NO SI RANGO Instrucción REPETIR (REPEAT . Existen tres tipos de instrucciones repetitivas que dependen de su configuración: Instrucción MIENTRAS (WHILE): Controla la ejecución del conjunto de instrucciones que configuran su rango. Su configuración en el ordinograma es la siguiente: - RANGO NO CONDICIÓN SI - Instrucción PARA (FOR): Controla la ejecución de un conjunto de instrucciones que configuran un rango. Es decir. definiéndose al mismo tiempo su valor inicial. (Vi) su valor final (Vf) y el incremento (I) que esta variable de control va adquirir en cada repetición. Sólo para fines docentes 9 . que será evaluada siempre antes de cada repetición. de tal forma que éstas se ejecutan un número determinado de veces que queda definido en lo que se denomina la cabecera del bucle. de tal manera que el proceso termina cuando la variable de control supera el valor final. En ella se define un identificador de variable que va a actuar como contador asociado y que se denomina variable de control del bucle (Vc).UNTIL o DO WHILE): Controla la ejecución de un conjunto de instrucciones que configuran un rango. de tal forma que éstas se ejecutan hasta que se cumpla la condición. que será evaluada siempre después de cada repetición.- Instrucciones repetitivas: Son aquellas que controlan la repetición de un conjunto de instrucciones denominado rango mediante la evaluación de una condición que se realiza cada nueva repetición o por medio de un contador asociado. Su configuración en un ordinograma es la siguiente: Vc = Vi Vc > Vf SI NO RANGO Vc = Vc + I Preparado por Prof: Luis González T. La variable de control toma el valor inicial y va incrementándose en cada nueva repetición.

Se utilizan realizando sobre ellos dos operaciones básicas: Inicialización: Todo contador se inicializa en 0 o un valor inicial si se desea realizar otro tipo de cuenta - CONTA = 0 Incremento: Cada vez que aparece el evento a contar se ha de incrementar el contador en 1 u otro valor si se realiza otro tipo de cuenta: - CONTA = CONTA + 1 - Acumuladores: Son objetos de un programa para acumular elementos sucesivos con una misma operación. continuando la misma en la instrucción referenciada por medio de la etiqueta que figura en la propia instrucción - IR A <ETIQUETA> Instrucción de alto condicional: Altera la secuencia normal de ejecución de instrucciones si se cumple una condición.- Instrucciones de ruptura de secuencia: Alteran la secuencia normal de ejecución de instrucciones en un programa. que.). modelando su funcionamiento debido a su frecuente utilización. En general se utilizan para acumular sumas y productos. X INSTRUCCION X Instrucciones compuestas Es aquella que representa un conjunto de instrucciones que están definidas en otra parte. En un ordinograma se representa con el símbolo: -------. sin descartar otros posibles tipos de acumuladores. párrafos. Instrucción de alto incondicional: Altera la secuencia normal de ejecución de instrucciones. es de la primera hasta la última. continuando la misma en la instrucción referenciada por medio de la etiqueta que figura en la propia instrucción A>3 . - Contadores: Es un objeto que se utiliza para contar cualquier evento que pueda ocurrir dentro de un programa. como se sabe. Su presentación en un ordinograma utiliza el símbolo de subprograma: NOMBRE Comentarios: Son frases que se incluyen en un programa con intención de aclarar el cometido o función de un objeto o conjunto de instrucciones. Preparado por Prof: Luis González T. para utilizarlos hay que realizar sobre ellos las operaciones de inicialización y acumulación. . subrutinas. Al igual que los contadores. La alteración de esta secuencia hace que continúe en otro lugar definido en la propia instrucción utilizando lo que se denomina etiqueta. y de una en otra.COMENTARIO VARIABLES AUXILIARES DE UN PROGRAMA Son objetos que utiliza un programa y por la función que realizan dentro del mismo toman un nombre especial. Son llamadas subprogramas (funciones. Sólo para fines docentes 10 . etc.

5. 7.. división. Este valor puede ser cambiado o modificado. Su contrapartida es la orden FIN para dar finalizado el algoritmo. -. Instrucciones de entrada/salida de datos Preparado por Prof: Luis González T. Las variables que se encuentran a la derecha del = no cambian de valor. 3. El valor que se le asigna a una variable puede estar también dado por otra variable o por una expresión matemática. o si este tiene decimales. este se cambia por el nuevo valor.. Cuando se usa = solo la variable que está a la izquierda cambia d valor. / 4. La prioridad de los operadores matemáticos es: 1. Toda variable que aparezca al lado derecho de = debe tener un valor.ALGORITMOS EN PSEUDOLENGUAJE PSEUDOLENGUAJE: Su significado informático es: un lenguaje de programación no formal. Si dos operadores de la misma prioridad están en una misma operación se evaluará primero el que esté más a la izquierda.funciones. 4. Un algoritmo expresado en pseudolenguaje consta de los siguientes elementos:     Cabecera Variables de memoria Asignaciones Instrucciones Cabecera de un algoritmo: Entenderemos por cabecera de un algoritmo a la orden INICIO que nos permitirá dar comienzo al algoritmo. resta.( ) 2. multiplicación. Asignación: La instrucción de asignación está representada por el símbolo = que representa un signo igual. 2. Los operadores permitidos son: +. dígitos y guiones con la sola condición que el primer carácter del nombre sea una letra. Este nombre puede contener letras. Las funciones permitidas son ENT(VALOR)Retorna el valor entero de lo que esté entre paréntesis. Ej: Supongamos que tenemos las siguiente variables y valores: A B C TT X R J 2 5 10 4 5 0 0 K H 0 1 R = 4 + 3 Ahora la variable R es 7 J = A + B Ahora el valor de J es 7 K = (C * B) + 2 Ahora el valor de K es 52 H = H + 1 Ahora el valor de H es 2 Reglas prácticas: 1. Las variables tienen un valor único. para ello existe una instrucción de asignación que permite asignarle o darle un valor. MAYUS(carácter) Transforma el carácter específico a mayúsculas. Variables: Una variable es un espacio de memoria del computador a la cual se le da un nombre para identificar dicho espacio. Sólo para fines docentes 11 .. ésta cambia de valor por estar a la izquierda. exponenciación RESTO(resto de la división) PARTENT(parte entera de la división) 6. ** suma.*.. *. /.+. Si una variable aparece a ambos lados del =. 3.

no hacemos la siguiente pregunta: ¿Quiero hacer una fiesta? La respuesta sólo puede ser SI o NO. Ejemplo: Supongamos que queremos determinar el valor del sucesor de 13: INICIO NUM. INICIO NUM. SUCESOR : NUMERICAS LEER NUM SUCESOR = NUM + 1 FIN En este ejemplo. Instrucciones de salida. LEER. expN Donde las expresiones pueden ser variables o mensajes. La instrucción de entrada de datos. además. . podemos permitirle al usuario ser él quien determine el valor sobre el que se desarrollará el cálculo. si necesitamos calcular el sucesor de otro número. varN En ella puede haber desde una hasta las que el usuario desee. el usuario lee en el algoritmo l valor del que se calculará su sucesor.. si no entonces vamos a cenar Traspasando esto a un algoritmo cualitativo tendríamos: Inicio del algoritmo Si deseo hacer una fiesta Hago la fiesta Sino Voy a cenar Preparado por Prof: Luis González T.Las instrucciones de entrada/salida de datos. este debe aparecer entre comillas dobles. . En pseudolenguaje la instrucción que permite realizar una visualización de información en la pantalla es MOSTRAR. Así la persona que está frente a computador va a poder digitar los valores que desea procesar.. ahora podemos visualizar en la pantalla algún comentario o resultado. el algoritmo ahora puede comunicarle al usuario que es lo que debe leer y. uno para cada número. se hace la fiesta... que estamos de cumpleaños y tenemos que decidir que hacer si nuestras opciones son hacer una fiesta o salir a cenar. exp2. dándole los valores a manipular y recibiendo por parte de éste los resultados de los procesos realizados con los datos ingresados. Para dar solución a esta disyuntiva. Toma de decisiones (instrucciones de bifurcación) Es habitual que en la vida diaria debemos tomar decisiones que signifiquen realizar o no una acción. SUCESOR : NUMERICAS NUM = 13 SUCESOR = NUM + 1 FIN Este algoritmo sólo permite calcular el sucesor de 13. FORMATO: LEER var1. Sólo para fines docentes 12 . Ejemplo: MOSTRAR "Este mensaje aparecerá en la pantalla" Haciendo uso de esta instrucción. INICIO NUM. por ejemplo. FORMATO: MOSTRAR exp1. o bien elegir entre un conjunto de acciones. habría que hacer otro algoritmo. Para especificar un mensaje o comentario. var2. Supongamos. permite que el usuario le dé valores a las variables desde el teclado. SUCESOR FIN Con instrucción MOSTRAR. por lo que sí nuestra respuesta es SI. SUCESOR : NUMERICAS MOSTRAR "Ingrese un número" LEER NUM SUCESOR = NUM + 1 MOSTRAR "El sucesor es :" . Pero si usamos la orden LEER. indicarle en la pantalla al usuario. le permiten al usuario0 final (que es la persona para quien se va a realizar el programa final) tener una comunicación con el algoritmo. cual fue el resultado.

Instrucción (es) 1: Es la instrucción o conjunto de instrucciones que deben ejecutarse en el caso de que la condición se cumpla (sea verdadera).SINO De decisión múltiple HACER EN CASO Decisión simple: Esta instrucción permite ejecutar o no una o varias instrucciones FORMATO: SI condición Instrucción (es) FIN SI Donde: Instrucción (es): es la instrucción o instrucciones que van a ser ejecutadas si se cumple la condición Condición: Es el evento que debe cumplirse para que la instrucción (es) se ejecutada. Estas son: De decisión simpleSI De decisión doble SI . Para representar las condiciones en pseudolenguaje. Sólo para fines docentes 13 . En cualquier otro caso. entrega un valor lógico falso. FORMATO: SI condición Instrucción(es) 1 SINO Instrucción(es) 2 FIN SI Donde: Condición es el evento que tiene que cumplirse para que se ejecute el grupo 1 de instrucciones. se ejecuta el grupo 2 de instrucciones. En este tipo de bifurcación. en caso de que no se cumpla. Operadores de relación: Son aquellos que e utilizan para expresar condiciones = <> <= >= > < igual distinto Menor o igual mayor o igual mayor que menor que operador de relación expresión 2 FORMATO: Expresión 1 Ejemplo: Sea A = 4 y B = 7 El resultado de: A>B es falso A<= B es verdadero A + 3 = B es verdadero Conectores lógicos: Son aquellos que nos permiten combinar expresiones de relación. Condición es una expresión lógica que dará un resultado verdadero si ella se cumple o falso. Decisión doble: Esta instrucción se utiliza cuando se tiene que elegir entra la ejecución de una u otra instrucción a partir de una condición. estos son: Y : que entrega un valor lógico verdadero sólo cuando ambas expresiones de relación sean verdaderas. Nunca los dos. solo se ejecuta uno de los dos grupo de instrucciones. Preparado por Prof: Luis González T. De no cumplirse el evento.Fin de selección Fin algoritmo En pseudolenguaje existen instrucciones que nos permiten realizar este tipo de discriminación. Instrucción (es) 2: Es la instrucción o instrucciones que se van a ejecutar si la condición no se cumple. se hace uso de expresiones lógicas las que están compuestas por operadores de relación y conectores lógicos.

El algoritmo desplegará en pantalla el mensaje "Los valores son iguales" cuando la expresión VAR1 = VAR2 sea verdadera. el algoritmo procede a compararlos para saber si son iguales o no iguales utilizando la instrucción SI (VAR1 = VAR2).El siguiente algoritmo determina si dos números ingresados por el usuario son o no iguales: INICIO VAR1.. VAR2 : NUMERICAS MOSTRAR "Ingrese dos números" LEER VAR1. mostrará en mensaje "Proceso terminado". 2.. Ejemplo: Sean A = 3. el algoritmo seguirá ejecutando las instrucciones que siguen a continuación de las palabras FIN SI. Sólo para fines docentes 14 . VAR2).O : que entregará un valor lógico verdadero cuando al menos una de las expresiones sea verdadera y un valor lógico falso sólo cuando ambas expresiones sean falsas. VAR2 : NUMERICAS MOSTRAR "Ingrese dos números" LEER VAR1. B= 4 y C = 5 (A = 3) Y (B = C) (B = C) O (A = 3) (A > B) O (B < C) (A + 2 = 6) O (B = C) falso verdadero verdadero falso Aplicaciones en Pseudolenguaje 1. teniendo en cuenta que también puede darse la igualdad. Un primer razonamiento se puede basar en que e tienen tres alternativas: VAR1 = VAR2 VAR1 > VAR2 VAR1 < VAR2 Entonces uno puede preguntar por cada una de las alternativas creando un algoritmo con la siguiente estructura: INICIO VAR1. o sea. Luego de haber desplegado el mensaje en la pantalla.El siguiente algoritmo le permite al usuario ingresar dos valores y determinar cuál de ellos es el mayor. Cuando los valores ya han sido ingresados por el usuario. VAR2 SI (VAR1 = VAR2) MOSTRAR "Son iguales" FIN SI SI (VAR1 > VAR2) MOSTRAR "El primero es mayor" FIN SI SI (VAR1 < VAR2) MOSTRAR "El segundo es mayor" FIN SI FIN También se podría haber pensado: Preparado por Prof: Luis González T. El mensaje "Los valores son distintos" aparecerá en la pantalla cuando la expresión evaluada en la instrucción SI sea falsa. que sirven para indicar que ahí termina la bifurcación. el que se ejecutará siempre sin importa cuales hayan sido los valores ingresados. VAR2 SI (VAR1 = VAR2) MOSTRAR "Los valores son iguales" SINO MOSTRAR "Los valores son distintos" FIN SI MOSTRAR "Proceso terminado" FIN En este algoritmo primero se despliega un mensaje en la pantalla para que el usuario sepa que tiene que ingresar dos valores que son recibidos en la instrucción siguiente (LEER VAR1.

si el promedio es mayor o igual a cuatro. Sólo para fines docentes 15 . C : NUMERICAS MOSTRAR "Ingrese tres números" LEER A. por lo que pregunto SI VAR1 > VAR2 entonces muestro "El primero es mayor". se debe desplegar el mensaje "Alumno aprobó". VAR2 SI (VAR1 = VAR2) MOSTRAR "Son iguales" SINO SI (VAR1 > VAR2) MOSTRAR "El primero es mayor" SINO MOSTRAR "El segundo es mayor" FIN SI FIN SI FIN 3.. tenemos que ver si el mayor es el segundo o el tercero. de lo contrario desplegar el mensaje "Alumno reprobó" Preparado por Prof: Luis González T. VAR2 : NUMERICAS MOSTRAR "Ingrese dos números" LEER VAR1. de los contrario. si es mayor al segundo y al tercero.. si la condición es falsa muestro "El segundo es mayor".En el siguiente algoritmo determinaremos el mayor de tres números ingresados por el usuario.Tenemos que usar tres variables para recibir los números que van a ser ingresados. B.Para saber si un número es el mayor tenemos que: a) Preguntar si el primero es mayor que los otros dos. En el análisis de lo que se nos pide observamos que: Se tiene que leer tres números Tenemos tres posibles respuestas: a) El primer valor es el mayor b) El segundo valor es el mayor c) El tercer valor es el mayor De esta información podemos determinar que: 1. puesto que el primero ya no lo es... o sea. sino son iguales. C SI (A > B) Y (A > C) MOSTRAR "El primero es el mayor" SINO SI (B > C) MOSTRAR "El segundo es el mayor" SINO MOSTRAR "El tercero es el mayor" FIN SI FIN SI FIN Ejercicios: 1. INICIO VAR1. El algoritmo que resulta de esto es: INICIO A. calcular el promedio.Si tengo tres alternativas evalúo la primera. 2. c) Si el segundo es el mayor lo indicamos con un mensaje.Tenemos que leer los valores antes de preguntar cual de ellos es mayor 3. b) Si era mayor lo indicamos con un mensaje. B. ya que si no son iguales y VAR1 no es mayor que VAR2 solo puede ser que VAR2 sea mayor que VAR1 puesto que es la única alternativa que queda. indicamos que e mayor es el tercero ya que es el único que queda. de lo contrario. entonces puede que sea VAR1 mayor que VAR2 o VAR2 mayor que VAR1..Codifique un algoritmo que permita determinar si un alumno aprobó o no un ramo si consideramos que se evalúa con cuatro notas y el promedio se obtiene aritméticamente Se deben ingresar las cuatro notas. SI VAR1 = VAR2 muestro el mensaje "Son iguales" y termino.

Modifique el algoritmo anterior. FORMATO: HACER EN CASO EN CASO VARIABLE = VALOR1: INSTRUCCIÓN(ES) 1 EN CASO VARIABLE = VALOR2: INSTRUCCIÓN(ES) 2 EN CASO VARIABLE = VALOR3: INSTRUCCIÓN(ES) 3 [ SEA OTRO VALOR: INSTRUCCIÓN(ES) N ] En esta instrucción. se ejecutará el segundo grupo y así sucesivamente. se escogerá sólo un grupo de instrucciones dependiendo del valor de la variable. por lo tanto deberá ingresar además de las cuatro notas. ingresando el código de un mes. saber la glosa correspondiente al código y cuantos días tiene éste.. si coincide con el segundo valor. una nota de examen. por lo que sólo se colocará de ser necesario. SEA OTRO VALOR es opcional.2. Si coincide con el primer valor. INICIO VARMES : NUMERICA MOSTRAR "Ingrese un código" HACER EN CASO EN CASO VARMES = 1: MOSTRAR "enero = 31" EN CASO VARMES = 2: MOSTRAR "febrero = 28 ó 29" EN CASO VARMES = 3: MOSTRAR "marzo = 31" EN CASO VARMES = 4: MOSTRAR "abril = 30" EN CASO VARMES = 5: MOSTRAR "mayo = 31" EN CASO VARMES = 6: MOSTRAR "junio = 30" EN CASO VARMES = 1: MOSTRAR "Julio = 31" EN CASO VARMES = 8: MOSTRAR "agosto = 31" EN CASO VARMES = 9: MOSTRAR "septiembre = 30" EN CASO VARMES = 10: MOSTRAR "octubre = 31" EN CASO VARMES = 1: MOSTRAR "noviembre = 30" EN CASO VARMES = 1: MOSTRAR "diciembre = 31" SEA OTRO VALOR: MOSTRAR "Código no existe" FIN EN CASO FIN Preparado por Prof: Luis González T. deberá desplegar los mismos mensajes. sabiendo que el promedio final será igual al 60% del promedio aritmético de las notas. ejecutará el primer grupo de instrucciones. más el 40% de la nota de examen. Selección múltiple: Esta instrucción permite escoger un grupo de instrucciones a ejecutar según sea el valor de una variable. Supongamos que alguien desea tener un algoritmo que permita. Sólo para fines docentes 16 . y si no coincide con ningún valor indicado en a instrucción se ejecutaran las instrucciones que estén indicadas para SEA OTRO VALOR.

EJERCICIOS: 1. CUATRO : NUMERICAS UNO = 1 DOS = UNO + 1 TRES = DOS . R : NUMERICAS JOSE = 4 SS = 5 J=3 R=2 J = SS + R SI (J = TRUNCAR(J / 2) * 2) SS = JOSE * 2 J=J+2+3 HACER EN CASO EN CASO J = 35: J=J+1 EN CASO J = 36: J=J-1 EN CASO j = 37 J=J* 2 FIN EN CASO SINO J = SS + 3 SI (J = SS * 3 . J. DOS. TRES.Recorra los siguientes algoritmos y determine los valores finales de cada variable: INICIO JOSE. Sólo para fines docentes 17 .1) J=J*3+R SINO J = SS * (R ** 2) / 2 FIN SI FIN SI J=J+1 SS = J * 2 FIN INICIO UNO.DOS FIN EN CASO FIN SI Preparado por Prof: Luis González T.. SS.1 CUATRO = TRES + 1 SI (TRES <> CUATRO) DOS = DOS + 3 SI (TRES < DOS) Y (CUATRO = 4) UNO = 2 SINO UNO = 3 FIN SI SI (TRES <> CUATRO) TRES = CUATRO + 1 SINO UNO = 1 HACER EN CASO EN CASO UNO = 1: HACER EN CASO EN CASO DOS = 1: UNO = 2 EN CASO DOS = 2: DOS = 1 FIN EN CASO EN CASO UNO = 2: CUATRO = TRES + 1 SEA OTRO VALOR: DOS = CUATRO .

XED : NUMERICAS MOSTRAR "Indique estado civil" LEER XCIV MOSTRAR "Indique su sexo" LEER XSEX MOSTRAR "Indique su edad" LEER XED HACER EN CASO EN CASO XSEX = 1: SI (XCIV = 1) Y (XED > 18) Y (XED < 31) MOSTRAR "Está seleccionado" SINO SI (XCIV = 2) Y (XED > 40) MOSTRAR "Está seleccionado" SINO MOSTRAR "Esta eliminado" FIN SI FIN SI EN CASO XSEX = 2: SI (XED > 18) Y (XED < 26) MOSTRAR "Está seleccionada" SINO MOSTRAR "Está eliminada" Preparado por Prof: Luis González T.UNO = (TRES + DOS) . Además. XSEX. Hay a lo menos uno malo. para determinar el sexo de la persona y su estado civil hay que tener en cuenta los siguientes datos: Sexo : 1 = masculino : 1 = soltero 2 = femenino 2 casado 3 separado 4 viudo Estado civil INICIO XCIV.Revisa los siguientes algoritmos y determina si están buenos o no. INICIO N : NUMERICAS MOSTRAR "Ingrese un número" SI (N > 0) Y (N < 12) MOSTRAR "El número cumple la condición" SINO MOSTRAR "El número no cumple la condición" FIN SI FIN ALGORITMO El siguiente algoritmo determina si una persona es aceptada o no en un trabajo. INICIO N : NUMERICAS MOSTRAR "Ingrese un número" LEER N SI (N = 0) MOSTRAR "El número es cero" SINO SI (RESTO(N / 2) = 0) MOSTRAR "El número es par" SINO MOSTRAR "El número es impar" FIN SI FIN SI FIN . Sólo para fines docentes 18 .CUATRO FIN SI FIN 2. Para ello cuenta con los siguientes requisitos: Para mujeres: Debe ser soltera. si es soltero debe tener más de 18 años y menor de 31 años.El siguiente algoritmo le permite al usuario leer un número y saber si éste es par o impar. .Determinar si un número ingresado por el usuario es positivo y menor que 12 al mismo tiempo.. El cero es neutro. mayor de 18 años y menor de 26 Para hombres: Si es casado debe tener más de 40 años.

Para esto. Leer un número y determinar si este es positivo e impar.DRACMA 3.LIBRAS 4. el algoritmo debe permitir identificar al vendedor (nombre) e indicar el monto que este vendió y mostrar el monto de la comisión correspondiente. Leer un número y determinar si es divisible por 3 y por 2 al mismo tiempo. El algoritmo que desarrolle debe permitir evaluar estas condiciones para determinar. si el contrato se hace efectivo o no. 18. no tener hijos y ser menor a 24 años. Supongamos que van a ser distintos entre sí. 4. ingrese el código de la moneda y el monto a transformar y muestre su equivalente en pesos. 8. 11. por lo tanto. luego indique si el resultado del calculo es positivo. Una empresa necesita contratar una secretaria.DÓLAR 2. Una empresa de turismo necesita realizar permanentemente cálculo de paridad cambiaria. negativo o 0. Se necesita un algoritmo que determine cuanto se le pagará a un vendedor. Las casadas debe tener edad superior a 40 años y tener hijos. Busque a lo menos dos soluciones distintas. Determine el número de días e un mes ingresado por el usuario si éste ingresa el nombre del mes. Tenga en consideración que sólo se puede determinar si un número es sucesor de otro si éstos son enteros. Para ello se le hacen las siguientes preguntas: ¿Es soltera (1) o casada (2) ¿Cuántos hijos tiene? Si no tiene indicar 0 ¿Tiene título técnico S/N? ¿Cuál es su edad? La postulante debe cumplir los siguientes requisitos para ser preseleccionada: Las solteras deben poseer título técnico.RUPIAS 670 PESOS 405 PESOS 495 PESOS 293 PESOS El algoritmo debe recibir por parte del usuario el código (número de lista) de la moneda a la que se desea hacer la transformación y el valor en pesos a transformar a la moneda indicada. 9. Leer tres números y determinar cual es el mayor teniendo en cuenta que se pueden dar igualdad entre ellos. 13. B = 1. C = 1. Leer un número y determinar si es positivo y par al mismo tiempo.FIN SI SEA OTRO VALOR MOSTRAR "ERROR DE INGRESO DE VALOR" FIN EN CASO FIN Confeccione un algoritmo para cada uno de los siguientes requerimientos: 1. Para realizar dicho cálculo.3%. maneja la siguiente lista de valores: 1. 3. 5. Leer un número y determinar si es divisible por 3 y por 2 al mismo tiempo pero sin usar conectores lógicos.. 14.. mediante mensajes. debe realizar los ingresos correspondientes y entregar el mensaje respectivo. Cada categoría tiene un porcentaje de comisión por ventas realizadas (A = 1. si es negativo súmele 6. 10.11%). 7. Leer dos números y determine cuál de ellos es menor o si son iguales 2. si es positivo súmele 3. C). 12. Leer un número y determinar si es divisible por 5.. Leer dos número y determinar si el primero es el antecesor del segundo.25%. B.. Sólo para fines docentes 19 . Leer tres números y determine cual de ellos es menor. 15. 17. Una empresa tiene en su planta vendedores divididos en tres categorías ( A. 6. Leer un número y determinar si es mayor igual que 10 o no. Lea un nombre y edad de dos personas y muestre el nombre de la persona mayor. Preparado por Prof: Luis González T. 16. 19. Leer tres números y mostrarlos ordenados de menos a mayor. Leer un número y determinar si este es mayor a 10 y menos a 86 y par al mismo tiempo. Leer un número. Supongamos que van a ser distintos. Usando los mismos valores de la tabla anterior.

Cuando se llega a FIN PARA. como ya se supero el valor final. la variable N en 1. RESULTADO FIN Mostrar todos los números mayores o iguales a 10 y menores a 41 INICIO X : NUMERICA PARA X = 10 HASTA 40 MOSTRAR X FIN PARA FIN MIENTRAS: Se diferencia de la anterior porque no necesitamos saber el número de veces que se tiene que repetir el bucle para determinar el fin de la ejecución. Val2: Es el último valor con que se ejecutará el ciclo. no se ejecutará el ciclo y se continúa con las instrucciones que vengan después del FIN PARA.INSTRUCCIONES CICLICAS O ITERATIVAS Una instrucción cíclica es una orden que permite que un conjunto de instrucciones (bucle) se ejecuten varias veces. PARA: Permite que un conjunto de instrucciones se ejecuten un numero determinados de veces. X : NUMERICAS RESULTADO = 0 PARA X = 1 HASTA 10 RESULTADO = RESULTADO + X FIN PARA MOSTRAR "LA SUMA DIO ". sino que necesitamos saber que se tiene que dar (condición) para que se siga ejecutando. al llegar al FIN PARA. Las instrucciones de este tipo son: PARA. Sólo para fines docentes 20 . se procede a realizar la segunda iteración. Ejemplos: Se necesita calcular la suma de los 10 primeros número naturales positivos: INICIO RESULTADO. FORMATO: PARA var = val1 HASTA val2 [ SUMANDO VAL3 ] instrucciones FIN PARA Var: es la variable que será utilizada para ir contando el numero de veces que se ha de repetir el ciclo. se realiza un último incremento a la variable N quedando esta con el valor 11. Como N es una variable que en la primera ejecución vale 1. Esta variable aumenta en una unidad cada vez que se repite el ciclo y se omite el parámetro SUMANDO. es mostrado este valor. MIENTRAS Y REPETIR. la variable N toma el valor 1 y ejecuta la instrucción MOSTRAR N. Esta vez. aunque en algunos casos podría darse que se ejecutaran una vez o simplemente no se ejecutaran. comenzando el bucle desde el principio e incrementando . en este caso. Val1 es el valor que toma var en el inicio del primer ciclo. Sin embargo. Cuando esto ocurra se ejecuta por ultima vez mostrando el valor 10. Este proceso se realizará hasta que N tome el valor 10. FORMATO: MIENTRAS (condición) HACER Instrucciones FIN MIENTRAS Preparado por Prof: Luis González T. Ejemplo: Con el siguiente algoritmo se muestran en pantalla todos los números del 1 al 10 INICIO PARA N = 1 HASTA 10 MOSTRAR N FIN PARA FIN Cuando se llega a la instrucción PARA.

Esta instrucción funciona de la siguiente manera: Cuando se llega a ella. se le debe preguntar al usuario si desea seguir ingresando números. Leer tantos números como el usuario desee y determinar la suma de ellos. digitar una N. Sólo para fines docentes 21 . El ingreso finaliza cuando la suma sea mayor o igual a 666. INICIO Resp : ALFANUMERICA Total. INICIO n. si esta es verdadera. Si el usuario desea seguir deberá digitar una S y si no va a seguir.Condición: Expresión lógica la cual tiene que ser verdadera para que se ejecute el bucle. Luego. la evaluación de la condición se realiza después de ejecutar el bucle y esta condición indica cuando va a pasar a parar la ejecución Esta instrucción se utiliza preferentemente para asegurarnos que un dato cumpla con algún requisito preestablecido. cuando llegue a MIENTRAS por primera vez el ciclo no se ejecutará REPETIR: Esta instrucción es muy similar en su funcionamiento a la instrucción MIENTRAS. I a Resp no se le da el valor inicial de "S" asignándosele otro. se ejecutan todas las instrucciones que hay entre MIENTRAS Y FIN MIENTRAS. Ejemplo: Calcular la suma e todos los números pares positivos menores a 66 INICIO TOTAL. a diferencia de MIENTRAS. El termino de ejecución se produce cuando la condición no se cumple. TOTAL FIN En la instrucción MIENTRAS. se pueda leer. Preparado por Prof: Luis González T. suma FIN Leer y sumar tantos números como el usuario desee. num : NUMÉRICAS Resp = "S" Total = 0 MIENTRAS (Resp = "S") HACER MOSTRAR "Ingrese un número" LEER num Total = Total + num MOSTRAR "Desea seguir ingresando S/N" LEER Resp Resp = MAYUS(Resp) FIN MIENTRAS FIN En este algoritmo se le da un valor "S" a la variable Resp para que la primera vez que se llega al ciclo MIENTRAS. FORMATO: REPETIR Instrucciones HASTA QUE (condición) Esta instrucción. Cuando se llega a FIN MIENTRAS se vuelve a hacer el mismo procedimiento hasta que la condición sea falsa. se evalúa el valor de la condición. se tiene que dar un valor inicial a la variable de la condición utilizando una instrucción de asignación previa y el incremento se tiene que hacer dentro del bucle. suma : NUMERICAS suma = 0 MIENTRAS (SUMA < 666) HACER MOSTRAR "Ingrese un número" LEER n Suma = suma + n FIN MIENTRAS MOSTRAR "La suma es ". NUM : NUMERICAS TOTAL = 0 NUM = 2 MIENTRAS (NUM < 66) HACER TOTAL = TOTAL + NUM NUM = NUM + 2 FIN MIENTRAS MOSTRAR " Resultado es". Para determinar si se tiene que leer otro número o no.

bandera o flag. INICIO Cont. Realiza una función similar a la de un contador. prom FIN C) Interruptores: conocidos como switch.Ejemplo: Leer siete números positivos y determinar su promedio. B) Sumadores. suma. centinela. preguntaremos si el numero es entero para ver si tenemos que sumarlo o contarlo. prom. contador. con la diferencia de que la cantidad que se le suma o resta es constante. Los usos más habituales de un interruptor son: • • • Si el programa a pasado o no por de6terminado punto pregu8ntando por su estado o contenido. x . Además. Hacer otra operación dependiendo de un estado u otro. Es una variable que puede tomar dos valores a lo largo del algoritmo y que permiten comunicar información de una parte a otra parte del mismo. prom : NUMERICAS Acum = 0 Contador = 0 PARA x = 1 HASTA 10 MOSTRAR "Ingrese un número" LEER n SI (n = (ENTERA(n)) Acum = Acum + n contador = contador + 1 FIN SI FIN PARA Prom = Acum / contador MOSTRAR " El promedio es ". Ejemplo: leer 10 números cualesquiera y determinar el promedio de los números enteros. Hay que tener en cuenta que si bien son 10 números los que se van a leer. INICIO Acum. n : Numéricas Sw = 0 PARA x = 1 HASTA 10 REPETIR MOSTRAR "Ingrese un número" LEER n HASTA QUE (n = int(n)) y (n > 0) Preparado por Prof: Luis González T. Sólo para fines docentes 22 Ejemplo: . INICIO Sw. no se sabe cuantos de ellos son enteros por lo que tendremos que utilizar un contador. prom FIN Otros conceptos relacionados con ciclos A) Contador: Se dice que una variable es de tipo contador cuando esta se va a incrementa o decrementar cada vez que se realice la instrucción que lo contiene. num : NUMERICAS suma = 0 prom = 0 PARA CONT = 1 HASTA 7 REPETIR MOSTRAR "Ingrese un número" LEER num HASTA QUE (num > 0) suma = suma + num FIN PARA prom = suma / 7 MOSTRAR "El promedio es ". Salir de un ciclo cuando se cambie el valor del interruptor. Acumuladores o Totalizadores: Son variables utilizadas para guardar cantidades variables resultantes de sumas sucesivas. x. dentro del bucle. Para ello utilizaremos un ciclo Para que realizará 10 ingresos. n.

SI (n = 7) Sw = 1 FIN SI FIN PARA SI (Sw = 0) MOSTRAR " " No se ingresó el 7" SINO MOSTRAR "se ingreso el 7" FIN SI FIN Como se puede ver.. 501. p : Numéricas sum = 0 a=0 PARA x = 1 HASTA 10 Preparado por Prof: Luis González T. 3. INICIO x... 21... es mostrado por el siguiente algoritmo: INICIO x : numérica x=1 MIENTRAS x <= 21 Hacer MOSTRAR x x=x+2 FIN MIENTRAS FIN 3. 5.La serie numérica 1. 501.El siguiente algoritmo calcula la suma de los 20 primeros elementos de la siguiente serie numérica: 500.. .Calcular el promedio de 10 números ingresados por el usuario. Sólo para fines docentes 23 . . INICIO nn. x. a :Numéricas nn = 0 REPETIR MOSTRAR " Ingrese un número entero positivo" LEER nn HASTA QUE (nn > 0) Y (nn = entero(nn)) aux = nn MIENTRAS (aux > 0) HACER a = Ent(aux / 10) * 10 dig = aux .El siguiente algoritmo permite mostrar los dígitos de un número entero positivo ingresado por el usuario. 11... dig.. 7. n. : numéricas PARA x = 1 HASTA 10 Num = 2 * x MOSTRAR num FIN PARA FIN 2.El siguiente algoritmo muestra los 10 primeros números pares positivos. de izquierda a derecha. 550. INICIO Sum.. INICIO sum. 9. Ejemplos: 1. num. SW va a tener el valor 0 desde la partida del algoritmo y dentro del bucle sólo va a cambiar su valor a 1 cundo se ingrese el número 7.a aux = a MOSTRAR dig FIN MIENTRAS FIN 5. aux.. x : numéricas Sum = 0 PARA x = 500 HASTA 550 Sum = Sum + x FIN PARA MOSTRAR "Resultado es :" sum FIN 4.

la empresa requiere saber. INICIO Sw.Dinares 150 pesos 4. INICIO mayor. para que el algoritmo indique su equivalente en pesos. x : Numéricas n=0 PARA x = 1 HASTA 10 hacer MOSTRAR "Ingrese un número" LEER n SI (x = 1) mayor = n SINO SI (n > mayor) mayor = n FIN SI FIN SI FIN PARA FIN 7.MOSTRAR "Ingrese un número" LEER n sum = sum + n FIN PARA p = sum / 10 MOSTRAR " El promedio es :". plantea la necesidad indeterminada de cambios monetarios..Rupias 350 pesos El requerimiento planteado por esta empresa. Además..Dólar 680 pesos 2.Dólar 680 pesos 2. monto Numéricas resp = "S" dólar = 0 dracma = 0 dinar = 0 rupias = 0 MOSTRAR " MENU 1. n. rupia. cuenta con la siguiente lista de precios: 1..El siguiente algoritmo permite mostrar alternativamente las palabras "Hola" y "Chao"..El siguiente algoritmo permite leer 10 números cualesquiera y determina cual fue el mayor de ellos.. Sólo para fines docentes 24 . cuantas monedas se recibieron de cada una. dólar.. p FIN 6..Rupias 350 pesos" MIENTRAS (resp = "S") o (resp = "s") Hacer REPETIR Preparado por Prof: Luis González T. En cada intercambio se debe leer el código de la moneda y el monto que se pretende transar. INICIO resp: Alfanumérica m.. x : Numéricas Sw = 0 PARA x = 1 HASTA 13 SI (Sw = 0) MOSTRAR "Hola" Sw = 1 SI NO MOSTRAR "Chao" Sw = 0 FIN SI FIN PARA FIN 8. luego de finalizadas las transacciones.Una empresa dedicada al cambio de monedas extranjera.. dracma. dinar.Dracma 550 pesos 3..Dinares 150 pesos 4.Dracma 550 pesos 3.. Esto hará hasta que se muestren 13 palabras.

Sólo para fines docentes 25 . dólar MOSTRAR "Total dracmas : ".MOSTRAR "Indique código de moneda" LEER m HASTA QUE (m > 0) y (m< 5) REPETIR MOSTRAR "Ingrese el monto" LEER monto HASTA QUE (monto > 0) HACER EN CASO EN CASO m = 1: dólar = dólar + monto pesos = monto * 680 EN CASO m = 2 dracma = dracma + monto pesos = monto * 550 EN CASO m = 3 dinar = dinar + monto pesos = monto * 150 EN CASO m = 3 rupia = rupia + monto pesos = monto * 350 FIN EN CASO REPETIR MOSTRAR "Desea seguir S o N) LEER resp Resp = Mayusc(resp) HASTA QUE (resp = "S") o (resp = "N") FIN MIENTRAS MOSTRAR "Total dólares : ". dinar MOSTRAR "Total rupias : ". dracma MOSTRAR "Total dinares : ". rupias FIN Preparado por Prof: Luis González T.

número o expresión matemática. Un arreglo unidimensional es un conjunto de datos organizados en forma de lista. Ejemplo: S = Sueldo[1] + 500 Sueldo[3] = 500 Si Sueldo[2] > 300000 Leer Sueldo[X] Mostrar Sueldo[X] Declaración de Vectores Se debe realizar al comienzo del algoritmo justo después de la palabra INICIO.ARREGLOS Se puede visualizar un arreglo como un conjunto de datos de un mismo tipo (numérico o alfanumérico). Arreglo unidimensional o Vectores: Es un conjunto de celdas. al que se le denomina índice. Los valores que se muestran en el siguiente ejemplo pueden considerarse como elementos de un arreglo unidimensional o vector: 21. ingresados y mostrados.80.14. se puede hacer referencia a cualquier elemento del vector agregando un número encerrado entre paréntesis cuadrados [ ]. Los elementos de un vector pueden ser operados. Ejemplo: Sueldo[K] Sueldo[1] Sueldo[K+1] Los subíndices deben ser valores enteros y positivos. comparados. en las que se depositan datos de mismo tipo.15. A los cuales se les asigna un nombre para identificar así al conjunto total de valores.30 Si a este conjunto (lista) de edades se le coloca un nombre como EDADES.25. Formato: DECLARAR Nombvector[largo] de tipo Ejemplo: DECLARAR Sueldo[7] de numéricas Preparado por Prof: Luis González T. y la referencia a sus elementos sería de la siguiente manera: Sueldo[1] = 150000 Sueldo[2] = 50000 . como si fueran variables. Sueldo[7] = 600000 Los índices o subíndices pueden representarse por medio de una variable. Se debe indicar mediante la instrucción arreglo seguido por el nombre del vector y entre paréntesis la cantidad de elementos. el cual indica la posición que ocupa dentro del vector un determinado elemento. A cada dato partícipe del arreglo se le denomina Elemento. Sólo para fines docentes 26 . 150000 50000 450000 348000 500000 400000 600000 A este vector le llamaremos SUELDOS. ordenadas en fila... modificados.17.

quedando de la siguiente manera: INICIO DECLARAR lista[4] de numérica X : numérica PARA x = 1 HASTA 4 LEER lista[x] FIN PARA FIN Obsérvese que la variable x cambia de 1 a 4.Esto indica que se ha definido un vector con el nombre SUELDO que contiene como máximo 7 elementos de tipo numérico. Nombre[X] FIN Ejemplos: 1. De esta manera. cada una de las iteraciones permite leer un elemento en una nueva posición. el ingreso de datos se puede realizar utilizando la instrucción iterativa PARA. una para cada elemento. INICIO DECLARAR lista[4] de numérica X : numérica PARA x = 1 HASTA 4 LEER lista[x] FIN PARA PARA x = 1 Hasta 4 MOSTRAR lista[x] FIN PARA FIN Si se desea mostrar un elemento en forma particular. salvo que ahora se usa la instrucción Mostrar. Ingreso de datos en un Vector INICIO DECLARAR Lista[4] de numéricas LEER lista[1] LEER lista[2] LEER lista[3] LEER lista [4] Se observa la definición del arreglo lista de largo 4 del tipo numérico.El siguiente algoritmo permite llenar un vector de 10 posiciones y luego mostrar su contenido de manera inversa al ingreso: INICIO DECLARAR datos[10] de numérica X : numérica PARA x = 1 HASTA 10 MOSTRAR "ingrese un valor" LEER datos[x] Preparado por Prof: Luis González T. se indica el nombre del vector y el lugar donde esta el elemento Ejemplo INICIO DECLARAR Nombre[100] de numérica X : numérica MOSTRAR "Ingrese posición 1 al 100" LEER X MOSTRAR "En esa posición está : ".. cuatro instrucciones de ingreso. Desplegar o mostrar los elementos de un vector La lógica de este proceso es la misma que para leer. posteriormente. Sólo para fines docentes 27 . Sin embargo.

. PARA x = 1 HASTA 100 Lista[x] = Lista[x] * 2 Preparado por Prof: Luis González T. Vamos a suponer que el elemento ya está lleno. : numérica PARA x = 1 HASTA 50 REPETIR MOSTRAR "Ingrese un número" LEER Vec[x] HASTA QUE (Vec[x] > 0) FIN PARA FIN 5.Se tiene un vector llamado Vec de 50 posiciones. P FIN 6.En el siguiente algoritmo se llenará un vector de 100 posiciones llamado ABC y después de finalizado el ingreso de dato. INICIO DECLARAR lista[100] de numérica X : numérica PARA x = 100 HASTA 1 restando 1 LEER lista[x] FIN PARA FIN 3..Utilizando el mismo vector del algoritmo anterior cambiaremos todos los elementos por su doble. El siguientes algoritmo permite llenar dicho vector sólo con números positivos: INICIO DECLARAR Vec[50] de numérica X. x ..En el siguiente algoritmo se llenará un vector llamado Lista de 100 elementos desde la última posición hasta la primera. INICIO DECLARAR Lista[100] de numérica Acum. Contador. se contará cuantos números son positivos INICIO DECLARAR ABC[100] de numérica X . "números positivos" FIN 4. Con el siguiente algoritmo se puede determinar el promedio de todos los elementos que hay en el vector.. Contador : numérica Contador = 0 PARA x = 1 Hasta 100 MOSTRAR "Ingrese un número" LEER ABC[x] FIN PARA PARA x = 1 HASTA 100 SI(ABC[x] > 0 Contador = Contador + 1 FIN SI FIN PARA MOSTRAR "Se ingresaron ".FIN PARA PARA x = 10 HASTA 1 restando 1 MOSTRAR datos[x] FIN PARA FIN 2. Sólo para fines docentes 28 .Supongamos que tenemos un vector llamado Lista de 100 posiciones con elementos enteros positivos previamente ingresados. p : numérica Acum = 0 X=0 PARA x = 1 HASTA 100 Acum = Acum + Lista[x] FIN PARA P = Acum / 100 MOSTRAR "El promedio es de "..

por tanto. B[10] de numéricas acuma. El siguiente algoritmo ordena de menor a mayor dicho vector. pues en ocasiones hay información que hace referencia a un mismo ente. proma. pos. sexo y edad de 6 personas. y : Numérica PARA x = 1 HASTA 9 PARA y = x+1 Hasta 10 SI Lista[x] > lista[y] Aux = Lista[x] Lista[x] = Lista[y] Lista[y] = aux FIN SI FIN PARA FIN PARA FIN 8. entonces tendríamos algo así: NOMBRE ANA PEDRO DIEGO ROSA CARLOS HERNAN SEXO F M M F M M EDAD 25 23 32 28 40 30 Preparado por Prof: Luis González T. Esto significa que ellos cumplirán con las siguientes características. INICIO DECLARAR A[10]. Los vectores de llaman A y B. La información almacenada en ellos guardada esta relacionada entre sí a partir de su posición. promb : numéricas acuma = 0 acumb = 0 PARA pos = 1 HASTA 10 acuma = acuma + A[pos] acumb = acumb + B[pos] FIN PARA proma = acuma / 10 promb = acumb / 10 SI (proma > promb) MOSTRAR " El promedio mayor es el del vector A" SI NO MOSTRAR " El promedio mayor es el del vector B" FIN SI FIN Paralelismo entre vectores Los vectores no siempre se usan de manera independiente. se requiere usar vectores de un modo paralelo.Determinaremos cual es el promedio mayor de dos vectores cuyos elementos ya están ingresados. acumb. Si tenemos tres vectores en donde guardamos: nombre.FIN PARA 7. Cualquier modificación de sus ubicaciones tiene que ser hecha en todos los vectores que estén siendo tratados paralelamente. Sólo para fines docentes 29 . INICIO DECLARAR Lista[10] de numéricas x..-.Supongamos que tenemos un vector llamado Lista de 10 posiciones con números ya ingresados en él.

. al no realizar el cambio en los otros vectores. Preparado por Prof: Luis González T.. Por lo tanto. si se altera el orden de los datos en un vector... Sólo para fines docentes 30 ... Por ejemplo si intercambiamos en el vector NOMBRE el primer elemento por el segundo. se produjo una alteración en los datos.. x.. Ejemplo: INICIO DECLARAR Nombre[6] de alfanuméricas DECLARAR Edad[6] de numéricas DECLARAR Sexo[6] de alfanuméricas auxN. auxS : alfanuméricas auxE..... .. y : numéricas PARA x = 1 HASTA 6 MOSTRAR "Ingrese nombre" LEER Nombre[x] MOSTRAR "Ingrese sexo" LEER Sexo[x] MOSTRAR "Ingrese edad" LEER Edad[x] FIN PARA PARA x = 1 HASTA 5 PARA y = 2 HASTA 6 SI (Nombre[x] > Nombre[y] auxN = Nombre[x] Nombre[x] = Nombre[y] Nombre[y] = auxN auxS = Sexo[x] Sexo[x] = Sexo[y] Sexo[y] = auxS auxE = Edad[x] Edad[x] = Edad[y] Edad[y] = auxE FIN SI FIN PARA FIN PARA FIN EJERCICIOS Desarrolle los siguientes algoritmos: 1. pasaría lo siguiente: NOMBRE SEXO EDAD PEDRO F 25 ANA M 23 DIEGO M 32 ... SEXO M F M ...... En este tipo de vectores... así....... EDAD 23 25 32 De eta forma los datos cambiaron de posición pero no perdieron su relación.... .En estos vectores la información de una persona está contigua en los tres vectores.. así mismo Ana quedo con los datos de Pedro....Llene un vector llamado Números. de 100 posiciones con elementos enteros positivos.... Como se puede aprecia.. el sexo y la edad que aparecen en los otros vectores pertenecen a ella.. si en la primera posición del vector NOMBRE aparece ANA.. este cambio debe realizarse en los otros vectores para no perder contigüidad de los elementos... los cambios deberían hacerse también en los otros dos vectores para que queden así: NOMBRE PEDRO ANA DIEGO .. ya que ahora Pedro aparece con sexo femenino y con 25 años que eran los datos de Ana.... ...

Deberá desplegar: la pauta de corrección.Se tiene un vector de 50 posiciones de letras ingresadas. 8. Si se sabe que: En cada casilla hay un carácter. El mensaje no termina necesariamente en la ultima posición del vector. Cree un algoritmo que permita determinar cuantas palabras fueron ingresadas. Cada palabra está separada por uno o más espacio en blanco.Una empresa tiene una lista de sus empleados en la que se tiene sus nombres... 6. cree un algoritmo que determine cuantas veces se da que una letra se encuentre en una posición que coincida con su posición dentro del abecedario.. Ordene la primera mitad de éste de menor a mayor y la segunda mitad de mayor a menor. KALTO y KABAJO de 50 elementos. 10..2. haga un algoritmo que permita llenar el vector sólo con números que sean múltiplos de 5 3.una tienda de calzado ha utilizado un vector para colocar los precios de sus zapatos de tal forma que el precio de un zapato está ubicado en la posición que corresponda a su número.Se tiene dos arreglos unidimensionales. con la suma de os elementos respectivos. el segundo con el producto y el tercero con la difere3ncia (si la diferencia es negativa coloque 0 como valor). Preparado por Prof: Luis González T. La cantidad de números positivos La cantidad de números entre 0 y 9 La cantidad de números pares. El mensaje no necesariamente empieza en la primera posición. las respuestas del alumno. un zapato número 33 tiene su precio en la posición 33 del vector y un zapato número 40 tiene su precio en la posición 40m del vector. La corrección será de la siguiente forma: Si la respuesta del alumno esta en blanco deberá colocar un * en el vector corrección..Se tiene un arreglo llamado AX de 40 elementos determine: La cantidad de números impares. La no será igual a 7 dividido por la cantidad de preguntas y el resultado multiplicado por la cantidad de respuestas buenas.Usando el mismo vector del ejercicio anterior. Si la respuesta del alumno no coincide con la de la pauta colocar una letra M.Cree un algoritmo que permita corregir una prueba de selección única de 30 preguntas. Confeccione un algoritmo que permita determinar cual es la edad que se repite más en la lista. 5.. así.Se tiene un vector llamado Orden de largo 100 con elementos enteros pero distintos entre sí. edad y su estado civil. 9. 4. El algoritmo debe corregir n cantidad de pruebas. 7..Una persona ha escrito en un vector un mensaje. otro con las respuestas del alumno y el tercero será para la corrección. Se debe crear otros tres arreglos. la corrección y la nota obtenida. El primero. Con estos datos realice un algoritmo que le permita al usuario procesar tantas ventas como desee si por cada una de ellas tiene que leer e número del zapato y la cantidad de pares que desea llevar para recibir del algoritmo el monto a pagar.. Sólo para fines docentes 31 . Si la respuesta del alumno es igual al de la pauta colocar una letra B.. Para ello debe crear tres vectores: uno con las respuestas correctas.

La estructura general de un programa en C es la siguiente: #include #define declaración de funciones declaración de variables globales main() { variables locales del main() sentencias } f1() { variables locales de la función f1() sentencias } . Debido a esto. consisten en una o más funciones. entre ellos están los enteros. Las palabras claves en C están escritas en minúsculas. La única función que siempre debe estar presente es la denominada main(). nunca deben ser utilizadas como nombres de variables o de funciones.LENGUAJE C En la redacción de un programa en C se pueden utilizar para formar los elementos básicos (constantes. fn() { variables locales de la función fn() sentencias Preparado por Prof: Luis González T. Estructura de un programa en C Los programas en C. los dígitos de 0 al 9 y ciertos caracteres especiales. operadores de expresión) las letras mayúsculas de la A a la Z. Sólo para fines docentes 32 . Palabras claves Una palabra clave es aquella que tiene un significado especial dentro del lenguaje. variables. los caracteres y los reales. las mayusculas son diferentes con las minúsculas. . las minúsculas de la a a z. así: else es una palabra clave y ELSE no lo es. ya que es la primera en ser llamada cuando comienza la ejecución de programa. Características del lenguaje C C tiene cinco tipo de datos básicos incorporados. siendo 32 las definidas por el estándar ANSI de C: auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while en C.

Un programa básico deberá contener a lo menos un área para el main() y otras área para los #include. Identificadores y palabras claves Identificadores: corresponden a los nombres usados para referirse a las variables.} Los #include son necesarios cuando ocupamos determinadas sentencias que necesitan sus respectiva bibliotecas para poder ejecutarse. las variables locales son aquellas que se usarán sólo en las funciones. Las variables globales son aquellas que se utilizarán a lo largo de todo el programa.1416. Los identificadores diferencian entre mayúsculas y minúsculas. Tipo Char Int Float double Tamaño en bits 8 16 32 64 Rango 0 a 255 . se debe codificar #define PI 3. Este proceso se llama enlazamiento. Cuando e llama a una función que no es parte del programa que se ha escrito. Se consideran caracteres significativos solo los primeros 32. con el código objeto de la función que se encuentra en la biblioteca estándar.7*10-308 a 1.32768 a 32767 3. y12 suma_10 _tempe TABLA SuElDo Ejemplo: Nombres válidos: x No válidos "x" Or-den Id error 4num el primer carácter debe ser una letra. la mayoría de los programas incluyen llamadas a variadas funciones contenidas en la biblioteca estándar del lenguaje C. El resto del identificador pueden ser letras o dígitos del 0 al 9 o underscore. carácter ilegal (-) carácter ilegal (espacio en blanco) Tipo de datos Existen en C distintos tipos de datos. se debe codificar #include <stdio> Los #define se ocupan cuando una variable debe tener un valor equivalente a través de todo el programa por ejemplo que la variable PI sea siempre igual a 3. etiquetas y otros objetos definidos por el programador. Biblioteca y enlazado Una biblioteca es una colección de funciones para llevar a cabo diversas tareas.1416. La biblioteca estándar de C. Sólo para fines docentes 33 . Para definirlos se deben seguir las siguientes reglas: • • • • Todo identificador debe empezar con una letra entre "a" y "z" o entre "A" y "Z" o con underscore "_". cada uno de los cuales se puede encontrar representado de forma diferente en la memoria del computador. funciones y macrodefiniciones C no proporciona dentro de la definición real del lenguaje.4*10-38 a 3. C recuerda su nombre. Las declaraciones de funciones consisten básicamente en establecer que existe una función en algún lugar del programa con una cantidad determinada de variables de entrada y que deberá retornar un determinado tipo de valor. Otros símbolos no pueden ser utilizados. métodos para llevar a cabo las operaciones de entrada/salida (E/S).7*10308 Descripción Solo contiene un carácter Número entero Punto flotante precisión simple Punto flotante de doble precisión Preparado por Prof: Luis González T. funciones. Si n existe nos arrojará un error. por lo general una sentencia de entrada/salida requerirá de la biblioteca stdio. siempre debe declararse pues el programa en su inicio la primera función que se lee es el main(). La longitud de un identificador puede variar entre 1 y 32 caracteres. Más tarde.4*1038 1. pero si es un entorno que proporciona declaraciones. en enlazador combina el código objeto producido al compilar el programa fuente. en cambio. Por ejemplo. debido a esto. El main() es la función principal de un programa en C. no forma parte del lenguaje. Caracteres ilegales ("). Las funciones deben estar previamente declaradas para poder ser utilizadas.

Operadores en C Un operador es un símbolo que le indica al compilador que lleve a cabo ciertas manipulaciones matemáticas o lógicas. Ejemplos: int i. Operadores aritméticos Operador + * / % -++ Operadores relacionales Operador > >= < <= == != Acción Mayor Mayor o igual Menor Menor o igual Igual Distinto 34 Acción Resta Suma Multiplicación División División en módulo Decremento incremento Preparado por Prof: Luis González T. Las siguientes reglas se pueden aplicar a todas las constantes numéricas: • • No se pueden incluir comas ni espacios en blanco. Una constante de coma flotante es un número decimal que contiene un punto decimal. Es muy importante en el uso de variables el realizar una adecuada inicialización de las mismas. contador = 0 Sin embargo. calculo. las variables tipo float y double se utilizan para números reales Declaración de variables Todas las variables deben ser declaradas antes de usarlas. lo que puede afectar el correcto funcionamiento de programa.Los valores tipo char se usan para guardar los valores definidos en el juego de caracteres ASCII. Las constantes enteras y de coma flotante representan números. Una constante de cadena de caracteres consta de cualquier número de caracteres consecutivos encerrados entre comillas (").k. float IVA=0.18 Constantes C tiene cuatro tipos básicos de constantes: constantes enteras. Se las denomina en general constantes de tipo numérico. Una constante de carácter es un solo carácter encerrado entre comillas simples. relacionales y lógicos. La forma tradicional de inicialización en los lenguajes de programación es: int contador. de cómo flotante. hay tres clases generales de operadores: aritméticos. ya que al crearlas. en C es posible realizar dicha inicialización en e momento de la declaración de la variable int contador=0. loop =-1.j. En C. la constante puede ir precedida de un signo menos (-) Una constante entera decimal puede tener cualquier combinación de dígitos tomados del conjunto de 0 a 9. IVA. Sólo para fines docentes . éstas pueden tomar cualquier valor. float impuesto. de carácter y de cadenas de caracteres. Si se desea. las variables tipo int se usan para guardar cantidades enteras. La sintaxis para ello es: Tipo lista_de_variables Donde tipo debe ser un tipo válido n C y lista_de_variables puede ser uno o más nombres de identificadores separados por comas.

La sentencias de control se utilizan para conseguir ciertas acciones especiales en los programas. como una constante. Formato: scanf("especificación de formato". Hay tres tipos de sentencias en C: de expresión. &entero.). un elemento de un array o una referencia a una función. bucles y ramificaciones.. Sentencias Una sentencia hace que el computador lleve a cabo alguna acción. . Una sentencia de expresión consiste en una expresión seguida de un punto y coma (. Muchas sentencias de control requieren que otras sentencias se encuentren incluidas en ellas. Expresiones Una expresión representa una unida de datos simples. Una declaración consiste en un tipo de datos seguido de uno o más nombre de variables separadas por una coma (. La expresión puede consistir en una entidad simple. los nombres de strings no deben ser precedidos por el ampersand. letras. argn) Los especificadores de formato están predefinidos por el símbolo % e indica los tipos de datos que se van a leer a continuación. finalizando con un punto y coma (. Una sentencia compuesta esta formada por una o varias sentencias individuales enceradas con un par de llaves ({}). Función printf() Preparado por Prof: Luis González T.. &flotante). tal como un número o un carácter. Ejemplo: scanf("%s %d %f". tales como comprobaciones lógicas.). ENTRADA Y SALIDA DE DATOS Función scanf() Biblioteca <stdio> Es una función de entrada que permite leer datos y almacenarlos en variables predefinidas. Una sentencia compuesta no termina en un punto y coma. Se deben declarar todas las variables antes de que aparezcan sentencias ejecutables. arg1.).Operadores lógicos Operador && || ! Acción And Or Not Declaraciones Una declaración asocia un tipo de datos determinado a un grupo de variables. Algunos especificadores: Código %c %d %f %s Significado Leer un único carácter Leer un entero decimal Leer un número flotante Leer un string Cada nombre de variable debe ser precedido por un ampersand (&). En este ejemplo se leerá en primer lugar un string a continuación un numero entero y por último un numero flotante. arg2. Sin embargo. compuestas y de control. Sólo para fines docentes 35 . También puede consistir en alguna combinación de tales entidades interconectadas por uno o más operadores. una variable.

d.c). printf("ingrese valor de a". Formato 1: If (expresión) { Sentencias } Formato 2: If (expresión) { Sentencias } else { Sentencias } ejemplos: if (x > 0) { printf(" X es mayor a 0: %d". d) printf("resultado división %d \n". e = d / c. printf("ingrese valor de b". c = 0. argn) La especificación de formato son similares a los de la función scanf(). printf("ingrese valor de c". Sólo para fines docentes 36 .b.else Se utiliza para realizar un test lógico y a continuación llevar a cabo una de dos posibles acciones.e.. . Formato: printf("especificación de formato". #include <stdio> main() { int a. b = 0.c. d = a * b. e = 0. d = 0. arg2. En el siguiente ejemplo se den ingresar tres números y se deberá desplegar la multiplicación del primer número con el segundo y el resultado de la división del resultado de la primer operación dividido por e tercer número ingresado. a.b). scanf("%d". scanf("%d".a). printf("resultado multiplicación %d \n". scanf("%d". Ejemplo: printf("%f %d". a = 0.Biblioteca <stdio> Es una función de salida que permite escribir datos y desplegarlos por pantalla. x Preparado por Prof: Luis González T. arg1. e) } Sentencias de control: Sentencia if .. b) En este ejemplo se desplegara en primer lugar un numero flotante a continuación un numero entero. dependiendo del resultado.

Ejemplo: . I++) { A=A*I printf("valor de A = %d".incremento) { grupo de instrucciones } inicialización: se utiliza para inicializar un parametro que controla la repetición del ciclo. Condición: es la condición que debe ser satisfecha para que se continúe la ejecución del ciclo.} if (x > 0) { printf(" X es mayor a 0: %d". B = 5. } Ejemplo: #include <stdio. while (digito <= 9) { printf("%d \n". Formato: while (condición) { sentencias. x } else { printf(" X es menor o igual a 0: %d".h> /* visualiza los número del 0 al 9 */ main() { int digito = 0. Esta sentencia.. digito). Formato Do { Preparado por Prof: Luis González T. se diferencia del while ya que primero se ejecuta el ciclo y después se realiza el test.while Es una estructura de control que permite generar ciclos mientras se cumpla la condición. I = 0. Formato: for (inicialización. A) } Sentencia while Es una estructura de control que permite generar ciclos mientras se cumpla la condición.. For (I = 1. Sólo para fines docentes 37 ..... ++digito. } } Sentencia do .condición. I <= B. Incremento: se utiliza para modificar el valor del parametro inicialmente asignado en la inicialización. A = 1. x } Sentencia for Es una estructura de control que define un número fijo de iteraciones sobre un grupo de expresiones.

Formato: Switch (expresión) sentencia La sentencia incluida es generalmente una sentencia compuesta que especifica opciones a seguir. Para cada opción. } while(condición). Cada grupo de sentencias se escribe de forma general: Case expresión Sentencia 1. } ++abc. Ejemplo: #include <stdio.sentencias. Sentencia n. default: printf("digitó un número fuera del rango indicado). ejemplo #include <stdio. digito). abc = 1. case 2: printf("Ingreso un 2").h> int opcion = 0. } Sentencia switch Hace que se selecciones un grupo de sentencias entre varios grupos disponibles. opcion). } while (digito <= 9). case 3: printf("Ingreso un 3"). while (abc < 4) { printf("Ingrese opción entre 1 y 3"). Sentencia 2. estas identifican los diferentes grupos de sentencias.h> /* visualiza los número del 0 al 9 */ main() { int digito = 0. scanf("%d". do { printf("%d \n". La selección se base en el valor de una expresión que se incluye en la sentencia switch. } Preparado por Prof: Luis González T. la primera dentro del grupo debe ser precedida por una o más etiquetas case. Sólo para fines docentes 38 . ++digito. Cada opción se especifica como un grupo de una o más sentencias individuales dentro de la sentencia global incluida. las etiquetas case deben ser únicas dentro de una sentencia switch dada. switch op { case 1: printf("Ingreso un 1").

Sólo para fines docentes 39 . int cont: /* leer una línea en minúsculas y desplegarla en mayúscula */ for (cont = 0. cont++ putchar(toupper(letra[cont])). La función no requiere de argumentos. {9. Arrays bidimensionales Ejemplo: int valor[3] [4].h> #define tamano 80 main() { char letra[tamano]. 11. #include <stdio. \0}. 4. 2. 8}. 3. 11. Asignación de valores a una array Ejemplo: int digitos[10] = {1. 6. 3. En este ejemplo se utilizan las funciones getchar y putchar. El carácter que se transmite estará representado por una variable tipo carácter. 10.10} char letras[5] = "ABCD". Esta función es complementaria a la función getchar y transmite un carácter al dispositivo de salida. char letras[5] = {'A'. 5. 8. 6. int valor[3] [4] = { {1. 7. 6. 4}. 10. 2. 'C'. Mediante la función getchar se puede conseguir la entrada de caracteres uno a uno. char texto[80]. 3. {5. 7. 'B'. Cada elemento es referido especificando el nombre del array seguido por uno o más índices encerrados entre paréntesis cuadrados. en este ejemplo se debe incluir explícitamente el carácter nulo Un string es un array de caracteres que finaliza con el carácter nulo. 12}}. 'D'. cont < tamano. 9. Mediante la función putchar se puede visualizar un carácter. y un carácter es el valor de un byte. cont++ letra[cont] = getchar(). siguiendo a la palabra putchar. /* arreglo de 3 filas y 4 columnas */ int valor[3] [4] = {1. Preparado por Prof: Luis González T. 7. 12}. 2. cont < tamano. aunque es necesario que un par de paréntesis vacíos sigan a la palabra getchar. 9. 4.ARRAYS (ARREGLOS) Los arrays se definen en gran parte como las variables ordinarias excepto que cada array debe acompañarse de una especificación de tamaño (numero de elementos). Se debe proporcionar como argumento de la función encerrado entre paréntesis. 5. Ejemplo: int x[10]. 8. /* despliega la línea en mayúscula */ for (cont = 0.

Una de estas funciones debe llamarse main. pero deben ser independientes una de otras. Ejemplo: Mul(int a. int b) { int c. que la función retorna un entero. PASO DE ARGUMENTOS A LAS FUNCIONES LLAMADA POR VALOR: En esta forma de pasar argumentos. La ejecución del programa siempre comenzara por la de las instrucciones contenidas en main. Ejemplo: #include <stdio. se pueden hacer asignaciones a los parámetros formales de una función o usarlos en cualquier expresión válida de C. se copia el valor del argumento en el parámetro formal de la función. main() 40 Preparado por Prof: Luis González T. entonces el valor devuelto por la función queda técnicamente indefinido En C. La sentencia return.FUNCIONES FUNCION: Es un segmento del programa que realiza determinadas tareas bien definidas. sus definiciones deben aparecer en cualquier orden. Sólo para fines docentes . Este valor. Cuando se llama a una función desde alguna determinada parte del programa. Primero fuerza una salida inmediata de la función en que se encuentra. pudiendo ser cualquier tipo valido. siguiendo la ejecución en la sentencia siguiente de donde fue llamada. pues de lo contrario se interpretara.h> int SUMA(int a. El otro uso. se ejecutan las instrucciones de que consta. debe declarar variables que acepten los valores de los argumentos. los cambios producidos en los parámetros de la función no afectan alas variables que se usan en la llamada. es devolver un valor. Cuando una función no se define de tipo void y.h> int SUMA(int a. } La función Mul tiene dos parámetros: a y b. int b). es fundamental colocar el tipo de la función. además. Todo programa C cuenta de una o más funciones. presentan la siguiente forma: Tipo_función nombre (lista_parametros) { cuerpo de la a función return(valor). se especifica explícitamente en la sentencia return. se devuelve el control al punto desde que se accedió. Al igual que como otro tipo de variables. Las funciones en C. Una vez que se ha completado la ejecución de una función. int b) { return(a * b). #include <stdio. De esta manera. si no devuelve valor el tipo es void. Si un programa contiene varias funciones. } Tipo_funcion corresponde al tipo de valor que devuelve la función. Esta variables se llaman parámetros formales de la función. Se puede acceder a una función desde varios lugares distintos del programa. ARGUMENTOS DE FUNCIONES: Cada función que use argumentos. En C. todas las funciones excepto las de tipo void. devuelven valor. tiene dos usos importantes. no se especifica un valor de retorno. una definición de una función no puede estar incluida en otra. Esto es.

y=200. printf("Direccion de x en p1 y en p2 %p %p \n". es cualquier tipo valido en C. } { int x=5. *p1. printf("la suma de %d + %d = %d"x. } LLAMADA POR REFERENCIA: Es otra forma de pasar argumentos a una función. } #include <stdio. Existen 2 operadores especiales de puntero: & y *. y=6. return (c). Normalmente. int *b) { int z.h> main() { int x=5. p1. Para causar una llamada por referencia se debe pasar un puntero al argumento. /* define un puntero a p1 y p2 */ int *p1. /* p2 toma el valor de p1 */ p2 = p1. } int CAMBIAR(int *a. Sólo para fines docentes 41 . Ejemplo: #include <stdio.y).z). y=6. printf("la suma de %d + %d = %d".&y). esa dirección es la posición en memoria de otra variable. *y = z. devuelve el valor de la variable que se encuentra en la dirección apuntada. z = SUMA(x. y=6.z=0. } PUNTEROS PUNTERO: es una variable que contiene una dirección de memoria.y). Ejemplo: #include <stdio.y.y. printf("Contenido de p1 y p2 como punteros %p %p \n". El & devuelve la dirección de memoria de su operando. p2). } int SUMA(int a. z = SUMA(x. CAMBIAR(&x. x). printf("ahora x = %d y = %d \n". nombre. y el *.c = a + b).z).h> main() { int x=100. La forma general de declarar un puntero es la siguiente: tipo *nombre Tipo. } main() { int x=5. printf("x = %d y = %d \n". es el nombre de la variable puntero.y). *p1. printf("Contenido de x %d \n".h> main() { int x=5. se debe declarar el respectivo parámetro formal de tipo puntero.x. *p2). *p2. *p2). z = *x.x. modifican a la variable usada en la llamada. cualquier cambio producido en los parámetros de la función. Preparado por Prof: Luis González T. En este método.x. Además.z=0. int b) { int c. se copia la dirección del argumento en el parámetro formal. return (c). /* p1 toma la dirección de x */ p1 = &x. printf("Contenido de p1 y p2 como entero %d %d \n". *x = *y. esto se hace incorporando un & delante de él.y). c = a + b).

y). printf(" x = %d \n". También se pueden declarar variables de estructura del tipo etiqueta. Ejemplo: struct libros { char autor[25]. Un archivo debe ser abierto antes de ser creado a procesado. char titulo[30]. el primer paso es establecer un área de buffer donde la información se almacena temporalmente mientras se esta transfiriendo entre la memoria y el archivo de datos. También especifica como se va a utilizar el archivo. *p). int cantidad. tipo elem-2: .h). esto se realiza escribiendo: variable. printf( direccion p = %p \n". } variables tipo etiqueta. A diferencia de los arreglos. printf( valor de p = %d \n". El área de buffer se establece definiendo un puntero tipo archivo de la siguiente forma: FILE *nombre-variable FILE (en mayúscula) es un tipo especial de estructura que establece el área de buffer. la variable y el miembro deben ir separados por un punto. float valor. } ESTRUCTURAS Una estructura es un tipo conglomerado que esta compuesto por dos o más elementos relacionados. /* x toma el resultado de la multiplicación del valor que tiene la dirección asignada a p * 5 */ x = *p * 5.. Ejemplo: nuelib. Preparado por Prof: Luis González T.. Esto asocia el nombre de archivo con el área de buffer. es decir.... Sólo para fines docentes 42 . tienen el mismo formato que libros. antlib.miembro variable es el nombre de una variable tipo de un tipo de estructura y miembro el nombre de un miembro dentro de la estructura.. } nuelib. p). que puede diferir de los tipos de los otros elementos. Las estructuras se definen usando la siguiente forma general: struct etiqueta { tipo elem-1. Esta área de buffer permite leer y escribir información del archivo más rápidamente. PROCESAMIENTO DE UNA ESTRUCTURA: Los miembros de una estructura se procesan generalmente en forma individual. tipo elem-n.. /* p toma la dirección de y */ p = &y.. printf(" y = %d \n". en el ejemplo libros es la etiqueta y nuelib y antlib son variables del tipo libros. Los elementos individuales de una estructura son referidos como miembros. x). cada elemento de una estructura puede tener su propio tipo.autor MANEJO DE ARCHIVOS EN LENGUAJE C APERTURA Y CIERRE DE UN ARCHIVO: Cuando se trabaja con archivos. Una estructura debe ser definida en términos de sus miembros individuales."tipo-archivo")./* define un puntero a p */ int *p. char editor[25]. Para abrir el archivo se codifica lo siguiente: nombre-variable = fopen("nombre-archivo". nombre-variable la variable puntero que indica el principio del área (FILE normalmente definido en stdio.

La función fopen retorna un puntero al principio del área de buffer asociada con el archivo."r")) if (ftp == NULL) printf("No puedo abrir archivo ya que archivo no existe").dat". Ejemplo lectura: fread(&nuelib. LECTURA Y ESCRITURA DE ARCHIVOS Función fread: permite leer un archivo.. abre o crea el archivo para escribir al final. ..h> .. "w+" crea el archivo para actualización.. Ejemplo: FILE *ftp. pp: el puntero al archivo...h> #include <conio... "w" abre el archivo para escritura...pp)...ftp). 1: el numero de bloques a transferir. Función fwrite: permite escribir en un archivo .1. ftp = (fopen("hola..1. EJEMPLO DE MANEJO DE ARCHIVOS #include <stdio.. Tipo-archivo: • • • • • • "r" abre el archivo para lectura. Formato: fread(&nn.ftp). Se retorna el valor NULL si no puede abrir el archivo.pp).1..Nombre-archivo y tipo-archivo son cadenas que representan. otra forma: if ((ftp = fopen("hola. fclose(ftp). sizeof(): el tamaño del bloque de datos.1.dat".. "a+" Lee y agrega.. Sólo para fines docentes 43 .sizeof(nn).. else PROCESO .."r")) == NULL) printf("No puedo abrir archivo ya que archivo no existe"). Cada una de estas funciones necesita cuatro argumentos: nn: es la variable estructura tipo registro..... respectivamente. "a" agrega. Ejemplo escritura: fwrite(&nuelib. si no existe crea uno nuevo. el nombre del archivo y la forma en que el archivo será utilizado.sizeof(nuelib).. descarta cualquier contenido previo si existe. Formato: fwrite(&nn. "r+" abre el archivo para actualización.sizeof(nn). Define estructura para el registro de datos del archivo struct nombre-estructura { definición de campos } nombre-registro. si existe será destruido y creado uno nuevo.. else PROCESO fclose(ftp). main() { Define puntero para el archivo Preparado por Prof: Luis González T.sizeof(nuelib)....

"rb")) == NULL) { printf("No existe el archivo en el disco")... break.sizeof(nomb-registro."wb")) == NULL) { printf("No hay espacio en disco para crear archivo").1..1. . } . se posiciona para regrabar el registro fwrite(&nomb-registro...X.... Graba registro en archivo fwrite(&nomb-registro. exit(1)... Lee un registro del archivo y guarda la cantidad de bytes leídos (ftell) fread(&nomb-registro. .... Lee un registro del archivo fread(&nomb-registro. Proceso del registro .... .1.. break.."rb+")) == NULL) { printf("No existe el archivo en el disco")...sizeof(nomb-registro. ACTUALIZACION DE ARCHIVO Abre archivo para actualización If ((puntero=fopen("nomb-archivo·..puntero) X = ftell(puntero)......sizeof(nomb-registro...LR...... FILE *puntero... fseek(puntero.1..puntero) Proceso del registro . } GRABACION DE ARCHIVOS Abre el archivo para escribir (grabar) registro If ((puntero=fopen("nomb-archivo·... } ....puntero) LECTURA DE ARCHIVO Abre archivo para lectura If ((puntero=fopen("nomb-archivo·. .... Regrabación del registro actualizado X tiene la cantidad de bytes leídos LR tiene que tener la longitud del registro X = X .... } ......puntero) Preparado por Prof: Luis González T.....0). Sólo para fines docentes 44 .sizeof(nomb-registro..

sizeof(nomb-registro. Proceso del registro . CICLO PARA PROCESO HASTA FIN DE ARCHIVO Leer registro while(!feof(puntero)) { .. . Cierre del archivo fclose(puntero)... Lee el siguiente registro suma la longitud del registro fseek(puntero.puntero) X = ftell(puntero).1.. Sólo para fines docentes 45 . .. se posiciona en el siguiente registro fread(&nomb-registro.... .....0). .X.X = X + LR. Leer registro nuevamente }.. Preparado por Prof: Luis González T.

h Retorna el numero de caracteres de la cadena string. math. Retorna ctype..h pero no lo muestra en pantalla.h un valor distinto de 0 si es cierto..h devuelve un valor distinto de 0. Retorna d1 elevado a d2.f) fseek(f. 0 si s1= s2. stdio. Determina si el argumento es un espacio en blanco.h s2. ctype.h Abre un archivo llamado s1.f) ftell(f) fwrite(s. stdio.h Escribe una cadena en el dispositivo de salida. Retorna un ctype. Retorna la posición actual del puntero dentro del archivo stdio. Permite grabar registros en un archivo. Compara dos cadenas. stdlib.h Retorna la raíz cuadrada de d. Determina si el argumento es una letra mayúscula.h Mueve el puntero al archivo f una distancia de 1 byte stdio. ctype.s2) strcpy(s1..i2. math.h f. stdio.k cd1 un carácter nulo.h Escribe un carácter en el dispositivo de salida standard stdio.. Retorna un valor negativo si s1 < string.h s2.h distinto de 0 si es cierto. y un valor positivo si s1> s2. Lee un carácter desde el dispositivo standard. stdio. stdio.h Propósito 46 función exit(u) fclose(f) feof(f) fmod(d1. stdio. Retorna un valor ctype.h Escribe datos en el dispositivo de salida standard. Copia la cadena s2 en la cadena s1.h Espera que se le ingrese un carácter y devuelve el valor conio.i2. math.h Retorna un valor distinto de 0 si es cierto.h Lee datos del dispositivo de entrada standard.c) Tipo void int int double file* int int long int int int int int char* int int int int Int int int double int int int int double char int int char* int Preparado por Prof: Luis González T. devuelve 0 si se ha cerrado con éxito. stdio.h mostrándolo en pantalla.h Permite leer registros de un archivo. Retorna un valor negativo si s1 < string.l.h Retorna un valor distinto de 0 si es cierto.d2) fopen(s1.h Determina si e argumento es alfanumérico.s2) strcmpi(s1. Compara dos cadenas. 0 si s1= s2.cd2) strcmp(s1. Retorna el resto de d1/d2 con el mismo signo que d1. Esta función considera las mayúsculas y minúsculas. stdio.h Determina si se ha encontrado fin de archivo.d2) printf(. Compara sin considera las mayúsculas y minúsculas. Sólo para fines docentes .) putchar(c) puts(s) scanf(.h Cierra el archivo f. stdio.) sqrt(d) strcat(cd1. Determina si el argumento es alfabético. stdio.i1.f) getch() getchar(void) getche() gets(s) isalnum(c) isalpha(c) isdigit(c) islower(c) ispunct(c) isspace(c) isupper(c) pow(d1. Determina si el argumento es una letra minúscula ctype.s2) strlen(s. string.s2) fread(s.i1. y un valor positivo si s1> s2.h valor distinto de 0 si es cierto.ALGUNAS FUNCIONES DE BIBLIOTECA Archivo include Cerrar los archivos y terminar el programa. Determina si el argumento es un carácter de puntuación.h desde a posición donde se encuentra. ctype.h Retorna un valor distinto de 0 si es cierto.h Retorna un valor distinto de 0 si es cierto. Lee una cadena desde el dispositivo standard. del tipo s2.h Espera que se le ingrese un carácter y devuelve el valor conio. Determina si el argumento es un dígito decimal. si es así.h Concatena una copia de cd2 en cd1 y añade al final de string.

h Preparado por Prof: Luis González T.strset(s.h stdlib.c) tolower(c) toupper(c) char* int int Pone todos los caracteres de s en c (excluyendo el string. Convierto una letra a minúscula. ctype. Sólo para fines docentes 47 . ctype.h Convierto una letra a mayúscula.h stdlib.h carácter nulo del final \0).

Sign up to vote on this title
UsefulNot useful