Escolar Documentos
Profissional Documentos
Cultura Documentos
https://representacioninformacion.wikispaces.com/
QU 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.
FUNCIONES BSICAS
Es el procesamiento de informacin, almacenar informacin, arrojar resultados.
Los objetivos del sistema operativo son: facilitar a los programas del usuario el
acceso a los distintos recursos o dispositivos que se puedan producir.
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
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.
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.
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.
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.
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.
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.
Una categora especial son aquellos perifricos que cumplen ambas funciones, es
decir son unidades de entrada y salida de informacin.
DISCO DURO
El disco duro forma parte de la unidad central y es el dispositivo de
almacenamiento principal de un computador.
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.
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.
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
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".
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.
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.
Ahora bien, la siguiente unidad de medida es el byte, el cual est formado por
un total de 8 bits.
UNIDAD EQUIVALENCIA
Kilobyte (Kb) 1.024 Bytes
Megabyte (Mb) 1.024 Kb
Gigabyte (Gb) 1.024 Mb
Terabyte (Tb) 1.024 Gb
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
CONCEPTO DE ALGORITMO
El concepto de algoritmo forma parte esencial de los fundamentos de la
computacin
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
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:
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.
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.
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.
Dgito
Subrayado
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.
ASIGNACIN DE DATOS
Asignaciones
Una variable puede tomar valores de dos formas:
Por operacin de asignacin: (a= b+1);
Por lectura (Leer a).
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;
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
OPERADORES LGICOS
Los resultados se ven en la tabla:
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.
Operador Significado
= Igual que
IN Pertenece A
Ejemplo:
5>10 Falso
-15.3<6 Verdadero.
'D'>'M' Falso
EXPRESIONES
Pueden estar 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:
Ejemplos:
2+ 3* 4 = 20(incorrecto)
Variable = 14 (correcto)
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
Ejemplos de algoritmos:
1. Algoritmo para lavar la ropa blanca
Elementos de un lenguaje
Palabras reservadas: si entonces, Algoritmo finalgoritmo, mientras
Identificadores
Caracteres especiales: =, , {
Constantes
Variables
Expresiones: a = b * 5 c
Datos numricos:
Enteros: -10, 6, 291
Reales: 1.5, -0.63, 54.4E-10
Datos lgicos:
Booleano
Verdadero / Falso
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
Tipos de expresiones:
Aritmticas: +, -, *, /, div, mod, ^
(4 + A) * 7 / B
Lgicas: no, y, o, =, <, >, <=, >=,
no (A > B) o (B 10)
FIE Pgina N:24
FUNDAMENTOS DE PROGRAMACIN
Expresiones
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.
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
EJEMPLOS DE ALGORITMOS
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)
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
FIE Pgina N:27
FUNDAMENTOS DE PROGRAMACIN
8. Ir a 12
9. SA = HE + 5
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.
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
FIE Pgina N:28
FUNDAMENTOS DE PROGRAMACIN
7. Escribir(Equiltero)
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.
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:
B 2 4 AC
X 1, X 2 B
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
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.
ESTRUCTURA MIENTRAS-HACER
En nuestro curso esta estructura bsica de un bucle Mientras se representar
de la siguiente manera:
De aqu se pasa a la primera lnea del bucle para volver a mirar la condicin.
Algoritmo_area_tringulo
1. Inicio
2. Escribir(Ingrese el nmero de tringulos a realizar el clculo)
3. Leer (N)
4. I = 1
5. 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
Algoritmo_MCD
1. Inicio
2. Escribir (Ingrese los dos nmeros)
3. Leer(a,b)
4. c= a mod b
5. Mientras (c!= 0) hacer
5.1 a=b
5.2 b= c
FIE Pgina N:31
FUNDAMENTOS DE PROGRAMACIN
5.3 c= a mod b
5.4 fin del mientras
6. Escribir(b)
7. 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
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.
Repetir
Instruccin 1
Instruccin 2
HASTA (condicin)
Algoritmo_area_tringulo
1. Inicio
2. Escribir(Ingrese el nmero de tringulos a realizar el clculo)
3. Leer (N)
4. I = 1
5. 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
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
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
Entre las reglas bsicas de su funcionamiento hay que tener en cuenta que el for
requiere de una variable de control que actuar 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.
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.
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 algoritmo 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
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:
Estructura secuencial
La ilustracin muestra el diagrama de flujo que representa a la estructura de control
secuencial.
Estructuras de seleccin
La ilustracin muestra los diagramas de flujo de las estructuras de seleccin.
CONDICIONES SIMPLES
En general todas las condiciones simples se forman con; variables, operadores
relacinales, y constantes.
sexo = m
sueldo > 300,000
Operador Significado
= Igual que
CONDICIONES COMPUESTAS
En muchas ocasiones es necesario presentar ms de una condicin para su
evaluacin al computador.
OPERADOR SIGNIFICADO
AND "Y" LOGICO
OR "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:
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
Pseudocdigo:
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
Estructuras de repeticin
A continuacin se muestran las estructuras de repeticin bsicas.
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).
INSTRUCCIONES
vc
FOR I, 1, N, +1
ESCRIBIR(INGRESE LA NOTA: , I)
LEER (NOTA)
PROMEDIO = SUMA/N
ESCRIBIR(LA RESPUESTA ES = ,
PROMEDIO)
FIN
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 (a1)! a (a2)! a (a3)! .......
2. Disear un diagrama de flujo que permita generar la sumatoria de la serie:
2 4 4 6 6
2 ......
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
Ejemplo: Disear un diagrama de flujo para cambiar a maysculas todas las letras
de una frase
INICIO
Escribir(ingrese la frase)
Leer(cad)
cad=concatenar(cad, )
n= longitud(cad)
For i,o,(n-1),+1
Cad[i]= mayuscula(cad[i])
Escribir(cad)
FIN
Ejemplo: Disear un diagrama de flujo para contar las palabras en una frase
INICIO
Escribir(ingrese la frase)
Leer(cad)
Cad= concatenar(cad, )
n= longitud(cad)
cont= 0
For i,o,(n-1),+1
V F
cad[i]=
Cont=cont+1
Escribir(cont,palabras)
FIN
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
5. Visualizar las palabras de longitud impar en una frase al revs
DIAGRAMAS DE CAJA
Estos diagramas son tambin llamados diagramas de tcnicas horizontales, ya
que se los realizan en rengln seguido y no necesitan flechas.
ESTRUCTURA SECUENCIAL
Estas estructuras vienen dadas a regln seguido y el diagrama de caja de esta
estructura es la siguiente:
Ejemplo:
INICIO
INSTRUCCIN
INSTRUCCION
INSTRUCCION
FIN
INICIO
LEER(B,C)
A= B+C
ESCRIBIR(A)
FIN
Pseudocodigo
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 pasar a la accin sino (else o falsa).
Pseudocodigo
Si < Condicin> entonces
< Accin SI >
Si_no
< Accin S2 >
Fin _ si
INICIO
ESCRIBIR(INGRESE TRES VALORES)
LEER(A,B,C)
Diagrama de Flujo
CASO (EXPRESIN) DE
VALOR 1:
VALOR N:
POR DEFECTO:
FIN CASE
CASO op DE
VALOR A:
Cad=Es una A
VALOR E:
Cad=Es una E
VALOR I:
Cad=Es una I
VALOR O:
Cad=Es una O
VALOR U:
Cad=Es una U
POR DEFECTO:
Cad=no es vocal
FIN CASE
Escribir(cad)
FIN
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.
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?
Esta expresin booleana se repite una y otra vez mientras la expresin booleana
(condicin) sea verdadera.
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
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
Hacer
Sentencia(s
)
V
Condicin
F MIENTRAS (CONDICIN)
Ejemplo: Disee un diagrama de caja que permita generar los 5 primeros nmeros
pares utilizando la estructura HACER - MIENTRAS.
INICIO
NUM = 0
I=1
HACER
NUM = NUM +2
ESCRIBIR (NUM)
I = I +1
MIENTRAS ( 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
vc
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
Ejemplo: Imprimir todos los nmeros del 1 al 100 que sean mltiplos de 3
utilizando la estructura MIENTRAS-HACER
INICIO
I=1
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
FIN
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 NO
ESCRIBIR(I,
ES DIVISIBLE
PARA 3)
FIN
VECTORES
DEFINCIONES: Arreglos
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
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]
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
(V[i]>=A) Y (V[i]<=B)
SI NO
C= C+1
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
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
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
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
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
PROGRAMA PRINCIPAL
INICIO
Instruccin 1
Llamada al
procedimiento(Lista de
parmetros actuales)
..
FIN
PROCEDIMIENTO Linea
INICIO
Escribir(*****)
FIN
PROGRAMA PRINCIPAL
INICIO
Linea
Escribir (ESPOCH)
Escribir(EIE)
Linea
FIN
PARMETROS
Para poder pasar informacin entre el programa principal y procedimientos, o entre
los mismos procedimientos usamos los parmetros, que son los canales de
comunicacin de datos.
PROCEDIMIENTO Linea(n1)
Para llamar a un procedimiento que utiliza parmetros se pueden utilizar como tales
otras variables o constantes, siempre y cuando sean del mismo tipo que los
declarados. Ejemplo:
Linea(x);
PROCEDIMIENTO Linea(n1)
INICIO
For i, 1, n1, +1
Escribir(*)
FIN
PROGRAMA PRINCIPAL
INICIO
Linea(5)
Escribir (ESPOCH)
Escribir(EIE)
Escribir(Ingrese un nmero)
Leer (Longitud)
Linea(Longitud)
FIN
INICIO
For i, 1, num, +1
Escribir(caracter)
FIN
PROGRAMA PRINCIPAL
INICIO
Dibuja(5,@)
Escribir (ESPOCH)
Escribir(EIE)
Escribir(Ingrese un nmero y un carcter)
Leer (n, op)
Dibuja(n, op)
FIN
Ejemplo:
INICIO
Instruccin 1
Instruccin 2
Retornar(valor)
FIN
PROGRAMA PRINCIPAL
INICIO
Instruccin 1
Variable = nombre(lista de
parmetros actuales)
..
FIN
FUNCIN factorial(f)
INICIO
S=1
For i, 1, f, +1
S= S * i
Retornar(S)
FIN
PROGRAMA PRINCIPAL
INICIO
Escribir(Ingrese un nmero)
Leer(num)
X = factorial(num)
Escribir(La respuesta es , X)
FIN
! ( 1)!
+ 2 .
1 34
FUNCIN factorial(x)
INICIO
f=1
For i, x, 1, -1
f= f * i
Retornar(f)
FIN
FUNCIN potencia(b,c)
INICIO
p=1
For i, 1, c, +1
p= p * b
Retornar(p)
FIN
PROCEDIMIENTO ImpRespuesta(y)
INICIO
Escribir(La suma total es de: , y)
FIN
PROGRAMA PRINCIPAL
INICIO
Escribir(Ingrese un nmero de trminos)
Leer(n)
Suma = 0
Sig = 1
Base= 1
Exp = 2
For i, n, 1, -1
Fact =factorial(i)
Pot= potencia(base, exp)
Termino= sqrt(Fact/Pot)
Termino= Termino*sig
Suma= Suma+ Termino
Sig= Sig*(-1)
Base= Base+2
Exp =Exp +2
ImpRespuesta(Suma)
FIN
GLOSARIO
SIGNIFICADO DE TERMINOS MS UTILIZADAS
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 CASE
1. 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
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
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:
a. Convertir millas a kilmetros
b. Convertir 125 metros a centmetros
5. 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
6. 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
7. Capturar y desplegar los cinco datos ms importantes de un automvil
8. 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.)
9. Evaluar el factorial de cualquier numero usando la formula: n!=n!-1
10.La distancia que recorre un auto es de 50 kms y su velocidad es de 30 millas
por hora Cunto tiempo tardara en llegar?
11.Encontrar la derivada de x para cualquier valor con la formula(d/dx(x)=1)
12.Calcular l inters que gana un capital de x pesos a una tasa de inters del
15% anual en un periodo de n aos
13.Que aceleracin tiene un tren que parte de Tijuana a 10 km/hr y pasa por
Ensenada una hora despus a 50 km/hr
14.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
15.Si en una escuela hay 30 maestros y 15 son hombres que atienden a 10
alumnos cada uno. Cuantas maestras hay?
16.Calcular la corriente de un circuito con un voltaje de 15v y una resistencia de
6 ohms. Formula (I= V/R)
17.Calcular la normal estndar(z) dados los datos por el usuario: X=dato,
=media, d=desviacin. Formula (Z = X-M / d)
18.Dado un numero(N) cualesquiera obtener su raz y potencia cuadrada
19.Determinar la media de 5 nmeros diferentes
20.Determinar la velocidad v requerida para recorrer una distancia d en un
tiempo t . Formula (V = d * t)
21.Determinar la pendiente de una recta. Formula (y = m x + b)
22.Calcular la funcin de y= x + 8x + 3 para cualquier x
23.Convertir minutos a horas
24.Aplicar la formula general para a=1, b=2, c=3
25.Se desea instalar un cable de red, el cliente pide 30 pies, considerando que
se venden en metros, cuantos deber comprar
10. Elaborar un diagrama de caja que capture en una matriz las calificaciones
obtenidas por un grupo de N estudiantes y que realice lo siguiente :
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:
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).
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 diagrama de caja 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.
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.