You are on page 1of 81

FUNDAMENTOS DE PROGRAMACIN

QUE ES UN COMPUTADOR
DEFINICIN 1: En informtica la ciencia del tratamiento automtico de la
informacin, se llama COMPUTADOR, un aparato electromecnico o sistema
que es capaz de recibir y almacenar informacin, ordenarla y hacer con ella
operaciones lgicas y matemticas a muy alta velocidad. Utiliza las operaciones
matemticas bsicas (suma, resta, multiplicacin, divisin).
Est compuesto por una unidad central CPU, un teclado un monitor o pantalla.

DEFINICIN 2: La computadora es una mquina diseada para facilitar el


trabajo y la vida de las personas. Con ella realizamos clculos y diseos,
escribimos textos, guardamos informacin, enviamos y recibimos mensajes,
accedemos a cursos de nuestro inters, navegamos en el Internet, entre otras
cosas.

COMIENZOS DEL COMPUTADOR

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:1

FUNDAMENTOS DE PROGRAMACIN

Su inicio pudo ser el baco (Chinos) aprox. 5,000 aos


La mquina de clculo de Blaise Pascal (1642) sumaba y restaba (Origin
las cajas registradoras) pascalina
La MAQUINA DE NUMEROS IMPRESOS Jhon Nappier
La mquina perforadora de Charles Babbage 1822
La tabuladora de Hermann Hollerith 1860 1929
La MARK I 1944 respaldado por IBM
El ENIAC 1946 con tubos al vaco UNIVAC
El IBM 650 1959 1965 alcanz el dominio industrial
El APPLE 2 1957 1977
El computador actual en sus diferentes modelos, marcas, procesadores,
velocidades y aplicaciones avanzadas, como: INTEL (Celeron, Pentium
3, Pentium 4, Xen, Itaniun2) AMD (ATHLON, DURON)

FUNCIONES BSICAS
Es el procesamiento de informacin, almacenar informacin, arrojar resultados.
NOTA: Para que un computador pueda trabajar debemos tener instalado el
SISTEMA OPERATIVO en el disco duro.
El Sistema Operativo es el primer programa que se carga en el computador al
arrancarlo. Y se encarga de regular su funcionamiento.
Los objetivos del sistema operativo son: facilitar a los programas del usuario el
acceso a los distintos recursos o dispositivos que se puedan producir.
El sistema operativo permite establecer comunicacin entre el usuario y la
mquina (computador) a travs de una lnea de rdenes o comandos que debe
interpretar el computador para generar una respuesta.
Los ms conocidos actualmente son: todas las versiones de Windows.
Estos sistemas operativos son en ambiente grfico o de interfaz grfica, y
adems son diseados por la empresa Microsoft.
Existen otros sistemas operativos como linux, xenix, unx etc.
MARCAS vs CLONES
Si hablamos de marcas debemos hablar de tecnologa cerrada. Se pueden
actualizar algunas partes, alta confiabilidad, ms seguros, altos costos y un buen
soporte tcnico.

Marcas
Mac Apple, Compaq, IBM, Acer, NCR, Dell, Gateway, Texas
Instruments, SONY, Toshiba, Samsung, HP

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:2

FUNDAMENTOS DE PROGRAMACIN

Clones
Si nos referimos a los clones; podemos decir que es una tecnologa muy
parecida, menos integrada, ms baratos, tecnologa abierta menos
confiables, ms opciones para poder actualizar casi todas las partes del
computador.
Usan muchas partes de marcas, INTEL, AMD, Seagate, Quantum etc.

PARTES INTERNAS QUE CONSTITUYEN LA ARQUITECTURA DE UN


MICROCOMPUTADOR
Main Board ( TARJETA PRINCIPAL ) AT, ATX
Procesador ( MICROPROCESADOR, CPU )
Memoria PRINCIPAL
RAM (SIPP, SIMM 30 y 72 pin DIMM 168 pin, RIMM,DDR)
CACHE ( sram )
ROM
Disco Duro (IDE, SCSI, USB)
La unidad de CD ROM \ CD-ROM WRITER (IDE, SCSI, USB)
El DVD (DISCO DE VIDEO DIGITAL)
Drive 3
Fuente (Alimentacin de Voltaje) AT, ATX
Unidad de Backup ( SCSI )
Puertos Seriales (COM1) Mouse serial, (COM2) o Modem externo
Puertos paralelos (LPT1, LPT2) Para impresora
Puertos IDE (Conectores)
Puertos USB (Conectores)
Conectores DIN (CLON) Teclado
MINIDIN (PS/2) Para teclado y ratn
Ranuras (Bus) Vesa, ISA, PCI, AGP
Socket, Slots
Tarjeta de Vdeo (ISA, PCI, AGP
Tarjeta de Sonido (ISA, PCI)
Tarjeta de Red (ISA, PCI)
Tarjeta de Mdem (ISA, PCI)
Tarjeta controladora SCSI (ISA, PCI)
HARDWARE Y SOFTWARE
Como punto de partida en el reconocimiento de los componentes de un
computador debe entender la diferencia entre hardware y software:
a.- Hardware: este trmino ascielo a la siguiente idea: son todas aquellas
piezas fsicas que componen un computador. En el exterior estn la pantalla, el
teclado, el mouse o ratn, la impresora, el escner, o cualquier otro dispositivo
fsico. En el interior est el disco duro, la C.P.U., la disquetera, los procesadores y
diversas tarjetas de funcin.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:3

FUNDAMENTOS DE PROGRAMACIN

Con estos dispositivos puede controlar el envo y salida de informacin. Por


ejemplo, usted manda informacin al computador con el slo hecho de apretar el
teclado. En el caso de la salida de informacin, esto se hace, por ejemplo, a
travs de la impresora.
b.- Software: este trmino ascielo a la siguiente idea: es el conjunto de
rdenes electrnicas que hacen funcionar un computador y, por lo tanto, no
poseen una estructura fsica que se pueda ver y tocar. En otras palabras, el
software son los programas que se ejecutan o instalan dentro del computador.
Un ejemplo de esto es el sistema operativo y los programas diseados para
funciones especficas como por ejemplo los procesadores de texto, planillas de
clculos, bases de datos y presentaciones.
Ahora bien, el hardware, por s slo, es un montn de piezas intiles pues no
pueden funcionar independientemente sin que exista una plataforma de rdenes
que les diga que hacer. El software, por s slo, es un conjunto de rdenes que
tampoco pueden funcionar sin una plataforma fsica que los sostenga.
En otras palabras, ambos conceptos van de la mano. Sobre el hardware se
instalar el software, el cual controlar al primero, y ste a su vez, permite que
las rdenes del segundo tengan sentido en la realidad.
Imagine lo siguiente: el hardware son las neuronas y el software es el
pensamiento producido por ellas. Es imposible concebir el concepto de
"pensamiento" en forma separada. El mismo criterio debe aplicar cuando
imagine un computador, con la sola excepcin, que este ltimo es un aparato
limitado y que no posee la capacidad de pensar por s mismo.
Esta interaccin se puede ver reflejada en el siguiente caso. Usted da una orden
al computador para que imprima una pgina. Esta orden la ejecuta con el teclado
o bien usando el mouse (hardware); estos dispositivos trabajan sobre los
programas (software) que sern los encargados de reconocer y enviar la orden a
la impresora (hardware), mediante la cual se imprimir la informacin (software)
que ve en pantalla.
As funciona un computador. No existe nada de "magia" en su funcionamiento.
Recuerde: un computador es un aparato electrnico (hardware) que necesita un
sistema de rdenes (software) para funcionar. Y en ltima instancia, ambos
conceptos los maneja un usuario, es decir, usted.
Dependiendo de la necesidad del usuario, tenemos los siguientes programas:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:4

FUNDAMENTOS DE PROGRAMACIN

COMPONENTES
Un computador funciona y est estructurado por los siguientes componentes:

Dispositivos de entrada: son todas aquellas piezas del hardware que al ser
utilizadas cumplen la funcin de ingresar datos al computador. Ejemplo: teclado,
mouse, escner, micrfono, palancas de juegos y cmaras.
Unidad central: es el
fundamentales de un PC.

hardware

donde

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

estn

almacenadas

las

piezas

Pgina N:5

FUNDAMENTOS DE PROGRAMACIN
Dentro de la unidad central est el microprocesador o Unidad Central de
Procesamiento o C.P.U., cuya principal tarea es manipular la informacin al
interior del PC y para lo cual utiliza la Unidad de Control, encargada de enviar y
dirigir el flujo de informacin a las distintas unidades del computador.
Dispositivos de salida: son todas aquellas piezas del hardware que cumplen la
funcin de desplegar la informacin almacenada en el equipo. Ejemplo: pantalla,
impresora, y parlantes.
Unidad de almacenamiento: son todas aquellas piezas del hardware que se
ocupan para guardar los datos de un computador. Estas unidades se clasifican en
Principal, que corresponde a los discos duros, y Secundarias que
corresponden a los disquetes, CD-Roms, Discos Zip, y otras formas de
almacenamiento externos.
De acuerdo a las funciones que cada hardware cumple como unidad anexa al
computador, stos pueden clasificarse en componentes primarios y componentes
secundarios o perifricos.

Componentes primarios
Los componentes primarios de un computador son aquellas partes del hardware
sin las cuales el PC no opera correctamente. stas son:
Unidad central o torre
Pantalla o monitor
Teclado
Componentes secundarios
Los componentes secundarios de un computador son aquellas partes del
hardware de las cuales el PC puede prescindir. En otras palabras, la falta de una
de stas no altera el funcionamiento de un computador, por lo tanto su uso es
opcional.
A los componentes secundarios se les denomina perifricos y pueden clasificarse
en dos tipos: perifricos de entrada y perifricos de salida.
Perifricos de entrada: son aquellas partes del computador que al ser
utilizadas envan informacin al equipo, donde es almacenada o
procesada. Dentro de esta categora estn los siguientes componentes:
mouse, escner, micrfono, palancas de juegos y cmaras.
Perifricos de salida: son aquellas partes del computador que al ser
utilizadas extraen la informacin desde el interior del equipo hacia el
usuario. Dentro de esta categora estn los siguientes componentes:
impresora, y parlantes.
Una categora especial son aquellos perifricos que cumplen ambas funciones, es
decir son unidades de entrada y salida de informacin.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:6

FUNDAMENTOS DE PROGRAMACIN
Dentro de este rango estn las unidades grabadoras de CD y unidades Zip.
UNIDAD CENTRAL Y C.P.U.
La Unidad Central es la parte ms importante del computador. En otras palabras
es la unidad fsica donde se procesa toda la informacin y a la cual van
conectados el resto de las partes fsicas del PC, las cuales funcionan a travs de
los programas que el equipo tiene instalados.
En este caso, el "rgano" esencial de la Unidad Central es el procesador o C.P.U
(Central Processing Unit). Esta unidad es la que determina las caractersticas de
cada computador. Un procesador es un chip que se encarga de manejar los datos
del PC y transferirlos a las unidades correspondientes.

DISCO DURO
El Disco Duro forma parte de la Unidad Central y es el dispositivo de
almacenamiento principal de un computador.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:7

FUNDAMENTOS DE PROGRAMACIN

Esta unidad est compuesta, en su parte interna, por uno o ms platillos rgidos
los cuales giran sobre un eje. Cada platillo, recubierto con una capa de xido de
hierro, est almacenado en el interior de una cmara sellada que los protege.
Su gran capacidad les permite guardar una gran cantidad de informacin en su
superficie, la cual proviene de los softwares instalados en el PC o bien de los
propios archivos generados por los usuarios.
Esta capacidad de guardar informacin lgica se estructura como archivos, los
cuales a su vez estn contenidos en carpetas o directorios, o bien en subcarpetas
o subdirectorios.
Al igual que los computadores, los Discos Duros han ido progresando. Estas
mejoras estn relacionadas directamente con la capacidad de stos para guardar
archivos. En otras palabras, da a da aparecen Discos Duros con mayor
capacidad para guardar informacin.

Estructura lgica
La estructura lgica bsica de un Disco Duro est formada por archivos,
directorios y subdirectorios.
Archivo es un conjunto de datos creados por un usuario o bien un conjunto de
instrucciones de un software determinado.
Directorio es una herramienta lgica que permite la organizacin de un Disco
Duro. Usualmente un directorio est compuesto por distintos tipos de archivos.
A su vez, dentro de un directorio pueden existir otros directorios que, por su
ubicacin dentro de la estructura de un Disco Duro, reciben el nombre de
subdirectorios.
Todos los datos que se organizan dentro de un Disco Duro, tienen una ruta
(path) o va de acceso la cual permite al Sistema Operativo diferenciarlos y
organizarlos. Una ruta, en trminos lgicos es lo siguiente:
C:\Mis documentos\algn subdirectorio\algn archivo
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:8

FUNDAMENTOS DE PROGRAMACIN
La ruta o path indicada dice lo siguiente: en el "Disco Duro", dentro del directorio
"Mis Documentos", dentro del subdirectorio "algn subdirectorio" (este nombre
puede variar), existe el archivo "algn archivo".
Un computador puede organizar la informacin que usted genera. Sin embargo,
el orden y jerarqua de los datos debe correr por su cuenta.
Recuerde: el PC es una herramienta que usted maneja. Por tal motivo, y llegada la
hora de empezar a crear sus archivos dentro de un computador, es necesario que
usted determine cules sern los directorios y subdirectorios principales a partir de
los cuales crear una estructura lgica en el Disco Duro.
Cada vez que guarde algn archivo en el PC debe saber el lugar donde lo
almacen, pues de lo contrario perder tiempo tratando de buscar dicho dato en
la superficie de la unidad C.

1. Botn de encendido/apagado del computador: desde este botn se


prende el computador cuando se va a trabajar en el. Igualmente, una vez
finalizada la jornada, se pueden apagar. Estando el computador apagado,
al oprimir este botn, se da arranque al sistema, y estando prendido, si se
oprime una vez, se da inicio a la secuencia de apagado, y si se deja
oprimido durante 10 segundos, se apaga inmediatamente el computador.
2. Puertos USB: hoy en da la mayora de dispositivos que se conectan a un
computador tienen este tipo de conexin, por lo que los computadores
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:9

FUNDAMENTOS DE PROGRAMACIN
modernos traen ms de 8 puertos de este tipo, estando ubicados por lo
general 4 en el frente del equipo y 4 en la parte trasera.
3. Unidad de lectura de tarjetas: permite conectar directamente al
computador las tarjetas de memoria que se usan en la actualidad para
almacenar informacin en cmaras digitales, telfonos celulares, y otros
dispositivos.
4. Unidad de CD/DVD: esta unidad se utiliza para leer los discos compactos
de cualquiera de los dos formatos. Adicionalmente, permite grabar estos
discos con datos, msica o video.
5. Entrada de energa del computador: en este enchufe se conecta el
cable de alimentacin de energa al equipo. Esta conexin est a su vez
ligada internamente a un dispositivo llamado Fuente de Poder, que se
encarga de distribuir la energa para cada uno de los dispositivos del
computador.
6. Ventilador: como su nombre lo indica, se encarga de refrigerar
internamente el computador, pues el calor es el principal enemigo de los
circuitos elctricos.
7. Entradas PS2: se utilizan para conectar al equipo el mouse y el teclado
8. Puertos seriales: se utilizan para conectar al computador monitores,
impresoras, y dispositivos en general que utilicen esta conexin.
9. Entradas y salidas de audio: en estas conexiones se debe conectar los
parlantes y micrfonos del computador. Cada uno est identificado por un
color tanto en el computador, cmo en el dispositivo que vayamos a
conectar.
10.
Pantalla o monitor: es el principal medio del computador para
transmitirnos los datos que procesa. Existen 2 tecnologas que han
evolucionado a lo largo de los aos, estando una de ellas en sus ltimos
das; CRT y LCD, siendo la primera la ms obsoleta. Actualmente los
monitores se fabrican con pantallas LCD, que ocupan poqusimo espacio y
tienen una calidad de imagen y color muy similar a los antiguos
monitores.
11. Motherboard: la tarjeta madre, como se llamara en espaol, es el
alma de un computador, por lo cual no est visible para el usuario final. Es
en esta tarjeta donde se conectan el procesador, disco duro, memoria
RAM, tarjetas de video, sonido y en general cualquier elemento que
conforma el computador. Todos los puertos a los que conectamos teclado,
mouse, USB, monitor, impresoras y dems, llegan directamente a la
motherboard, desde donde se procesa la informacin que transmiten o
reciben.
12.
Mouse: as cmo el monitor es el canal de comunicacin de
computador a la persona, el mouse lo es a la inversa. Es la herramienta
por medio de la cual se transmiten la mayora de los comandos a un
computador. Est compuesto por 2 botones y una rueda llamada
clickwheel o scroll por medio de la cual manejamos la mayora de
funciones en el computador.
13.
Teclado: junto al mouse, es indispensable para manejar y ejecutar
comandos en un computador. Es el instrumento para ingresar texto,
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:10

FUNDAMENTOS DE PROGRAMACIN
desplazarnos por los documentos y realizar un sinfn de funciones.
Normalmente estn divididos en 3 secciones principales: teclado
alfabtico, que contiene las letras, teclas shift, control, enter y otras,
teclado numrico, que contiene nmeros y signos de multiplicacin, y
teclado de comandos, compuesto por las teclas F, que sirven para activar
funciones especiales o acortar el ingreso de rdenes a un programa.
14.
Parlantes: en los computadores modernos, es indispensable este
elemento, pues adems de sus funciones tradicionales, los computadores
se han convertido en el equipo de sonido de los hogares. Es por esto que
los parlantes de hoy en da van ms all de los bsicos de hace 5 aos, y
ofrecen buena calidad de sonido a precios muy accequibles.
SISTEMA BINARIO
Para almacenar informacin, un computador transforma las rdenes dadas por
usted en una cifra de dos dgitos. Decir esto puede parecer extrao sobre todo si
considera que las personas usan para contar una base de 10 o mejor conocida
como sistema decimal, el cual est compuesto por 1, 2, 3, 4, 5, 6, 7, 8, 9 y 0.
Ms an, Cuando usted necesita representar una cifra mayor que 9, como por
ejemplo el 10, combina el 1 y el 0.
Para el caso del computador, ste reduce los datos a dos dgitos, el 1 y el 0. Esta
forma de procesamiento se denomina Sistema Binario. Para entender este
concepto, digamos que el PC reduce e interpreta los datos tal como si fueran
interruptores de electricidad, es decir encendido o apagado. El encendido
corresponde al dgito 1 y el apagado es el 0.
Los nmeros 1 y 0, en lenguaje informtico se denominan bit, palabra que es
una contraccin del trmino en ingls binary digit.
A modo de referencia, un bit es la unidad de datos ms pequea que existe. Para
procesar y transmitir una orden, un computador necesita un grupo de bits, en
cuyo interior est procesado el mandato como un lenguaje en base dos, es decir,
la tarea solicitada est transformada en ceros (0) y unos (1).
Ahora bien, la siguiente unidad de medida es el byte, el cual est formado por
un total de 8 bits.
El byte es la unidad de medida ms importante dentro del sistema de un
computador, pues la informacin que almacena su cdigo permite representar los
caracteres del teclado, donde se debe incluir el uso de maysculas y minsculas,
signos de puntuacin, nmeros, etc.
Luego de revisar el concepto bsico de las unidades de medida, las siguientes
unidades son mucho ms fciles de entender. Se trata de kilobyte (Kb),
megabyte (Mb), gigabyte (Gb) y terabyte (Tb).

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:11

FUNDAMENTOS DE PROGRAMACIN
UNIDAD EQUIVALENCIA
Kilobyte (Kb)
Megabyte (Mb)
Gigabyte (Gb)
Terabyte (Tb)

1.024
1.024
1.024
1.024

Bytes
Kb
Mb
Gb

Kilobyte (Kb): esta unidad de medida asciela con el tamao de


documentos o archivos generados por usted. Puede ocurrir que algunos
archivos lleguen a ser medidos en Megabyte, (por ejemplo una base de
datos), sin embargo esta posibilidad es poco frecuente. Segn su tamao, los
kilobyte pueden ser guardados en disquetes, Discos Duros, CD-Rom y
unidades ZIP.
Megabyte (Mb): esta unidad de medida asciela con el tamao de archivos
que puede contener un programa o software, o alguna base de datos. Las
unidades que pueden contener un megabyte son los disquetes, Discos Duros,
CD-Rom y unidades ZIP.
Gigabyte (Gb): esta unidad de medida es una de las ms grandes. Asciela
a la cantidad de informacin que puede ser almacenada dentro un Disco Duro
de ltima generacin.
Terabyte (Tb): esta unidad de medida es la ms grande que se conoce
hasta la fecha.
ALGORITMOS
INTRODUCCIN
A menudo nos hacemos la pregunta del por qu los programadores escriben un
programa. Esto es para resolver un problema por lo que el propsito de nuestro
estudio ser el ensear y aprender un mtodo de solucin de problemas con
programas de computadora mediante el uso de algoritmos y diagramas que
faciliten la programacin estructurada.
DISEO DE UN PROGRAMA

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:12

FUNDAMENTOS DE PROGRAMACIN

Los pasos que se siguen generalmente a la hora de desarrollar un programa son


los siguientes:
Anlisis de requerimientos: Se define el problema a resolver y todos los
objetivos que se pretenden, pero sin indicar la forma en la que se resuelve.
Especificacin: Se determina la forma en la que se resolver el problema,
pero sin entrar an en su implementacin informtica. Se determina
asimismo la interfaz con el usuario.
Diseo del programa: Se divide el problema en mdulos, se especifica lo
que hace cada mdulo, as como las interfaces de cada uno de ellos.
Diseo detallado de los mdulos: Para cada mdulo se disean
detalladamente las estructuras de datos y los algoritmos a emplear,
normalmente descritos mediante pseudocdigo.
Codificacin: Se escribe el programa en el lenguaje de programacin
elegido.
Pruebas de mdulos: Se prueban los mdulos del programa aisladamente y
se corrigen los fallos hasta conseguir un funcionamiento correcto.
Integracin y Prueba de sistema: Se unen todos los mdulos, y se prueba
el funcionamiento del programa completo.
Distribucin del esfuerzo de la actividad software (sin tener en cuenta
el mantenimiento):
Anlisis y Diseo : 38%
Codificacin : 20%
Test e integracin: 42%.
VENTAJAS DE LA PROGRAMACIN ESTRUCTURADA
Con la programacin estructurada, elaborar programas de computador sigue siendo
una labor que demanda esfuerzo, creatividad, habilidad y cuidado. Sin embargo,
con este nuevo estilo podemos obtener las siguientes ventajas:
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:13

FUNDAMENTOS DE PROGRAMACIN
1. Los programas son ms fciles de entender. Un programa estructurado puede
ser ledo en secuencia, de arriba hacia abajo, sin necesidad de estar saltando
de un sitio a otro en la lgica, lo cual es tpico de otros estilos de
programacin. La estructura del programa es ms clara puesto que las
instrucciones estn ms ligadas o relacionadas entre s, por lo que es ms
fcil comprender lo que hace cada funcin
2. Reduccin del esfuerzo en las pruebas. El programa se puede tener listo para
produccin normal en un tiempo menor del tradicional; por otro lado, el
seguimiento de las fallas o depuracin (debugging) se facilita debido a la
lgica ms visible, de tal forma que los errores se pueden detectar y corregir
ms fcilmente
3. Reduccin de los costos de mantenimiento
4. Programas ms sencillos y ms rpidos
5. Aumento en la productividad del programador
6. Se facilita la utilizacin de las otras tcnicas para el mejoramiento de la
productividad en programacin
7. Los programas quedan mejor documentados internamente
CONCEPTO DE ALGORITMO
El concepto de algoritmo forma parte esencial de los fundamentos de la
computacin

En trminos generales puede definirse un algoritmo como el mtodo para


resolver un determinado problema. El ejecutor de las instrucciones que
realiza la tarea correspondiente se llama procesador. Existen algoritmos
que describen toda clase de procesos, por ejemplo: las recetas de cocina,
las partituras musicales, etc. Un procesador realiza un proceso siguiendo o
ejecutando el algoritmo correspondiente

Un algoritmo debe estar expresado de tal forma que el procesador lo


entienda para poder ejecutarlo. Se dice que el procesador es capaz de
interpretar el algoritmo, si el procesador puede realizar lo siguiente:
1. Entender lo que significa cada paso
2. Llevar a cabo la sentencia correspondiente
Esto significa que para que un algoritmo pueda ser correctamente
ejecutado, cada uno de sus pasos debe estar expresado de tal forma que
el procesador sea capaz de entenderlos y ejecutarlos adecuadamente

Se definir un algoritmo como un conjunto finito de instrucciones que


especifican la secuencia ordenada de operaciones a realizar para resolver
un problema. En base a lo anterior, si el procesador del algoritmo es una
computadora, el algoritmo debe estar expresado en forma de un
programa, el cual se escribe en un lenguaje de programacin. A la
actividad de expresar un algoritmo en un lenguaje de programacin
determinado se le denomina programar

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:14

FUNDAMENTOS DE PROGRAMACIN

Un algoritmo es una secuencia finita de instrucciones, cada una de ellas


con un claro significado, que puede ser realizada con un esfuerzo finito y
en un tiempo finito

A un algoritmo que suministra una solucin buena,


necesariamente ptima, se le denomina algoritmo heurstico

Un algoritmo es una secuencia finita de instrucciones, cada una de ellas


con un claro significado, que puede ser realizada con un esfuerzo y un
tiempo finitos. Por ejemplo, una asignacin como x= y+z es una
instruccin con estas caractersticas

pero

no

Descripcin de algoritmos
Un algoritmo se puede especificar mediante la utilizacin de un lenguaje de
programacin.
Sin embargo, generalmente se suelen utilizar tcnicas de
descripcin de algoritmos ms o menos independientes del lenguaje de
programacin.

Qu es un algoritmo?
Frmula para resolver un problema
Consta de una serie de pasos
Se aplica de forma mecnica
Se aplica en un tiempo finito

Uso de la computadora en la resolucin de problemas


En general, se escriben algoritmos para resolver problemas que no son tan
fciles de resolver a primera vista, y de los que necesitamos especificar el
conjunto de acciones que se llevarn a cabo para su resolucin. Adems, como
lo que interesa es resolver problemas utilizando la computadora, los algoritmos
tendrn como finalidad ser traducidos en programas, por lo que es conveniente
mencionar el proceso general de resolucin de problemas, desde que se dispone
de un algoritmo, hasta que la computadora lo ejecuta.
Proceso general de resolucin de problemas con la computadora

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:15

FUNDAMENTOS DE PROGRAMACIN
CONDICIONES CON LAS QUE DEBE DE CUMPLIR UN ALGORITMO

Estructura de un algoritmo
Aunque no existe una nica forma de representar un algoritmo, la estructura
general de un algoritmo debera ser como la mostrada a continuacin:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:16

FUNDAMENTOS DE PROGRAMACIN

Definicin del problema


Dados dos nmeros enteros positivos m y n, encontrar su mximo comn
divisor (MCD), es decir, el mayor entero positivo que divide a la vez a m y a n.
Lo bsico es resolver la pregunta Qu vamos hacer? y Cmo lo vamos hacer? y
para resolverlas es indispensable identificar:
Entrada: Dos nmeros enteros positivos: m y n.
Salida: Un nmero que representa el MCD (Mximo Comn Divisor) de m y n.
Proceso: La solucin est basada en el residuo de la divisin de los operandos
m y n. Si el residuo es 0 entonces hemos terminado, si no, habr que hacer
intercambio de valores y continuar con el proceso.
El ejemplo anterior ilustra el proceso de resolucin que se debera seguir para
resolver un problema, ya que partiendo de este anlisis inicial, la idea ser
entonces ir particularizando cada parte en un refinamiento progresivo, hasta
llegar a un algoritmo ms refinado y funcional.
Pruebas de algoritmos
Una vez que se ha generado un algoritmo que parece correcto, una de las partes
ms importantes dentro de su diseo es la referente a las pruebas. La parte de
la validacin de los datos de entrada al algoritmo es tambin un aspecto
importante, aunque normalmente lo que se hace, es construir un algoritmo
aparte que se encargue de validar que los datos de entrada sean los correctos,
pero ese aspecto no es lo que se quiere comentar en esta seccin.
Una vez que se tiene una solucin algortmica de un problema, no se debera
suponer o creer que funcionar bien siempre. En el diseo del algoritmo se
deben considerar al menos algunos casos de prueba. Es habitual que el domino
de trabajo de un algoritmo sea un conjunto de elementos y entonces sera bueno
saber por ejemplo Cmo se comporta el algoritmo en los lmites del conjunto?
Dado un mismo dato de entrada obtengo siempre la salida esperada? entre
otras preguntas.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:17

FUNDAMENTOS DE PROGRAMACIN

La fase de prueba de los algoritmos es una parte fundamental dentro del diseo
del mismo, y se recomienda ampliamente adoptarlo como prctica habitual, ya
que es una importante tcnica de programacin.
A este nivel, es suficiente saber que es conveniente realizar algunas pruebas
sobre los algoritmo desarrollados.
Terminologa
Nivel descripcional.- Grado de detalle (mientras ms bajo, ms
detallado es).
Secuencia.- Orden de las instrucciones en un algoritmo.
Bifurcacin.- Tipo de instruccin como pregunta y cuya respuesta lleva a
efectuar una operacin.
Iteracin.- Paso a la ejecucin de una instruccin (ciclo, bucle, loop,
lazo).
Variable.- Elemento de almacenamiento de los datos que se van a utilizar
en el desarrollo del algoritmo. El contenido puede variar durante el
proceso.
Asignacin.- Conferir el valor a cierta variable "=".
Programacin estructurada.Tcnicas que permiten desarrollar
programas que sean fciles de depurar y poner a punto, legibles. etc.
IDENTIFICADORES
Los identificadores son nombres creados para designar constantes, variables,
tipos, funciones, etc., que forman parte de un programa.
Un identificador consta de uno o ms caracteres (letras, dgitos y caracteres de
subrayado); el primero debe ser una letra. El nmero de caracteres no debe
superar una longitud mxima dependiendo del lenguaje de programacin que se
utilice.
En algunos de los lenguajes se diferencia entre maysculas y minsculas
mientras que en otros no. Por ejemplo: A equivale a a en Pascal; pero en C
equivalen A y a.
Ejemplo: Algoritmo Nombre_del_del_algoritmo.
Fin_algoritmo.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:18

FUNDAMENTOS DE PROGRAMACIN

Identif ic ador

Letra
Letra
Dgito
Subrayado

DIAGRAMA

DE

SINTAXIS

DE UN IDENTIFICADOR VALIDO

VARIABLES
Una variable es el elemento de almacenamiento de los datos que se van a
utilizar en el desarrollo del algoritmo. Estos resultados se corresponden con los
datos iniciales como los resultados de operaciones efectuadas durante la
ejecucin de un algoritmo.
Las variables representan un lugar de
almacenamiento, cuyo contenido podr variar durante el proceso y finalmente se
obtendrn los resultados con los datos contenidos en las variables.
Las caractersticas de una variable son:
o Nombre: Para referenciar los datos almacenados en una variable se debe
antes asignar un nombre a esta. Para mayor claridad el nombre debe
coincidir con la informacin almacenada en esta. El nombre empieza con una
letra, no tiene espacios en blanco y no contiene caracteres especiales, slo se
utiliza el carcter de separacin (_).
o

Contenido: Es el valor del dato almacenado en ella, al contenido se accede


por medio del nombre de la variable. La informacin almacenada en una
variable puede ser de tres tipos:

Carcter:
Nombres,
direcciones
o
caractersticas
alfanumricos
Tipo numrico: Utilizada para calcular resultados
Informacin de tipo lgico para el control de procesos

smbolos

Durante la elaboracin de un algoritmo la misma variable debe almacenar


datos de un solo tipo.
o

Ubicacin: Est dada por el nombre de la variable, en el computador el


contenido de una variable ocupa un lugar en la memoria RAM. Para accesar a
este contenido se utiliza el nombre de la variable.

ASIGNACIN DE DATOS

Asignaciones
Una variable puede tomar valores de dos formas:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:19

FUNDAMENTOS DE PROGRAMACIN

Por operacin de asignacin: (a= b+1);


Por lectura (Leer a).

Est operacin de asignacin es de carcter destructiva porque el valor anterior


de la asignacin se pierde y es reemplazado por el nuevo valor.
La variable puede aparecer a ambos lados de una operacin de asignacin y es la
forma como se trabaja con los contadores y acumuladores.

Contadores
Son variables cuyo objetivo es ir contando cuntas veces se ha realizado un
proceso, se las utiliza como elemento ordenador que da como resultado el
nmero de veces que se ha realizado una accin. Es una variable entera.
Ejemplo:
Contador = Contador +1;

Acumuladores
Tambin son variables las cuales tienen como objeto sumarizar un conjunto de
valores en una variable.
Son fundamentales en problemas que requieren
totalizar un dato para obtener un resultado.
Ejemplo:
Suma= Suma+2;
Total= salario + beneficios_de_ley;
EJEMPLO DE MODELO DE SOLUCION
Construir un modelo de solucin que resuelva el problema de calcular el rea de
un tringulo con la frmula rea igual a base por altura sobre dos.

Variable(s) Entrada

Proceso u operacin

Variable(s) salida

BASE

AREA = BASE * ALTURA

AREA

ALTURA

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:20

FUNDAMENTOS DE PROGRAMACIN

Una variable se define como un identificador que se utiliza para almacenar todos los
datos generados durante la ejecucin de un programa.
Existen ciertas reglas en cuanto a variables:
Claras y con referencia directa al problema
No espacios en blanco, ni smbolos extraos en ellas
Se pueden usar abreviaturas, pero solo de carcter general
No deben ser palabras reservadas del lenguaje

Ejemplos de buenas variables:


Nombre, Edad, SdoDiario, IngMensual, Permetro, Calif1, etc.

OPERADORES ARITMETICOS
Un operador es un smbolo especial que indica al compilador que debe efectuar
una operacin matemtica o lgica.
Se reconoce los siguientes operadores aritmticos:

Operador

Operacin

Suma

Resta

Multiplicacin

Divisin

Div

Divisin entera

Mod

Modulo o residuo

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:21

FUNDAMENTOS DE PROGRAMACIN
OPERADORES LGICOS
Los resultados se ven en la tabla:
Variables lgicas
Cond1
Cond2
Falso
Falso
Falso
Verdadero
Verdadero
Falso
Verdadero
Verdadero

Cond1 OR
Cond2
Falso
Verdadero
Verdadero
Verdadero

Cond1 AND
Cond2
Falso
Falso
Falso
Verdadero

NOT
(Cond2)
Verdadero
Falso
Verdadero
Falso

OPERADORES RELACIONALES
Se utilizan siempre en operaciones de comparacin, su resultado siempre es un
valor lgico (Verdadero o Falso), requiere de dos operados y pueden trabajar
cualquier tipo de dato.
Los operadores relacinales que reconocen en muchos lenguajes como:
Operador

Significado

Igual que

>

Mayor que

<

Menor que

>=

Mayor o igual que

<=

Menor o igual que

<>

No es igual o es diferente que

Ejemplo:
5>10
Falso
-15.3<6 Verdadero.
'D'>'M' Falso

EXPRESIONES
Pueden
estar
IN
Pertenece A
compuestas por una
variable (numrica o de
caracter), constantes, una cadena de caracteres encerrada entre comillas dobles
("cadena") o una expresin matemtica.
JERARQUIA DE OPERACIONES
El problema de no tomar en cuenta la jerarqua de los operadores al plantear y
resolver una operacin casi siempre conduce a resultados muchas veces
equivocados como estos:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:22

FUNDAMENTOS DE PROGRAMACIN
Ejemplos:
2+ 3* 4 = 20(incorrecto)
Variable = 14 (correcto)
Si calif1=60 y calif2=80 y si entonces en programa se usa
Promedio = calif1 + calif2/2
Dara como resultado promedio = 100
Recordar siempre, que antes de plantear una frmula en un programa se deber
evaluar contra el siguiente:
Orden de operaciones:
1. Parntesis
2. Potencias y races
3. Multiplicaciones y divisiones
4. Sumas y restas
5. Dos o ms de la misma jerarqua u orden, entonces resolver de
izquierda a derecha

Nota: Si se quiere alterar el orden normal de operaciones, entonces usar


parntesis.
Ejemplos de algoritmos:
1.
Algoritmo para lavar la ropa blanca

2.

Algoritmo para decidir si coger el paraguas

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:23

FUNDAMENTOS DE PROGRAMACIN

3.

Algoritmo para clasificar libros

ESTRUCTURA GENERAL DE UN PROGRAMA


Un programa se especifica por:
Entradas
Proceso
Salida

Los procesos se definen por algoritmos


Algoritmos: Conjunto de instrucciones
Tipos de instrucciones:
o Asignacin: x = 2
o Lectura y escritura: leer(a), escribir(b)
Bifurcacin: si condicin entonces accin
Elementos de un lenguaje
Palabras reservadas: si entonces, Algoritmo finalgoritmo, mientras
Identificadores
Caracteres especiales: =, ;, {
Constantes
Variables
Expresiones: a = b * 5 c
Datos y tipos de datos
Datos simples y estructurados
Tipos de datos:
o Numricos
o Lgicos
o Carcter

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:24

FUNDAMENTOS DE PROGRAMACIN
Datos numricos:
Enteros: -10, 6, 291
Reales: 1.5, -0.63, 54.4E-10
Datos lgicos:
Booleano
Verdadero / Falso
Datos de tipo carcter
Carcter: a, z, A, Z, 0, 9,+,-,*
Cadena: Ejemplo de cadena.
Constantes y variables
Constantes: valores que no cambian
Numricas: 1.234, -10, 8
Carcter: B, , 4
Cadena: Mesa
Lgicas: verdadero, falso
Variable: datos cuyo valor puede cambiar
Posee un nombre y un tipo
Enteras, reales, carcter, lgicas, cadenas
Ejemplos: A124, k, Nombre
Expresiones: Combinaciones de constantes, variables, operaciones, funciones y
parntesis
Tipos de expresiones:
Aritmticas: +, -, *, /, div, mod, ^
(4 + A) * 7 / B
Lgicas: no, y, o, =, <, >, <=, >=,
no (A > B) o (B 10)
Funciones: raz_cuadrada, cos, sen
Expresiones

Entrada y salida de informacin


Dispositivos de entrada: teclado, disco
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:25

FUNDAMENTOS DE PROGRAMACIN

Operacin de entrada
Leer ( idDispositivo, lista variables)

Ejemplos
Leer (a, b, c) {Lectura de teclado}
Leer (idFichero, a, b, c) {Lectura de fichero}

Dispositivos de salida: pantalla, impresora, disco


Operacin de salida
Escribir ( idDispositivo, lista variables)

Ejemplos
Escribir (a, b, c) {Mostrar por pantalla}
Escribir (idFichero, a, b, c) {Escritura en fichero}
PROGRAMACIN ESTRUCTURADA
Introduccin. Teorema de la programacin estructurada
El principio fundamental de la programacin estructurada es que en todo momento
el programador pueda mantener el programa dentro de la cabeza.
Esto se consigue con:
a) Un diseo descendente del programa,
b) Unas estructuras de control limitadas y
c) Un mbito limitado de las estructuras de datos del programa
Entre sus ventajas est el que: hace ms fcil la escritura y verificacin de
programas. Se adapta perfectamente al diseo descendente.
Para realizar un programa estructurado existen tres tipos bsicos de estructuras de
control:
1. Secuencial: Ejecuta una sentencia detrs de otra
2. Condicional: Se evala una expresin y, dependiendo del resultado, se decide
la siguiente sentencia a ejecutar
3. Iterativa: Repetimos un bloque de sentencias hasta que sea verdadera una
determinada condicin

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:26

FUNDAMENTOS DE PROGRAMACIN

INSTRUCCIN DE DECISIN
La gran mayora de problemas de la vida real tiene una serie de condiciones que
determinan cul es la solucin requerida. Esta solucin est condicionada a
diferentes posibilidades dependiendo de una u otra particularidad. Para poder
resolver estos problemas los algoritmos ofrecen las siguientes instrucciones.
SI (CONDICIN) ENTONCES
Instrucciones1
SI NO
Instrucciones2
La condicin es una comparacin de dos expresiones que siempre arroja un
resultado, verdadero o falso. Si el resultado de la condicin es verdadera se
ejecutan las Instrucciones1, y si es falsa se ejecutan las Instrucciones2.
EJEMPLOS DE ALGORITMOS
Ejemplo:
Hacer un algoritmo para una mquina controladora de personal empresarial,
donde la mquina permita conocer tanto la hora de salida y llegada de almorzar,
como la hora en que finaliza la jornada de cada uno de los empleados de dicha
empresa.
Algoritmo controlador
1. Inicio
2. Escribir(Ingrese la hora de entrada)
3. Leer(HE)
4. SA = he+4
5. LLA = SA+1
6. HS = LLA +4
7. Escribir(Hora de salir a almorzar, SA)
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:27

FUNDAMENTOS DE PROGRAMACIN
8. Escribir(Hora de entrada de almorzar, LLA)
9. Escribir(Hora de salida, HS)
10.
Fin
Ejemplo: En el caso del primer ejemplo se informa que existen dos tipos de
empleados, los obreros y los ejecutivos, cuyas caractersticas son que los
primeros trabajan 8 horas en dos turnos de 4 con 1 hora de almuerzo y los
ejecutivos 10 horas en dos turnos, tambin con una hora de almuerzo.
Algoritmo controlador
1. Inicio
2. Escribir(Ingrese la hora de entrada)
3. Leer(HE)
4. Escribir (Escoja el tipo de empleado OBRERO o EJECUTIVO)
5. Leer(TE)
6. SI (TE = "Obrero"?) ENTONCES
6.1 Si. Ir a 7
6.2 No. Ir a 11
7. SA = HE + 4
8. LLA = SA+1
9. HS = LLA + 4
10.
Ir a 14
11.
SA = HE + 5
12.
LLA = SA+1
13.
HS = LLA + 5
14.
Escribir(El empleado del Tipo, TE)
15.
Escribir(Hora de salir a almorzar, SA)
16.
Escribir(Hora de entrada de almorzar, LLA)
17.
Escribir(Hora de salida, HS)
18.
Fin.
Ejemplo: S lleg entre las 8 y las 8:15 trabaja 8 horas y tiene dos de almuerzo,
si lleg despus de las 8:15 debe trabajar 9 horas y solo una de almuerzo.
Si lleg antes de las 8 se le define llegada a las 8.
Algoritmo controlador
1. Inicio
2. Escribir(Ingrese la hora de entrada)
3. Leer(HE)
4. SI (HE >= 8 ) AND (HE <= 8.15)? ENTONCES
4.1
S. Ir a 5
4.2
No. Ir a 9
5. SA = HE +4
6. LLA = SA+2
7. HS = LLA +4
8. Ir a 12
9. SA = HE + 5
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:28

FUNDAMENTOS DE PROGRAMACIN
10.LLA = SA+1
11.HS = LLA +4
12. Escribir(Hora de salir a almorzar, SA)
13. Escribir(Hora de entrada de almorzar, LLA)
14. Escribir(Hora de salida, HS)
15. Fin
Ejemplo: Hacer un algoritmo que pida los tres lados de un tringulo, y diga si el
tringulo es Equiltero, Issceles o Escaleno.
Escaleno= tres lados desiguales.
Issceles = dos lados iguales
Equiltero = tres lados iguales.
Algoritmo tipo_tringulo.
1. Inicio.
2. Escribir(Ingrese los lados del tringulo))
3. Leer(L1)
4. Leer(L2)
5. Leer(L3)
6. SI (L1 = L2) AND (L2 = L3)? ENTONCES
6.1
Si Ir a 7
6.2
No a 9
7. Escribir(Equiltero)
8. Ir a 14
9. SI (L1=L2)OR(L2=L3)OR(L1=L3)? ENTONCES
9.1
S. Ir a 10
9.2
No. Ir a 12
10. Escribir (Issceles)
11. Ir a 14
12. SI (L1<>L2)AND(L2<>L3)AND(L1<>L3)? ENTONCES
12.1 Si. Ir a 13
12.2 No. Ir a 14
13. Escribir (Escaleno)
14. Fin.
Ejemplo: Variacin del ejemplo anterior sin la condicin de "Escaleno"
Algoritmo tipo_tringulo.
1. Inicio.
2. Escribir(Ingrese los lados del tringulo))
3. Leer(L1)
4. Leer(L2)
5. Leer(L3)
6. SI (L1 = L2) AND (L2 = L3)? ENTONCES
6.1
Si Ir a 7
6.2
No a 9
7. Escribir(Equiltero)
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:29

FUNDAMENTOS DE PROGRAMACIN
8. Ir a 13
9. SI (L1=L2)OR(L2=L3)OR(L1=L3)? ENTONCES
9.1
S. Ir a 10
9.2
No. Ir a 12
10. Escribir (Issceles)
11. Ir a 13
12. Escribir (Escaleno)
13. Fin.
Ejemplo: Sumar 3 veces dos nmeros
Algoritmo_sumar
1. Inicio
2. Escribir (Ingrese 2 nmeros)
3. Leer(S1, S2)
4. Total =0
5. Total = S1+S2
6. Total= Total+S1+S2
7 Total= Total+S1+S2
8. Escribir(El total es = , Total)
9. Fin.

Deber:
1. Realizar un algoritmo que lea dos nmero y realice el clculo de suma,
resta multiplicacin y divisin entre dichos nmeros
2. Disear un algoritmo que permita obtener el promedio de 4 notas
3. Disear un algoritmo que permita determinar si un ao es bisiesto. Un
ao es bisiesto si es mltiplo de 4. Los aos mltiplos de 100 no son
bisiestos salvo si ellos son tambin mltiplos de 400 (Ejemplo: 2000 es
bisiesto, 1800 no lo es)
4. Disear un algoritmo que permita ingresar una letra y decir si es no vocal
5. Disear un algoritmo que permita encontrar el mayor de 3 nmeros
6. Disear un algoritmo que permita encontrar el mayor, menor y el nmero
intermedio entre 3 nmeros considere tambin los casos en los que exista
ms de un nmero igual
7. Disear un algoritmo en el que dada la siguiente ecuacin:
AX 2 BX C 0
Encontrar:
X 1, X 2 B

B 2 4 AC
2A

Considere los casos:


Si el discriminante es mayor a 0 la respuesta ser dos nmeros reales
distintos
Si el discriminante es igual a 0 la respuesta ser dos nmeros reales
iguales

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:30

FUNDAMENTOS DE PROGRAMACIN

Si el discriminante es menor a 0 la respuesta ser dos nmeros


imaginarios

ESTRUCTURAS DE REPETICIN O BUCLES O CICLOS


DEFINICIN
Un bucle no es ms que una serie de instrucciones que se repiten.
Podemos tener 3 tipos de bucles segn lo que nos interese comprobar. Tenemos
un bucle que se repite mientras se cumple una condicin determinada, otro
que se realiza hasta que se cumple la condicin que marcamos y un tercero
para cuantas veces ya definidas hay que repetir.
RESUMEN:
ESTRUCTURAS DE REPETICIN:
Mientras- hacer
Repetir- hasta
Desde/Para (for)
A la hora de utilizar un bucle, sea del tipo que sea, debemos ir con cuidado y
pensar cuando debe acabar ya que si no tuviramos en cuenta esto podramos
entrar en un bucle sin fin, o sea que iramos repitiendo las mismas lneas
teniendo que abortar la aplicacin, para poderla finalizar.
Por esto es de suma importancia que pensemos, antes de hacer nada, en qu
momento, como, donde y porque debe acabar el bucle.
ESTRUCTURA MIENTRAS-HACER
En nuestro curso esta estructura bsica de un bucle Mientras se representar
de la siguiente manera:
Mientras (Condicin) Hacer
Instruccin 1
Instruccin 2
Fin del Mientras
Explicaremos lnea a lnea este bucle:
Primera lnea: En esta lnea pondremos la <condicin> que se debe dar
para que se ejecute el bucle. En el momento que la condicin sea Falsa
se terminar el bucle y se continuar con las siguientes instrucciones.

Segunda lnea: Lnea o lneas donde pondremos las instrucciones a


efectuar en caso de que la condicin sea VERDADERA.

Tercera lnea: Fin del bucle Mientras.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:31

FUNDAMENTOS DE PROGRAMACIN

De aqu se pasa a la primera lnea del bucle para volver a mirar la condicin.
Ejemplo: Escriba un algoritmo que permita calcular el rea de N tringulos:
Algoritmo_area_tringulo
Inicio
Escribir(Ingrese el nmero de tringulos a realizar el clculo)
Leer (N)
I=1
Mientras (I <= N) hacer
5.1
Escribir(Ingrese la base y la altura de tringulo, I)
5.2
Leer (base, altura)
5.3
Area = (base * altura)/2
5.4
Escribir(El rea del tringulo, I, es: ,Area)
5.5
I = I+1
5.6 Fin de MIENTRAS
6. Fin
1.
2.
3.
4.
5.

Ejemplo: Sumar N veces dos nmeros


Algoritmo_Sumar dos nmeros
1. Inicio
2. Escribir (Ingrese los dos nmeros a sumar y el nmero de veces a sumarlos)
3. Leer (A,B,N)
4. SI (N>0) AND( N int(N))? ENTONCES
4.1
S, Ir a 5
4.2
No, Ir a 2
5. I=1
6. Total =0
7. Mientras I<=N? hacer
7.1
Total = Total +A+B
7.2
I = I+1
7.3
Fin de Mientras
8. Escribir(El total es ,Total)
9. Fin.
Deber
1. Escriba el algoritmo que permita obtener los n primeros nmeros impares y su
suma
2. Algoritmo de la multiplicacin
3. Algoritmo de la multiplicacin por sumas sucesivas
4. Algoritmo que permita imprimir el nombre de 2 personas
5. Algoritmo que permita imprimir el nombre de N personas

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:32

FUNDAMENTOS DE PROGRAMACIN
6. Algoritmo para calcular Y como una funcin de X de acuerdo a la expresin Y=
2
3
1.5x+2.5x -9.8x para cada paso imprimir X y Y para valores entre 1 y 9.9 con
un incremento de 0.1.
ESTRUCTURA REPETIR HASTA
Esta es otra estructura de bucle pero tiene un pequeo matiz que la hace
diferente a la ya estudiada anteriormente. Tanto una como la otra se utilizan,
pero cada una de ellas va bien para segn que caso ya que ese matiz pueden
hacer su uso muy diferente.
Repetir
Instruccin 1
Instruccin 2
HASTA (condicin)
Observe que esta estructura primero ejecutara las instrucciones y despus
mirara si se cumple o no la condicin, con lo que tenemos que tener mucho
cuidado ya que las instrucciones como mnimo se ejecutarn una vez (las veces
restantes ya dependern de la condicin). La condicin se evala despus de
realizar las instrucciones y no antes como pasaba en el caso del Mientras.
Ejemplo: Escriba un algoritmo que permita calcular el rea de N tringulos:
Algoritmo_area_tringulo
Inicio
Escribir(Ingrese el nmero de tringulos a realizar el clculo)
Leer (N)
I=1
REPETIR
5.1 Escribir(Ingrese la base y la altura de tringulo ,I)
5.2 Leer(base, altura)
5.3 Area = (base * altura)/2
5.4 Escribir(El rea del tringulo: ,I, es: , Area)
5.5 I = I+1
6. HASTA (I > N)
7. Fin
1.
2.
3.
4.
5.

Deber:
1. Disear un algoritmo que permita encontrar la sumatoria de los n primeros
nmeros primos
2. Disear un algoritmo que permita encontrar la sumatoria de los n primeros
nmeros perfectos. Un nmero es perfecto cuando es igual a la suma de todos
los nmeros para los cuales es divisible excepto el mismo nmero. (6 = 1+2+3)
3. Disear un algoritmo que permita realizar la operacin de multiplicacin de dos
nmeros utilizando sumas sucesivas
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:33

FUNDAMENTOS DE PROGRAMACIN
4. Disear un algoritmo que permita realizar la operacin de potenciacin utilizando
sumas sucesivas
5. Disear un algoritmo que permita encontrar el factorial de un nmero
ESTRUCTURA DESDE / PARA(FOR)
Son el nmero total de veces que se desea ejecutar las acciones del Bucle (numero
de interacciones fijo), este ejecuta las acciones del cuerpo o del Bucle un numero
especifico de veces y de modo automtico controla el numero de Interacciones o
pasos a travs del cuerpo del bucle.
La estructura For posee las siguientes partes:
For variable de control, valor inicial, valor final, incremento/decremento
Instruccin 1
Instruccin 2
Fin del For
El funcionamiento del for:
El for es una estructura muy parecida a un mientras hacer con la diferencia de
que no requiere incrementar o decrementar el contador obligatoriamente como
una ms de las instrucciones del bucle ya que se realiza automticamente.

En el caso de que se conozca con anticipacin el nmero de veces a repetir un


bucle, se podr utilizar el for.

Entre las reglas bsicas de su funcionamiento hay que tener en cuenta que el for
requiere de una variable de control que actuara como un contador, su primera
interaccin se realiza cuando la variable de control toma el valor inicial, y la
ltima interaccin del bucle es cuando la variable de control toma el valor final.
Adems en cada interaccin la variable de control se decrementa o incrementa
de acuerdo al valor sealado en la declaracin,

Tanto la variable de control, como el valor inicial y el valor final deben ser del
mismo tipo y el for solo admite trabajar con valores ordinales tales como enteros
o caracter, los nmeros reales no son ordinales.
Ejemplo: Sumar los 100 primero nmeros enteros
Algoritmo_Sumar
1. Inicio
2. Total =0
3. For I,1,100, +1
3.1 Total = Total +I
3.2 Fin de FOR
4. Escribir(El total es ,Total)
5. Fin.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:34

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Sumar todos los nmeros mltiplos de 3 que existen en el rango del 1
al 50
Algoritmo_Sumar_rango
1. Inicio
2. Total =0
3. For I,1,50, +1
3.1 SI I mod 3 = 0? ENTONCES
3.1.1 Si. Total = Total +I
3.2 Fin de FOR
4. Escribir(El total es ,Total)
5. Fin.
Ejemplo: Sumar todos los nmeros mltiplos de 3 que existen en el rango del
50 al 1
Algoritmo_Sumar_multiplos
1. Inicio
2. Total =0
3. For I,50,1, -1
3.1 SI I mod 3 = 0? ENTONCES
3.1.1 Si. Total = Total +I
3.2 Fin de FOR
4. Escribir(El total es ,Total)
5. Fin.
Deber
1. Construir un diagrama que despliegue los nmeros del 20 al 30
2. Desplegar los enteros entre 30 y 50 acompaados de su potencia cuadrada y
raz cbica respectiva
3. Desplegar una tabla de multiplicar que el usuario indique
DIAGRAMAS DE FLUJO
TCNICAS PARA LA FORMULACIN DE ALGORITMOS
Las dos herramientas utilizadas comnmente para disear algoritmos son:
Diagrama de Flujo
Pseuducodigo

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:35

FUNDAMENTOS DE PROGRAMACIN
DEFINICIN DE DIAGRAMAS DE FLUJO
Los diagramas de flujo (Flujogramas u ordinogramas) son grficos que permiten
la representacin simblica de la lgica de un algoritmo. Con ello se consigue
ordenar un problema en una sucesin de pasos de manera clara y concisa. Las
operaciones a ejecutarse se representan mediante figuras. Para establecer el
orden de ejecucin de las instrucciones utilizamos DIRECCIONES DE FLUJO, es
decir conectamos las figuras mediante lneas que sirven para indicar la secuencia
de ejecucin de las instrucciones

Es un grfico que muestra el orden en el que se van ejecutando las diferentes


instrucciones

El diagrama de flujo es un grfico en el que se representa el orden en el que se


van ejecutando las diferentes instrucciones que forma el algoritmo

Herramienta que constituye el fundamento de Programacin convencional siendo


muy til en los programas de pequeo y mediana complejidad

Un diagrama de flujo es un tipo de notacin grfica algortmica

Un diagrama de flujo es una herramienta grfica de descripcin de algoritmos


que se caracteriza por utilizar un conjunto de smbolos grficos y expresar de
forma clara los flujos de control o el orden lgico en el que se realizan las
acciones de un algoritmo.

SIMBOLOGA BSICA
Aunque existe en la literatura una amplia variedad de representaciones para los
smbolos utilizados en los diagramas de flujo, en este texto se adoptaran los mismos
que se presentan en la Ilustracin:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:36

FUNDAMENTOS DE PROGRAMACIN

Esta representacin grfica se da cuando varios smbolos (que indican diferentes


procesos en la computadora), se relacionan entre si mediante lneas que indican el
orden en que se deben ejecutar los procesos.
Los smbolos utilizados han sido normalizados por el instituto norteamericano de
normalizacin (ANSI).

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:37

FUNDAMENTOS DE PROGRAMACIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:38

FUNDAMENTOS DE PROGRAMACIN

RECOMENDACIONES PARA EL DISEO DE DIAGRAMAS DE FLUJO


Se deben de usar solamente lneas de flujo horizontales y/o verticales
Se debe evitar el cruce de lneas utilizando los conectores
No deben quedar lneas de flujo sin conectar
Se deben usar conectores solo cuando sea necesario
Se deben trazar los smbolos de manera que se puedan leer de arriba hacia abajo
y de izquierda a derecha
Todo texto escrito dentro de un smbolo deber ser escrito claramente, evitando
el uso de muchas palabras
Estructura secuencial
La Ilustracin muestra el diagrama de flujo que representa a la estructura de control
secuencial.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:39

FUNDAMENTOS DE PROGRAMACIN

Ejemplo: Calculo de la suma y producto de dos nmeros. Hallar su algoritmo:

Estructuras de seleccin
La Ilustracin muestra los diagramas de flujo de las estructuras de seleccin.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:40

FUNDAMENTOS DE PROGRAMACIN

Puede observarse en la figura anterior que en la estructura de seleccin simple se


evala la condicin, y si sta es verdadera, se ejecuta un determinado grupo de
sentencias; en caso contrario, las sentencias son ignoradas.
En la estructura de seleccin doble, cuando la condicin es verdadera, se ejecutar
un determinado grupo de sentencias, y si es falsa se procesar otro grupo diferente
de sentencias.
Por ltimo, en la estructura de seleccin mltiple se ejecutarn unas sentencias u
otras segn sea el valor que se obtenga al evaluar una expresin representada por
el indicador. Se considera que dicho resultado ha de ser de tipo ordinal.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:41

FUNDAMENTOS DE PROGRAMACIN

CONDICIONES SIMPLES
En general todas las condiciones simples se forman con; variables, operadores
relacinales, y constantes.
sexo = m
sueldo > 300,000
Una condicin simple se define como el conjunto de variables y/o constantes
unidas por los llamados operadores relacinales.
Los operadores relacinales que reconocen en muchos lenguajes como:
Operador

Significado

Igual que

>

Mayor que

<

Menor que

>=

Mayor o igual que

<=

Menor o igual que

<>, !=

No es igual o es diferente que

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:42

FUNDAMENTOS DE PROGRAMACIN
CONDICIONES COMPUESTAS
En muchas ocasiones es necesario presentar ms de una condicin para su
evaluacin al computador.
Por ejemplo que el computador muestre la boleta de un alumno, si este estudia
la carrera de medicina y su promedio de calificaciones es mayor de 70.
Una condicin compuesta se define como dos o ms condiciones simples unidas
por los llamados operadores lgicos.
Los operadores lgicos que se reconocen son:

OPERADO
R
AND
OR

SIGNIFICAD
O
"Y" LOGICO
"O" LOGICO

NOT

"NO"
NEGACION

Para que el computador evale como CIERTA una condicin compuesta que
contiene el operador lgico "and", las dos condiciones simples deben ser ciertas.
Para que el computador evale como CIERTA una condicin compuesta que
contiene el operador lgico "or", basta con que una de las condiciones simples
sea cierta.
Alternativa doble:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:43

FUNDAMENTOS DE PROGRAMACIN

Alternativa mltiple:
Tambin existen ocasiones o programas donde se exige evaluar muchas
condiciones a la vez, en estos casos, o se usan una condicin compuesta muy
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:44

FUNDAMENTOS DE PROGRAMACIN
grande o se debe intentar convertir el problema a uno que se pueda resolver
usando la instruccin de seleccin mltiple o cas o switch.
La instruccin de decisin mltiple, se busca el valor contenido en una variable
contra una lista de constantes ordinales, cuando el computador encuentra el
valor de igualdad entre variable y constante, entonces ejecuta el grupo de
instrucciones asociados a dicha constante, si no encuentra el valor de igualdad
entre variable y constante, entonces ejecuta un grupo de instrucciones asociados
a un valor por defecto, aunque este ltimo es opcional.

Pseudocdigo:

La expresin ya no es lgica, sino de tipo ordinal.


Una forma de implementar esta estructura es mediante sentencias if anidadas.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:45

FUNDAMENTOS DE PROGRAMACIN

Conviene tener presente que esta estructura puede contener tambin una
seccin opcional o parte si- no
Reglas:
1. La expresin <selector> se evala y se compara con las constantes; las
constantes son listas de uno o ms posibles valores de <selector> que en
algunos casos pueden ir separados por comas. Ejecutadas la(s)
<instrucciones>, el control se pasa a la primera instruccin a continuacin
del case
2. La clusula si-no es opcional
3. Si el valor de <selector> no est comprendido en ninguna lista de
constantes y no existe la clusula si-no, no sucede nada y sigue el flujo
del programa; si existe la clusula si-no se ejecutan la(s) <instrucciones>
a continuacin de la clusula si-no
4. El selector debe ser un tipo ordinal (entero, caracter, booleano). Los
nmeros reales no pueden ser utilizados ya que no son ordinales
5. Todas las constantes del case deben ser nicas y de un tipo ordinal
compatible con el tipo del selector
Deber:
1. Disear un diagrama de flujo que permita ingresar 3 notas valoradas cada una
de ellas sobre una nota de 20 puntos. Obtener su promedio e imprimir uno de
los siguientes mensajes:
20-19 Sobresaliente
18-16 Muy buena
15-13 Buena
12-10 Regular
09-0 Insuficiente
2. Disear un diagrama de flujo que permita ingresar un caracter e imprimir un
mensaje que diga si es vocal, consonante, cifra o carcter especial
3. Disear un diagrama de flujo que permita ingresar un nmero que se encuentre
entre 1 y 31 y decir si es un nmero primo o no primo
4. Disear un diagrama de flujo que permita simular el trabajo de una calculadora
en la que se sume, reste, multiplique y divida siempre con un nmero fijo
cualesquiera
5. Disear un diagrama de flujo que permita calcular las funciones trigonomtricas
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:46

FUNDAMENTOS DE PROGRAMACIN

Estructuras de repeticin
A continuacin se muestran las estructuras de repeticin bsicas.

Estructuras de repeticin en diagrama de flujo a) hacer mientras (while) y b) repetir


hasta (do-while).
REGLAS DE FUNCIONAMIENTO DEL MENTRAS - HACER
1. Permite repetir un bloque de sentencias cero o ms veces dependiendo del
valor que se evala para una expresin booleana
2. Primero se evala la condicin; si la expresin booleana es verdadera se
ejecuta el cuerpo del bucle y se vuelve a evaluar la condicin
3. El proceso se repite mientras la condicin resulte cierta en cada evaluacin y
termina cuando la condicin evaluada es falsa

Diagrama de flujo del algoritmo de Euclides para encontrar el mximo


comn divisor
La solucin al problema est determinada por el algoritmo de Euclides.
REGLAS DE FUNCIONAMIENTO DEL REPETIR HASTA
1. La condicin se evala al final del bucle, despus de ejecutarse todas las
sentencias
2. Si la condicin es falsa, se vuelve a repetir el bucle y se ejecutan todas
sus instrucciones
3. Si la condicin es verdadera, se sale del bucle y se ejecuta la siguiente
instruccin despus de la estructura

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:47

FUNDAMENTOS DE PROGRAMACIN

CARACTERSTICAS DEL BUCLE REPETIR HASTA


Se ejecutan siempre una vez, por lo menos, y la terminacin del bucle se
produce cuando el valor de la expresin lgica o condicin de salida es
verdadera. Se ejecuta hasta que la expresin es verdadera, es decir, se ejecuta
mientras la expresin sea falsa.
SENTENCIA FOR
Repite la ejecucin de una o varias sentencias un nmero fijo de veces.
Previamente establecido. Necesita una variable de control del bucle que es
necesariamente de tipo ordinal, ya que el bucle se ejecuta mientras la variable
de control toma una serie consecutiva de valores de tipo ordinal, comprendidos
entre dos valores extremos (inferior y superior).

FOR VC, VI,VF,INC

INSTRUCCIONES

vc

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:48

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Ingresar N notas y obtener su promedio
1. Inicio
INICIO
2. Escribir(Ingrese el nmero de notas: )
3. Leer(N)
4. Suma = 0
5. For i , 1, N,+1
ESCRIBIR (INGRESE EL NMERO DE NOTAS)
5.1 Escribir(Ingrese la nota: , i)
5.2 Leer (Nota)
5.3 Suma = Suma + Nota
5.4 Fin del For
LEER(N)
6. Promedio = Suma/N
7. Escribir(La respuesta es = , Promedio)
8. Fin
SUMA =0
FOR I, 1, N, +1

ESCRIBIR(INGRESE LA NOTA: , I)

LEER (NOTA)

SUMA =SUMA + NOTA

PROMEDIO = SUMA/N

ESCRIBIR(LA RESPUESTA ES = , PROMEDIO)

FIN

Caractersticas del bucle FOR:


Aunque a primera vista pueda resultar ms atractivo FOR, en algunos lenguajes
de programacin existen limitaciones en su aplicacin ya que en el bucle FOR
siempre se incrementa o decrementa (de uno en uno) los valores de la variable
de control de bucle y no de dos en dos o de tres en tres, como en otros
lenguajes.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:49

FUNDAMENTOS DE PROGRAMACIN

El nmero de iteraciones de un bucle FOR siempre es fijo y se conoce de


antemano:
Valor final - Valor inicial +1.
CUNDO UTILIZAR MIENTRAS HACER/REPETIR HASTA/FOR?
Utilizar la sentencia o estructura FOR cuando se conozca el nmero de
iteraciones, y siempre que la variable de control de bucle sea de tipo ordinal
Utilizar la estructura REPETIR HASTA cuando el bucle se realice por lo
menos una vez
En todos los dems casos utilizar la sentencia MIENTRAS HACER.
Bucles anidados
Los bucles, al igual que las sentencias condicionales, tambin se pueden anidar.
Esto es especialmente til para el manejo de matrices, como veremos en los
temas posteriores

Deber:
1. Disear un diagrama de flujo que permita generar la sumatoria de la serie:

a ( a 1)! a ( a 2)! a ( a 3)! .......


2. Disear un diagrama de flujo que permita generar la sumatoria de la serie:

2 4 4 6 6
......
3 3 5 5 7

3. Disear un diagrama de flujo que permita generar las tablas de multiplicacin


4. Imprimir todos los caracteres en minsculas que existen entre un intervalo de
maysculas ejemplo: A b c d e f g H
APLICACIN PRCTICA
Uso del MIENTRAS HACER/ REPETIR HASTA / For
Ejemplo:
Disear un diagrama de flujo que permita calcular cuntas palabras
existen en una frase
Probar si una palabra ingresada por el usuario es o no palndromo. Una
palabra es palndromo cuando se lee igual de derecha a izquierda que de
izquierda a derecha ejemplo Ana, Radar, Oso
Deber:
1. Disear un diagrama de flujo que permita calcular cuntas vocales existen en
una frase
2. Contar la incidencia de las letras en una palabra. Es decir cuntas veces se
repiten
3. En una frase contar palabras de longitud par y las de longitud impar que
existan en ella
4. Reemplazar las palabras de longitud par en una frase por asteriscos
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:50

FUNDAMENTOS DE PROGRAMACIN
5. Visualizar las palabras de longitud impar en una frase al revs
DIAGRAMAS DE CAJA
Estos diagramas son tambin llamados diagramas de tcnicas horizontal, ya se
los realizan en rengln seguido y no necesitan flechas.
ESTRUCTURA SECUENCIAL
Estas estructuras vienen dado a regln seguido y el diagrama de caja de esta
estructura es la siguiente:
Ejemplo:
INICIO
INSTRUCCIN
INSTRUCCION
INSTRUCCION
FIN
Utilizando diagramas de caja realizar la siguiente operacin: A= B+C
INICIO
LEER(B,C)
A= B+C
ESCRIBIR(A)
FIN
ESTRUCTURA DE BIFURCACIN SIMPLE
En estas estructuras si la condicin se cumple se ejecutar los procesos por la parte
SI, caso contrario se realizarn los procesos por la parte NO.
Una instruccin condicional es aquella que nos permite "preguntar" sobre el
entorno que nos rodea, pudiendo as actuar segn la respuesta obtenida. Estas
respuestas siempre sern Verdadero o Falso, pudiendo as tomar, en un principio,
dos caminos diferentes.
Pseudocodigo
Si < Condicin> entonces
< accin s11 >
< accin s 12 >
Fin _ si

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:51

FUNDAMENTOS DE PROGRAMACIN

Alternativa doble (si-entonces-si_no )


Evala la condicin y determina si es verdadera o falsa para ejecutar las acciones
correspondientes.
Acciones:
Si la condicin es verdadera entonces se ejecuta la accin SI (o acciones caso
de ser SI una accin compuesta y constar de varias acciones).
Si la condicin es falsa, entonces se pasara a la accin sino (else o falsa).
Pseudocodigo
Si < Condicin> entonces
< Accin SI >
Si_no
< Accin S2 >
Fin _ si

Ejemplo: Dados tres nmeros imprimir o escribir cual es el mayor

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:52

FUNDAMENTOS DE PROGRAMACIN

INICIO
ESCRIBIR(INGRESE TRES VALORES)
LEER(A,B,C)

Verdadero

A>B

Falso

Verdadero A>C Falso Verdadero B>C


Falso
Escribir(A es Escribir( Escribir(B es Escribir(C
es
mayor)
C
es mayor)
mayor)
mayor)
FIN

Alternativa mltiple (segn _sea, caso de / case)


Es aquella que evala una expresin que podr tomar N valores distintos (1, 2, 3, 4,
n) segn que elija uno de estos valores en la condicin, se realizar una de las n
acciones, o lo que es igual, el flujo del algoritmo seguir un determinado camino
entre los n posibles.
Diagrama de Flujo

CASO (EXPRESIN) DE
VALOR 1:

VALOR N:

SI NO

FIN CASE
Estructura repetitiva
Son aquellas en las que especialmente se disea para todas aquellas aplicaciones en
las cuales una operacin o conjunto de ellas deben repetirse muchas veces.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:53

FUNDAMENTOS DE PROGRAMACIN

Bucles /lazos: Son estructuras que repiten una secuencia de instrucciones un


nmero determinado de veces.
Interaccin: Es el hecho de repetir la ejecucin de una secuencia de acciones; en
otras palabras el algoritmo repite muchas veces las acciones.
Al utilizar un bucle para sumar una lista de nmeros, se necesita saber cuntos
nmeros se han de sumar, para poder detenerlo en el momento preciso; las dos
principales preguntas a realizarse en el diseo de un bucle son: Qu contiene el
bucle? y Cuntas veces se debe repetir?
Casos generales de estructuras repetitivas
1. La condicin de salida del bucle se realiza al principio del bucle (estructura
mientras)
2. La condicin de salida se origina al final del bucle; el bucle se verifica hasta que
se verifique una cierta condicin
3. La condicin de salida se realiza con un contador que cuente el numero d
interacciones. ( i es un contador que cuenta desde el valor inicial (vi.) hasta el
valor final (vf) con los incrementos que se consideran.)
Estructura mientras - hacer (while).
Es aquella en que el cuerpo del bucle se repite mientras se cumple una determinada
condicin. Cuando se ejecuta la accin mientras, la primera cosa que sucede es
que se evala la condicin (una expresin booleana), si se evala falsa ninguna
accin se tomara; si la expresin booleana es verdadera, entonces se ejecuta el
cuerpo del bucle, despus del cual se evala de nuevo la expresin booleana.
Esta expresin booleana se repite una y otra vez mientras la expresin booleana
(condicin) sea verdadera.

Mientras (condicin) hacer

Expresin de un bucle cero veces


En una estructura mientras la primera cosa que sucede es la evaluacin de la
expresin booleana; si es falsa en este punto entonces el cuerpo del bucle nunca se
ejecuta. Puede parecer intil ejecutar el cuerpo del bucle cero veces, ya que no
tendr efecto en ningn valor o salida. Sin embargo no es una accin deseada.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:54

FUNDAMENTOS DE PROGRAMACIN

Bucles infinitos
En algunos bucles no existen fin y otros no encuentran el fin por error en su diseo,
el bucle corre siempre; en otras ocasiones el bucle no se termina nunca porque
nunca se cumple la condicin.
Regla prctica
Las pruebas o tesis en las expresiones booleanas es conveniente que sean mayor o
menor que en lugar de pruebas de igualdad o desigualdad. En el caso de la
codificacin en un lenguaje de programacin, esta regla debe seguirse rgidamente
el caso de comparacin de nmeros reales.
Ejemplo: Disee un diagrama de caja que permita generar los 5 primeros nmeros
pares utilizando la estructura Mientras-Hacer
INICIO
NUM = 0
I =1
Mientras (I < = 5) hacer
NUM = NUM + 2
ESCRIBIR( NUM )
I = I+1
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:55

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Disee un diagrama de caja que permita generar los N primeros nmeros
pares utilizando la estructura Mientras-Hacer.
INICIO
ESCRIBIR(Ingrese el valor de N)
LEER(N)
NUM = 0
I =1
Mientras (I < = N) hacer
NUM = NUM + 2
ESCRIBIR( NUM )
I = I+1
FIN

Estructura repetir (repeat).


Si el valor de la expresin booleana es inicialmente falso, el cuerpo del bucle no se
ejecutara, por ello se necesitan de otros tipos de estructuras dicha estructura se
Falsocumpla una condicin determinada que se comprueba hasta el
ejecuta hasta que
final del bucle.
Verdadero
REPETIR
Sentencia(s)

HASTA (CONDICIN)
Condicin

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:56

FUNDAMENTOS DE PROGRAMACIN

DIFERENCIAS ENTRE LAS ESTRUCTURAS MIENTRAS Y REPETIR


La estructura mientras termina cuando la condicin es falsa, mientras que
repetir termina cuando la condicin es verdadera
En la estructura repetir el cuerpo del bucle se ejecuta siempre al menos una
sola vez; por el contrario mientras es ms general y permite la posibilidad de
que el bucle pueda no ser ejecutado. Para usar la estructura repetir debe estar
seguro de que el cuerpo del bucle se repetir al menos una sola vez
Ejemplo: Disee un diagrama de caja que permita generar los 5 primeros nmeros
pares utilizando la estructura Repetir - Hasta.
INICIO
NUM = 0
I=1
REPETIR
NUM = NUM +2
ESCRIBIR (NUM)
I = I +1
HASTA ( I > 5)
FIN

Ejemplo: Disee un diagrama de caja que permita generar los N primeros nmeros
pares utilizando la estructura Repetir - Hasta
INICIO
ESCRIBIR(INGRESE EL VALOR DE N)
LEER(N)
NUM = 0
I=1
REPETIR
NUM = NUM +2
ESCRIBIR (NUM)
I = I +1
HASTA ( I > N)
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:57

FUNDAMENTOS DE PROGRAMACIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:58

FUNDAMENTOS DE PROGRAMACIN
Estructura desde/para (for)
Son el nmero total de veces que se desea ejecutar las acciones del bucle (nmero
de interacciones fijo), este ejecuta las acciones del cuerpo o del bucle un nmero
especifico de veces y de modo automtico controla el nmero de interacciones o
pasos a travs del cuerpo del bucle.

FOR Vc, Vi, Vf, Inc/Dec

FOR VC, VI,VF,INC

INSTRUCCIONES

vc

1.
2.
3.
4.

La estructura de repeticin FOR, se caracteriza por utilizar:


Definir una variable que actuar como contador
Establecer el valor inicial para dicha variable
Establecer el valor final para el contador
Determinar si ser un decremento (+1) o un decremento (-1).

Ejemplo: Disee un diagrama de caja que permita generar los N primeros nmeros
pares utilizando la estructura FOR
INICIO
ESCRIBIR(INGRESE CUNTOS NMEROS QUIERE GENERAR)
LEER(N)
NUM = 0
FOR I, 1, N, +1
NUM = NUM +2
ESCRIBIR (NUM)
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:59

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Imprimir todos los nmeros del 1 al 100 que sean mltiplos de 3
utilizando la estructura MIENTRAS-HACER
INICIO
I=1
MIENTRAS ( I < = 100 )HACER
SI

I MOD 3 = 0

NO

ESCRIBIR(I,
ES
DIVISIBLE PARA 3)
I = I +1
FIN

Ejemplo: Imprimir todos los nmeros del 1 al 100 que sean mltiplos de 3
utilizando la estructura REPETIR HASTA
INICIO
I=1
REPETIR
SI

I MOD 3 = 0

NO

ESCRIBIR(I,
ES
DIVISIBLE PARA 3)
I = I +1
HASTA( I > 100)
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:60

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Imprimir todos los nmeros del 1 al 100 que sean mltiplos de 3
utilizando la estructura FOR (Decrementos)
INICIO
FOR I, 100, 1, -1
SI
I MOD 3 = 0
ESCRIBIR(I,
ES DIVISIBLE
PARA 3)
FIN

NO

Estructura repetitivas anidadas


Reglas
La estructura interna debe estar incluida dentro de la externa y no puede existir
solapamiento
Tipos de bucles anidados
Bucles anidados Correctos

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:61

FUNDAMENTOS DE PROGRAMACIN
VECTORES
DEFINCIONES: Arreglos

El tratamiento de algoritmos y diagramas de flujo o de caja admite


agrupaciones de datos, a las cuales denomina "arreglos"

Un arreglo se compone de elementos de igual tamao almacenados


linealmente en posiciones de memoria consecutiva

Un arreglo es un conjunto finito de posiciones de memoria consecutivas


que tienen el mismo nombre y el mismo tipo de dato. Los arreglos de una
dimensin (unidimensionales) se llaman vectores. Los arreglos de dos
dimensiones (bidimensionales) se llaman matrices

Un vector o array -arreglos en algunas traducciones- es una secuencia de


objetos del mismo tipo almacenados consecutivamente en memoria

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:62

FUNDAMENTOS DE PROGRAMACIN

EJERCICIOS DE VECTORES
Ejemplo: Disear un diagrama de caja que permita llenar y visualizar los datos
almacenados en un vector
INICIO
ESCRIBIR(Cuntos nmeros va a ingresar)
LEER(N)
For i, 0, N-1, +1
ESCRIBIR(Ingrese el valor de la posicin , i)
LEER(A[i])
For i, 0, N-1, +1
ESCRIBIR(A[i])
FIN
Ejemplo:
vector

Disear un diagrama de caja que permita sumar el contenido de un


INICIO

ESCRIBIR(Cuntos nmeros va a ingresar)


LEER(N)
For i, 0, N-1, +1
ESCRIBIR(Ingrese el valor de la posicin , i)
LEER(A[i])
Sum = 0
For i, 0, N-1, +1
Sum = Sum + A[i]
ESCRIBIR(La suma total es: , Sum )
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:63

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Disear un diagrama de caja que permita imprimir cuantos valores que
pertenecen al vector estn en el rango de A y B
INICIO
ESCRIBIR(Cuntos nmeros va a ingresar)
LEER(N)
REPETIR
ESCRIBIR( Ingrese los lmites inferior y
superior )
LEER(A, B)
HASTA(A < B)
For i, 0, N-1, +1
ESCRIBIR(Ingrese el valor de la
posicin , i)
LEER(V[i])
C=0
For i, 0, N-1, +1
S

(V[i]>=A) Y

(V[i]<=B)

C= C+1
ESCRIBIR(EXISTEN ,C, VALORES ENTRE , A, Y ,B)
FIN

Deber:
1. Disear un diagrama de caja que permita sumar dos vectores de igual
longitud
2. Disear un diagrama de caja que permita sumar dos vectores de distinta
longitud
3. Disear un diagrama de caja que permita buscar el mayor y menor
nmero que se encuentran almacenados en un vector
4. Disear un diagrama de caja que permita ordenar un vector de forma
ascendente y descendente
5. Disear un diagrama de caja que permita reemplazar en un vector todos
los nmeros repetidos por un -5
Arreglos multidimensionales o matrices

Los arreglos multidimensionales son secuencias de valores del mismo tipo


que se almacenan en localidades contiguas de memoria, segn el orden de
varios ndices. En el caso de los arreglos de dos dimensiones o matrices

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:64

FUNDAMENTOS DE PROGRAMACIN
es necesario identificar dos ndices. El primero identifica al nmero de fila
y el segundo el nmero de columna dentro del arreglo

El trmino dimensin representa el nmero de ndices utilizados para


referirse a un elemento particular en el arreglo. Los arreglos de ms de
una dimensin se llaman arreglos multidimensionales

La forma de referenciar un elemento de un vector o matriz es mediante su


ndice, que puede ser una constante, una variable o una expresin, pero
siempre un valor ENTERO. El ndice se expresa entre parntesis, y habr
tantos ndices como dimensiones tenga la agrupacin de datos (1 para
vectores, 2 en matrices, ...)

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:65

FUNDAMENTOS DE PROGRAMACIN
EJERCICIOS DE MATRICES
Ejemplo: Disear un diagrama de caja que permita Ingresar datos de una matriz
INICIO
ESCRIBIR(INGRESE EL NMERO DE FILAS Y COLUMNAS)
LEER(F,C)
For i, 0, F -1, +1
For j, 0,C-1, +1
ESCRIBIR(Ingrese el valor de la posicin , i, j)
LEER(x[i] [j])
FIN
Ejemplo:
matriz

Disear un diagrama de caja que permita sumar el contenido de una


INICIO

ESCRIBIR(INGRESE EL NMERO DE FILAS Y COLUMNAS)


LEER(F,C)
For i, 0, F -1, +1
For j, 0,C-1, +1
ESCRIBIR(Ingrese el valor de la posicin , i, j)
LEER(x[i] [j])
SUM = 0
For i, 0, F -1, +1
For j, 0,C-1, +1
SUM = SUM +x[i] [j]
ESCRIBIR(LA SUMA TOTAL ES DE : , SUM )
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:66

FUNDAMENTOS DE PROGRAMACIN
Ejemplo:

Disear un diagrama de caja que permita generar una matriz traspuesta


INICIO

ESCRIBIR(INGRESE EL NMERO DE FILAS Y COLUMNAS)


LEER(F,C)
For i, 0, F -1, +1
For j, 0,C-1, +1
ESCRIBIR(Ingrese el valor de la posicin , i, j)
LEER(M[i] [j])
For i, 0, F -1, +1
For j, 0,C-1, +1
T[i] [j] = M[j] [i]
For i, 0, C -1, +1
For j, 0,F-1, +1
ESCRIBIR(T[i] [j] )
FIN

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:67

FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Dada una matriz en la que guarden las notas de n estudiantes en sus m
asignaturas. Calcular:

El promedio de notas de cada uno de los n estudiantes


El promedio de notas de cada una de las m asignaturas

INICIO
ESCRIBIR(INGRESE EL NMERO DE ESTUDIANTES Y DE ASIGNATURAS)
LEER(F,C)
For i, 0, F -1, +1
For j, 0,C-1, +1
ESCRIBIR(Ingrese nota del estudiante , i, en la
asignatura, j)
LEER(NOTAS[i][j])
For i, 0, F -1, +1

SUMF=0
For j, 0,C-1, +1
SUMF = SUMF + NOTAS[i][j]
ESCRIBIR(El ESTUDIANTE , i , (SUMF/C))
For j, 0, C -1, +1

SUMC=0
For i, 0,F-1, +1
SUMC = SUMC + NOTAS[i][j]
ESCRIBIR(LA ASIGNATURA , j ,(SUMC/F))
FIN

Deber:
1. Disear un diagrama de caja que permita sumar dos matrices de igual
dimensin
2. Disear un diagrama de caja que permita sumar dos matrices de distinta
longitud
3. Disear un diagrama de caja que permita realizar la multiplicacin de
matrices

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:68

FUNDAMENTOS DE PROGRAMACIN
GLOSARIO
SIGNIFICADO DE TERMINOS MS UTILIZADAS

AGP
AT
ATAPI

ATX
BINARIO
BIOS

BIT

BYTE
CMOS
COM
CONSTANT
E
DATO
DDR

Perifrico Avanzado de Grficos. Bus para manejo de


video de alta velocidad, muy utilizado para manejo de
grficos en 3D
Tecnologa de avanzada. Esta tecnologa esta aplicada en
fuentes de poder, tarjetas principales (Main board) y
chasis o caja metlica
Especificacin que permite que las unidades de CD-ROM
acten como Discos Duros, lo cual permite ser
conectadas a interfaces IDE ( correas planas de datos)
Tecnologa avanzada extendida. la tecnologa ATX es mas
nueva y se aplica de igual forma en los componentes
anteriores de la AT
Con solo dos estados o elementos. Pertenece a un
sistema basado en solo 2 unidades o alternativas, utiliza
los dgitos binarios 0 y 1
Basic INPUT AND OUTPUT SYSTEM (Sistema bsico para
el control de entrada y salida de datos en un
computador). Conjunto de programas grabados en chip
de memoria ROM. ( Read Only Memory )
Abreviatura de BINARY DIGIT. Representado por 0,1
unidad principal de almacenamiento de informacin en la
computadora. A partir de esta unidad surgen las
diferentes unidades de almacenamiento 8 bits componen
un BYTE
Conjunto formado por 8 unos y ceros (bits). Un byte es
igual a un carcter , una letra, un numero, un smbolo
etc.
Complementary Metal Oxide Semiconductor. Tecnologa
de transistores y circuitos integrados de muy bajo
consumo de corriente.
( comunicacin )Puertos de comunicacin serial, y son
los puerto 1 y 2. Un puerto COM es un circuito de
entrada y salida ( I/O ) de datos en modo serial
Dato definido en un programa que presenta un valor
permanente durante su tiempo de vida
Expresin general que describe los objetos con los cuales
opera una computadora
Memoria RAM (DOUBLE DATA RATE SYNCHRONOUS
DRAM) SDRAM

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:69

FUNDAMENTOS DE PROGRAMACIN
DIMM

Dual In Line Memory Modul. ( Modulo de memoria de


lnea interna doble). Modulo estndar de 168 pines que
ha reemplazado a los mdulos de memoria RAM SIMM
de 30 y 72 pines.

DIN

Deutsche Institut Fur Normung. Organizacin de Normas


Alemanas que propuso un conjunto de configuraciones
para conectores como el teclado y el ratn tambin el
MIDI. Actualmente hay conector DIN para clones, y
MINIDIN para marca
Direct Memory Access. ( Acceso directo a la memoria ).
Es una tcnica que permite a un dispositivo perifrico
entrar o extraer bloques de datos de la memoria
principal del computador sin que intervenga el
microprocesador
Puerto paralelo mejorado
( HZ) Hercio: unidad de medida de la frecuencia de
vibracin de un objeto, tal como una cuerda de guitarra.
Un hertz es igual a un ciclo por segundo.
Integrate drive electronics Intelligent drive electronics.
Tecnologa de discos duros y unidades lectoras de CDROM en la que el control e las operaciones Bsicas esta a
cargo de la circuetera electrnica de la misma unidad.
este alto nivel de integracin acorta las vas de acceso
de las seales entre las unidades y los controladores ,
permitiendo ms altos niveles de transferencia de datos.
Arquitectura industrial estndar , estructura de bus o
ranura de expansin
Line Printer ( puerto para impresora )
Megahercio unidad de medida igual a un milln de
vibraciones
elctricas o ciclos por segundo se utiliza frecuentemente
para comparar entre computadoras las velocidades de
los relojes generadores de pulsos
Interconexin de componentes perifricos, BUS que
corre a 33 mhz
Pines dispuestos en parrilla. (pin grid array). Tipo de
encapsulado para CPU ( MICROPROCESADOR). Conocido
como socket
Random Access Memory ( Memoria de acceso directo a
cualquier celda ) tipo de dispositivo de memorizacin
electrnica de datos binarios ( unos y ceros a manera de
cargas elctricas ). Utilizado para cargar instrucciones de

DMA

EPP
HERTZ
IDE

ISA
LPT
MEGAHERT
Z

PCI
PGA
RAM

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:70

FUNDAMENTOS DE PROGRAMACIN

RAMBUS
RIMM
ROM

SCSI
SETUP
SIMM

SIPP
SPP
SRAM

USB
VARIABLE

programas y luego ejecutarlos muy rpidamente desde


all
Memoria RAM de alta velocidad
Memoria RAM para grficos. Es la tercera generacin de
RAMBUS, sus mdulos se denominan RIMM y SO-RIMM.
El RIMM tiene 184 pines y el chip consume 2.5 voltios
Read Only Memory. Memoria de solo lectura, tipo de
dispositivo electrnico para almacenar de manera
permanente datos binarios ( unos y ceros a manera de
redes conductoras).
Small computer. Sistema interfase para computadoras
personales
Configuracin y ajuste
Single In Line Memory Module ( Modulo de Memoria En
Una Sola Lnea ). Tarjeta de circuito impreso que
contiene varios circuitos integrados de memoria RAM
para computador
Single In Line Package. ( Circuito integrado o dispositivo
con sus pastillas de conexin formado por una sola hilera
). Modulo de memoria RAM para computador
Puerto paralelo estndar
( Memoria Ram Esttica ). Chip de memoria esttica que
no requiere refrescamiento peridico de los datos
almacenados en celdas. Es ms rpida y costosa que la
RAM
Bus Serial Universal. Permite la funcin plug and play
(conecte y empiece a trabajar) permite conectar hasta
126 dispositivos fsicos
Dato definido en un programa cuyo valor puede cambiar
durante su tiempo de vida

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:71

FUNDAMENTOS DE PROGRAMACIN
TAREAS IF
1. Capturar un nmero cualesquiera e informar si es o no es mayor de 100
2. Capturar un nmero entero cualesquiera e informar si es o no es mltiplo de
4 (recordar el operador mod, analizado en el tema de operadores aritmticos)
3. Capturar los cinco datos ms importantes de un Empleado, incluyendo el
sueldo diario y los das trabajados, desplegarle su cheque semanal solo si
gan ms de $500.00 en la semana, en caso contrario desplegarle un bono
de despensa semanal de $150.00
4. Capturar los datos ms importantes de un estudiante incluyendo tres
calificaciones, que no deben ser mayores a 5
5. Capturar los datos ms importantes de unos productos cualesquiera,
incluyendo cantidad, precio, etc., desplegar una orden de compra, solo si el
producto es de origen nacional, en caso contrario no hacer nada
TAREAS IF CON CONDICIONES COMPUESTAS
1. Capture un nmero cualesquiera e informe si es o no es mayor de 50 y
mltiplo de tres. ( solo escribir el mensaje de respuesta de manera muy clara
y esto resuelve el problema )
2. Indique si un nmero es un par positivo
TAREAS CASE
Construir un men que contenga el siguiente men
Conversin de pesos a dlares
Conversin de libras a kilogramos
Conversin de kilmetros a millas
Fin de men
Seleccionar opcin [ ]
2.
Evaluar cualquier funcin vista para cuando x =3,-4, 5
1.

TAREAS IF, CASE


1. Capturar en una lista los sueldos de 6 empleados y desplegarlos en una
segunda lista aumentados en un 30%
2. Capturar una lista los pesos en kilogramos de 6 personas desplegarlos en una
segunda lista convertidos a libras y adems solo los mayores de 100 libras
3. Capturar 4 listas respectivas matricula, nombre y dos calificaciones de 5
alumnos, despus calcular una lista de promedios de calificaciones
4. Capturar listas respectivas nmero de empleado, nombre del empleado, das
trabajados y sueldo diario de 5 empleados, y desplegar la nomina pero solo
de aquellos empleados que ganan ms de $300.00 a la semana

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:72

FUNDAMENTOS DE PROGRAMACIN
TAREAS WHILE
1. Desplegar los nmeros enteros entre 50 y 80
2. Desplegar mltiplos de 4 entre 60 y 20 acompaados de su logaritmos de
base 10 y base e respectivos
3. Construir la tabla de dividir que el usuario indique

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:73

FUNDAMENTOS DE PROGRAMACIN

TAREAS VARIOS
1. Convertir la edad en aos de una persona a meses
2. Convertir pesos a dlares
3. Calcular el rea de un crculo
4. Construir los modelos de solucin de los siguientes problemas:
5. Convertir millas a kilmetros
6. Convertir 125 metros a centmetros
7. Se calcula que en promedio hay 4.7 nidos en cada rbol en la ESPOCH,
tambin se calcula que en cada nido existen un promedio de 5.8 pjaros, se
pide calcular la cantidad total de nidos y de pjaros en los 227 rboles que
existen en la ESPOCH
8. La Sra. Lpez y sus 8 hijos solo compran una vez al mes su mandado en
conocido supermercado, en dicha tienda el kilogramo de frjol cuesta $8.75, el
paquete de tortillas cuesta $3.55 y el frasco de caf vale $14.25, si solo
compran de estos tres productos para su mandado, calcular su gasto total
9. Capturar y desplegar los cinco datos ms importantes de un automvil
10.

11.

La distancia Tijuana - Ensenada es de 110 kilmetros. Si un automvil


la recorre a una velocidad constante de 30 millas por hora, cunto tiempo
tarda en llegar. ( 1 milla = 1.609 Km.)
Evaluar el factorial de cualquier numero usando la formula: n!=n!-1

12.

La distancia que recorre un auto es de 50 kms y su velocidad es de 30


millas por hora Cunto tiempo tardara en llegar?

13.

Encontrar la
formula(d/dx(x)=1)

14.

Calcular l inters que gana un capital de x pesos a una tasa de inters


del 15% anual en un periodo de n aos

15.

Que aceleracin tiene un tren que parte de Tijuana a 10 km/hr y pasa


por Ensenada una hora despus a 50 km/hr

derivada

de

para

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

cualquier

valor

con

la

Pgina N:74

FUNDAMENTOS DE PROGRAMACIN
16.

Calcular el nmero de aulas en una escuela que tiene 10 edificios y


cada edificio 3 pisos y cada piso 5 aulas, excepto un edificio que solo tiene
dos pisos

17.

Si en una escuela hay 30 maestros y 15 son hombres que atienden a


10 alumnos cada uno. Cuantas maestras hay?

18.

Calcular la corriente de un circuito con un voltaje de 15v y una


resistencia de 6 ohms. Formula (I= V/R)

19.

Calcular la normal estndar(z) dados los datos por el usuario: X=dato,


=media, d=desviacin. Formula (Z = X-M / d)

20.

Dado un numero(N) cualesquiera obtener su raz y potencia cuadrada

21.

Determinar la media de 5 nmeros diferentes

22.

Determinar la velocidad v requerida para recorrer una distancia d en un


tiempo t . Formula (V = d * t)

23.

Determinar la pendiente de una recta. Formula (y = m x + b)

24.

Calcular la funcin de y= x + 8x + 3 para cualquier x

25.

Convertir minutos a horas

26.

Aplicar la formula general para a=1, b=2, c=3

27.

Se desea instalar un cable de red, el cliente pide 30 pies, considerando


que se venden en metros, cuantos deber comprar

28.

Un campesino siembra trigo en un rea cuadrada de 25 mts., cual es


el largo del cerco frontal en cms.?

29.

Resolver x + 15x - 8 para cualquier variable (X)

30.

Convertir C a F

31.

Si cada saln de la escuela tiene 40 alumnos y son 30 salones


Cuantos alumnos son en toda la escuela?

32.

Si Juan trabaja 5 das a la semana y descansa 2 Cuantos das trabajo


en 4 aos?

33.

Si en una oficina se procesan 20 facturas cada 10 minutos cuantas se


procesaran si se trabajan 5 horas?

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:75

FUNDAMENTOS DE PROGRAMACIN
34.

Si una empresa tiene _____ de activo y un pasivo de _____ Cual es


su capital?. Formula (C = A-P)

35.

Calcule el voltaje de un circuito dada una intensidad I y una resistencia


R. Formula (V=IR)

36.

Calcule la frecuencia de una onda que circula con un tiempo t. Formula


(F=1/t)

37.

Calcule la potencia de un circuito con un voltaje V y una intensidad I.


Formula (f = VI)

38.

Calcule el total que tendr que pagar una persona que va al cine
dependiendo del nmero de boletos a comprar y el precio

39.

Calcule las anualidades que tendr que pagar una persona que pidi un
prstamo. Dependiendo del tiempo que el elija y el inters por ao. Formula
(Anualidad=(Prestamo/Tiempo)+interes)

40.

Determinar cuanto ganara una persona en base a las horas trabajadas.


Tomando en cuenta el pago por hora.

41.

Convertir horas a segundos

42.

Calcular la fuerza. Formula (fuerza = trabajo / tiempo)

EJERCICIOS PROPUESTOS DE VECTORES Y MATRICES


Elabore los diagramas de caja para:
1. Capturar las calificaciones de N alumnos y almacenarlas en un arreglo para
posteriormente calcular el promedio.
2. Capturar las calificaciones de N alumnos y almacenarlas en un arreglo para
posteriormente recorrerlo para encontrar la calificacin mayor.
3. Capturar las ventas mensuales de una empresa durante un ao determinado
y al final calcule el promedio anual de ventas y muestre el nombre del mes
con la venta mayor as como el mes con la venta menor.
4. Capture los datos de un arreglo de N posiciones de nmeros positivos y
negativos enteros y sustituya los nmeros negativos por cero.
5. Capturar N valores de tipo entero para almacenarlos en un arreglo y
ordenarlo en forma ascendente.
6. Calcular el promedio y la desviacin estndar de un conjunto de N nmeros
ledos del teclado. La desviacin estndar se calcula con la siguiente frmula:

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:76

FUNDAMENTOS DE PROGRAMACIN

7. Elaborar un diagrama de caja que capture en un vector (T) la temperatura de


cada da de una semana y que realice lo siguiente :
Imprimir la temperatura promedio.
Formar un vector (D) que contenga las diferencias de cada temperatura
con respecto al promedio.
Imprimir la menor temperatura y el nmero de da en que ocurri.
8. Elabore un diagrama de caja que encuentre la mayor diferencia entre 2
nmeros consecutivos y las posiciones de stos, en un vector de N nmeros
enteros.

9. Dado un vector V de N
nmeros enteros, cambie
cada elemento menor que
10 por 0 y cada elemento
mayor que 20 por 1.
Encuentre
cuntos
elementos quedaron sin
cambiar.
Ejemplo :

10.

Elaborar un algoritmo en diagrama de caja que capture en una matriz


las calificaciones obtenidas por un grupo de N estudiantes y que realice lo
siguiente :
Formar un vector de tamao N que contenga los promedios de cada
estudiante.
Calcular el promedio del grupo en el examen 3.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:77

FUNDAMENTOS DE PROGRAMACIN

Imprimir el mayor promedio y el nmero del estudiante que lo obtuvo.


Imprimir el total de alumnos aprobados y reprobados (la calificacin mnima
aprobatoria es 70)
Imprimir el nmero de alumnos que reprobaron el examen 1.
11.
Disee un diagrama de caja en que lea un vector desordenado A,
compuesto de n nmeros enteros e imprmase este vector en la misma
secuencia, pero ignorando los valores duplicados que se encuentren en l.
Tambin se necesita saber el nmero de elementos que permanecen (m); por
ejemplo, dado el siguiente vector

MATRICES
12.
Realice la suma matricial. El programa debe pedir las dimensiones de
las matrices A y B, validar que se pueda ejecutar la operacin, capturar los
valores de cada una de las matrices, efectuar la operacin y mostrar el
resultado.
13.
Desarrollar un diagrama de caja que lea una matriz cuadrada de
tamao n y determine si se trata de una matriz simtrica o no. Una matriz es
simtrica si los valores de cada fila son iguales los de su columna
correspondiente; por ejemplo la siguiente matriz es simtrica:

14.
Capture las celdas de una matriz de tamao m X N y
Ordnelo en forma ascendente por columna
Ordnelo en forma descendente por rengln
15.
Una empresa de ventas a domicilio maneja 10 artculos diferentes y
cuenta con 50 vendedores. En un arreglo de 50x10 se tienen almacenadas las
cantidades de cada artculo vendidas por cada vendedor. Adems, los precios
de cada artculo estn almacenados en un vector de tamao 10. Se desea
elaborar un diagrama de caja para imprimir lo siguiente :
La cantidad de dinero recopilado por cada vendedor.
El nmero del vendedor que recopil la mayor cantidad de dinero.
El nmero del artculo ms vendido (entre todos los vendedores).
El total de vendedores que no vendieron ningn artculo nmero ocho.
Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:78

FUNDAMENTOS DE PROGRAMACIN

16.

Elabore un diagrama de caja y que lea una matriz cuadrada de tamao


N de nmeros enteros, calcule la suma de los elementos de las diagonales
(principal e inversa y guarde estos elementos en dos vectores (DP y DI).

Ejemplo para N=4 :


Suma DP = 20 Suma DI = 23

17.

Elabore un diagrama de caja que lea los datos de una matriz cuadrada
de tamao N y realice las siguientes operaciones:
Imprima la suma de los elementos de la diagonal principal
Imprima cuntos "0" hay en la matriz
Imprima una matriz igual pero con las diagonales intercambiadas.
Imprima el nmero mayor de la matriz
18.
Elabore un algoritmo que lea los datos de una matriz cuadrada de
tamao N, y que intercambie los elementos de la matriz triangular superior
con los elementos correspondientes simtricamente de la matriz triangular
inferior.
EJEMPLO :
RESULTADO :

19.

Dada una matriz cuadrada de tamao N, encuentre la suma de todos


los elementos que no son de la "periferia" de la matriz.

20.

Se tienen los costos de produccin de tres departamentos (dulces,


bebidas y conservas), correspondientes a los 12 meses del ao anterior.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:79

FUNDAMENTOS DE PROGRAMACIN

Elaborar un diagrama de caja que pueda proporcionar la siguiente informacin:


a) En que mes (nmero) se registr el mayor costo de produccin de dulces?
b) Promedio anual de los costos de produccin de bebidas.
c) En que mes se registr el menor costo de produccin de bebidas?
d) Cul fue el departamento que tuvo el menor costo de produccin en Agosto?
21.
-

Elaborar un diagrama de caja para controlar las reservaciones y


cancelaciones de boletos para las funciones de una obra de teatro.
El teatro cuenta con 300 asientos, 200 en la planta baja y 100 en la planta
alta.
Los asientos estn numerados del 1 al 200 en la planta baja y del 1 al 100 en
la alta.
Hay 2 funciones, a las 6 y a las 9 de la noche.

Se debe preguntar si se desea planta baja o alta, la funcin deseada y el nmero de


asiento deseado, y se debe imprimir el precio del boleto. Para las cancelaciones,
preguntar el nombre y la funcin.
22.
Una lnea area realiza 3 vuelos diarios a Europa, uno a Pars, uno a
Madrid y uno a Londres. Elabore un diagrama de caja que controle las
reservaciones y cancelaciones de lugares.
NOTAS:
- Cuando hay una reservacin, se preguntar el No. de vuelo ( 1 Pars , 2
Madrid , 3 Londres ), el nombre de la persona, y si desea seccin de fumar o
de no fumar.
- Cuando hay una cancelacin, se preguntar el nombre de la persona y el No.
de vuelo.
- Cada vuelo tiene 100 asientos. Del 1 al 50 es la seccin de no fumar, y del 51
al 100 es la seccin de fumar.
- Se asignar el primer asiento que se encuentre desocupado en la seccin
deseada del vuelo correspondiente.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:80

FUNDAMENTOS DE PROGRAMACIN
23.

La Direccin General de Institutos Tecnolgicos desea conocer una


serie de datos estadsticos referentes a la cantidad de Ingenieros, Masters y
Doctores que laboran en el sistema de tecnolgicos. Entre otros datos se
desea saber:
a) Total de Doctores, Masters e Ingenieros por zona.
b) Sueldo promedio de un Dr. en el sistema de tecnolgicos.
c) Total de Doctores en el tecnolgico de Nuevo Laredo.
d) Total de Ingenieros con plaza #3 en la zona centro.
e) El monto total de los sueldos en los tecnolgicos de la zona norte.
Suponga que se cuenta con 2 matrices con los siguientes datos:

NOTAS:
- La clave de empleado puede ser 1,2 o 3. (DR., MC., ING.)
- Las zonas son norte, centro y sur.
- Son 60 tecnolgicos
- Existen 3 plazas (1,2,3) por cada clave de emp.

Carrera Ingeniera En Electrnica Telecomunicaciones Y Redes

Pgina N:81

You might also like