Professional Documents
Culture Documents
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.
Pgina N:1
FUNDAMENTOS DE PROGRAMACIN
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
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.
Pgina N:3
FUNDAMENTOS DE PROGRAMACIN
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
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.
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.
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).
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
Pgina N:12
FUNDAMENTOS DE PROGRAMACIN
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
Pgina N:14
FUNDAMENTOS DE PROGRAMACIN
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
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:
Pgina N:16
FUNDAMENTOS DE PROGRAMACIN
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.
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
Carcter:
Nombres,
direcciones
o
caractersticas
alfanumricos
Tipo numrico: Utilizada para calcular resultados
Informacin de tipo lgico para el control de procesos
smbolos
ASIGNACIN DE DATOS
Asignaciones
Una variable puede tomar valores de dos formas:
Pgina N:19
FUNDAMENTOS DE PROGRAMACIN
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
ALTURA
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
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
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
>=
<=
<>
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:
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
2.
Pgina N:23
FUNDAMENTOS DE PROGRAMACIN
3.
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
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}
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
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
Pgina N:30
FUNDAMENTOS DE PROGRAMACIN
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.
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.
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.
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
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
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:
Pgina N:36
FUNDAMENTOS DE PROGRAMACIN
Pgina N:37
FUNDAMENTOS DE PROGRAMACIN
Pgina N:38
FUNDAMENTOS DE PROGRAMACIN
Pgina N:39
FUNDAMENTOS DE PROGRAMACIN
Estructuras de seleccin
La Ilustracin muestra los diagramas de flujo de las estructuras de seleccin.
Pgina N:40
FUNDAMENTOS DE PROGRAMACIN
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
>=
<=
<>, !=
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:
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:
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.
Pgina N:47
FUNDAMENTOS DE PROGRAMACIN
INSTRUCCIONES
vc
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)
PROMEDIO = SUMA/N
FIN
Pgina N:49
FUNDAMENTOS DE PROGRAMACIN
Deber:
1. Disear un diagrama de flujo que permita generar la sumatoria de la serie:
2 4 4 6 6
......
3 3 5 5 7
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
Pgina N:51
FUNDAMENTOS DE PROGRAMACIN
Pgina N:52
FUNDAMENTOS DE PROGRAMACIN
INICIO
ESCRIBIR(INGRESE TRES VALORES)
LEER(A,B,C)
Verdadero
A>B
Falso
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
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
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
HASTA (CONDICIN)
Condicin
Pgina N:56
FUNDAMENTOS DE PROGRAMACIN
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
Pgina N:57
FUNDAMENTOS DE PROGRAMACIN
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.
INSTRUCCIONES
vc
1.
2.
3.
4.
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
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
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
Pgina N:61
FUNDAMENTOS DE PROGRAMACIN
VECTORES
DEFINCIONES: Arreglos
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
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
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
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
Pgina N:66
FUNDAMENTOS DE PROGRAMACIN
Ejemplo:
Pgina N:67
FUNDAMENTOS DE PROGRAMACIN
Ejemplo: Dada una matriz en la que guarden las notas de n estudiantes en sus m
asignaturas. Calcular:
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
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
Pgina N:69
FUNDAMENTOS DE PROGRAMACIN
DIMM
DIN
DMA
EPP
HERTZ
IDE
ISA
LPT
MEGAHERT
Z
PCI
PGA
RAM
Pgina N:70
FUNDAMENTOS DE PROGRAMACIN
RAMBUS
RIMM
ROM
SCSI
SETUP
SIMM
SIPP
SPP
SRAM
USB
VARIABLE
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.
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
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.
12.
13.
Encontrar la
formula(d/dx(x)=1)
14.
15.
derivada
de
para
cualquier
valor
con
la
Pgina N:74
FUNDAMENTOS DE PROGRAMACIN
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Convertir C a F
31.
32.
33.
Pgina N:75
FUNDAMENTOS DE PROGRAMACIN
34.
35.
36.
37.
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.
41.
42.
Pgina N:76
FUNDAMENTOS DE PROGRAMACIN
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.
Pgina N:77
FUNDAMENTOS DE PROGRAMACIN
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.
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.
20.
Pgina N:79
FUNDAMENTOS DE PROGRAMACIN
Pgina N:80
FUNDAMENTOS DE PROGRAMACIN
23.
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.
Pgina N:81