Tarea 1 EII115
Tarea 1 EII115
Tarea 1 EII115
Tarea 1
ALGORITMOS
Narrados y Grficos
Carnet:
HN14001
SC14009
VR14003
RV14040
INDICE
Introduccin: ................................................................................................................................................. 3
Objetivos: ....................................................................................................................................................... 3
Marco Terico: .............................................................................................................................................. 4
Estructuras secuenciales ......................................................................................................................... 5
Desarrollo: ..................................................................................................................................................... 8
Conclusiones:............................................................................................................................................... 19
Bibliografa:.................................................................................................................................................. 19
Sitios de Internet: ..................................................................................................................................... 19
Pgina 2 de 19
IIE-115
Ciclo 1-2015
Introduccin:
En el presente documento se presenta la primera tarea de Introduccin a la Informtica, de la carrera
Ingeniera Elctrica la cual consta de ALGORITMOS, Narrados y Grficos. Son 10 ejercicios
resueltos utilizando los conocimientos adquiridos en los tericos de la materia, se involucran
Flujogramas y diagramas de caja, dado que es una forma rpida y eficiente de presentar una posible
solucin a los problemas dados, todo este proceso es necesario conocer antes de aprender cualquier
lenguaje de programacin. Se debe tener claro que el desarrollo de estos diagramas esta armado al
nivel de lgica de la persona que los est utilizando, por esto es necesario conocer la simbologa y la
funcionalidad de ciertas propiedades o caractersticas de la lgica de resolucin de problemas.
Entendemos como algoritmos a un conjunto prescrito de instrucciones o reglas bien definidas,
ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen
dudas a quien deba realizar dicha actividad.2 Dados un estado inicial y una entrada, siguiendo los
pasos sucesivos se llega a un estado final y se obtiene una solucin.
A diferencia de los laboratorios en las tareas se pone en manifiesto el grado de comprensin de los
alumnos sobre un determinado tema, por eso dentro de este reporte se expone un marco teorico
bsico sobre los algoritmos, diagramas de flujo y dems informacin, un desarrollo que son los
ejercicios dados y unas conclusiones en base a los objetivos planteados por los alumnos que se
presentan a continuacin:
Objetivos:
Tener la capacidad realizar Algoritmos narrados y grficos.
Aplicar los bucles repetitivos, Mientras Hacer-mientras y para.
Graficar de manera correcta los diagramas NS y de flujo.
Pgina 3 de 19
IIE-115
Ciclo 1-2015
Marco Terico:
Algoritmo: Es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas
que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba
realizar dicha actividad.
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural,
pseudocdigo, diagramas de flujo y lenguajes de programacin entre otros. Las descripciones en
lenguaje natural tienden a ser ambiguas y extensas; El usar pseudocdigo y diagramas de flujo evita
muchas ambigedades del lenguaje natural; Dichas expresiones son formas ms estructuradas para
representar algoritmos; No obstante, se mantienen independientes de un lenguaje de programacin
especfico.
Existen dos tipos de algoritmos y son llamados as por su naturaleza:
Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras. Lo ejecutan las
personas.
Cuantitativos: Son aquellos en los que se utilizan clculos numricos para definir los pasos del
proceso. Lo ejecuta el computador
Diagrama de flujo.
Los diagramas de flujo son descripciones grficas de algoritmos; usan
smbolos conectados con flechas para indicar la secuencia de instrucciones
y estn regidos por ISO.
Los diagramas de flujo son usados para representar algoritmos pequeos, ya
que abarcan mucho espacio y su construccin es laboriosa. Por su facilidad
de lectura son usados como introduccin a los algoritmos, descripcin de
un lenguaje y descripcin de procesos a personas ajenas a la computacin.
Ejemplo: Calculo de la raz de la cuadrada de un nmero.
Pgina 4 de 19
IIE-115
Ciclo 1-2015
Pseudocdigo.
El pseudocdigo (falso lenguaje, el prefijo pseudo significa falso) es una descripcin de alto nivel de
un algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintcticas
propias de lenguajes de programacin, como asignaciones, ciclos y condicionales, aunque no est
regido por ningn estndar. Es utilizado para describir algoritmos en libros y publicaciones
cientficas, y como producto intermedio durante el desarrollo de un algoritmo, como los diagramas
de flujo, aunque presentan una ventaja importante sobre estos, y es que los algoritmos descritos en
pseudocdigo requieren menos espacio para representar instrucciones complejas.
El pseudocdigo est pensado para facilitar a las personas el entendimiento de un algoritmo, y por
lo tanto puede omitir detalles irrelevantes que son necesarios en una implementacin.
Programadores diferentes suelen utilizar convenciones distintas, que pueden estar basadas en la
sintaxis de lenguajes de programacin concretos.
Variables.
Son elementos que toman valores especficos de un tipo de datos concreto. La declaracin de una
variable puede realizarse comenzando con var. Principalmente, existen dos maneras de otorgar
valores iniciales a variables:
1. Mediante una sentencia de asignacin.
2. Mediante un procedimiento de entrada de datos (por ejemplo: 'read').
Ejemplo:
...
i:=1;
read(n);
while i < n do begin
(* cuerpo del bucle *)
i := i + 1
end;
Estructuras secuenciales
La estructura secuencial es aquella en la que una accin sigue a otra en secuencia. Las operaciones
se suceden de tal modo que la salida de una es la entrada de la siguiente y as sucesivamente hasta el
fin del proceso. La asignacin de esto consiste, en el paso de valores o resultados a una zona de la
memoria. Dicha zona ser reconocida con el nombre de la variable que recibe el valor. La asignacin
se puede clasificar de la siguiente forma:
1. Simples: Consiste en pasar un valor constante a una variable (a 15)
Pgina 5 de 19
IIE-115
Ciclo 1-2015
2. Contador: Consiste en usarla como un verificador del nmero de veces que se realiza un
proceso (a a + 1)
3. Acumulador: Consiste en usarla como un sumador en un proceso
(a a + b).
4. De trabajo: Donde puede recibir el resultado de una operacin matemtica que involucre
muchas variables (a c + b*2/4).
Un ejemplo de estructura secuencial, como obtener el rea de un tringulo:
Inicio
...
float b, h, a;
printf("Diga la base");
scanf("%f", &b);
printf("Diga la altura");
scanf("%f", &h);
a = (b*h)/2;
printf("El rea del tringulo es %f", a)
...
Fin
Pgina 6 de 19
IIE-115
Ciclo 1-2015
Bucle:
Un bucle o ciclo, en programacin, es una sentencia que se realiza repetidas veces a un trozo
aislado de cdigo, hasta que la condicin asignada a dicho bucle deje de cumplirse.
Generalmente, un bucle es utilizado para hacer una accin repetida sin tener que escribir varias
veces el mismo cdigo, lo que ahorra tiempo, deja el cdigo ms claro y facilita su modificacin en
el futuro.
Los tres bucles ms utilizados en programacin son el bucle while, el bucle for y el bucle repetir.
Bucle while:
El Bucle while o bucle mientras es una estructura de la
los lenguajes de programacin estructurados cuyo
repetir un bloque de cdigo mientras una condicin se
verdadera.
mayora de
propsito es
mantenga
Bucle for:
La principal diferencia de un bucle PARA con respecto a los bucles MIENTRAS Y REPETIR, es
que puede determinarse al comienzo del bucle cuntas veces se iterar el mismo, lo cual muchas
veces puede redundar en una optimizacin del cdigo por parte de los compiladores.
Bucle for:
Comprueba la condicin de finalizacin al final del cuerpo del bucle, y si sta
es cierta continua con el resto del programa, a veces esto resulta ms
adecuado.
Pgina 7 de 19
IIE-115
Ciclo 1-2015
Desarrollo:
Algoritmo Narrado
1. Problema 1
2. Inicio
3. Leer a, b, b
4. Es a mayor o igual a b?
5. Si es verdadero mayor es igual a a
6. Si es falso mayor es b
7. Es c >= a mayor
8. Si es verdadero mayor es igual a c
9. Mostrar mayor
10. Fin
Pgina 8 de 19
IIE-115
Ciclo 1-2015
2. Desarrollar un diagrama NS que calcule el ngulo menor entre las agujas del
reloj (minutera y horaria), el dato de entrada ser la hora.
Diagrama NS
inicio
leer hora (b:c)
b == 12
b=0
angulob= b*30
anguloc=c*6
angulo d= abs(angulo b-anguloc)
0
angulod>(360-angulod)
angulo d= 360-angulod
mostrar angulo d
Fin
Pgina 9 de 19
IIE-115
Ciclo 1-2015
Leer b
Valor=b
L=valor MOD 20
Valor=valor DIV 20
G=valor DIV 10
Valor=valor MOD 10
N =valor DIV 5
Valor=valor MOD 5
P= valor DIV 1
Valor=valor MOD1
J de 100, M de 50, L
de 20, G de 10, N
de 5, P de 1
FIN
Pgina 10 de 19
IIE-115
Ciclo 1-2015
Ssuma >= 60
F
N1>n2
V
N1>n2
Ssuma: Ssuma 60
Msuma: Msuma + 1
Msuma >= 60
V
N1>n2
Msuma: Msuma 60
Msuma: Gsuma + 1
Fin
Pgina 11 de 19
IIE-115
Ciclo 1-2015
F
N1>n2
Inicio
Para i=1 hasta n
R Leer X[i]
AUXI
X[J]
X[J]
X[J+1]
X[J+1]
AUXI
Para J = 1 hasta n
Mostrar X[J]
Fin
Pgina 12 de 19
IIE-115
Ciclo 1-2015
Inicio
K = 2; Suma = 0
T = ((K-1)+(K+1))/2
Num = Sen (T(X))
Den = (K-1)*(K+1)
M = Num/Den
Suma = Suma + M
K=K+2
V
N1>n2
M<0.0001
F
N1>n2
Fin
Pgina 13 de 19
IIE-115
Ciclo 1-2015
inico
Ingresar x
Denominar K=2; Suma=0; P=8/; n=1; Y=2n-1
R T = ((K-1)+(K+1))/2
R Num = (Y) Sen (T(X))
R Den = (K-1)*(K+1)
R Resul = Num/Den
R Suma = Suma + Resul
RK=K+2
Rn=n+1
Mientras K<100
Mostrar Suma
F Fin
Pgina 14 de 19
IIE-115
Ciclo 1-2015
Inicio
n,k
n<0 &&
k<0
F
n<k
F
n==k
X=n ;y=1
Y = X*Y
X = X-1
V
X >= 2
Nom = X
1
N=k ;M=1
M = M*N
N = N-1
V
N>=2
T = (n-k)
P=T ;Q=1
Q = Q*P ; P = P-1
V
P>=2
F
B
Pgina 15 de 19
IIE-115
Ciclo 1-2015
Den = M*T
Frac = Nom/Den
Frac
Fin
Pgina 16 de 19
IIE-115
Ciclo 1-2015
Obtener n1, n2
F
V
n1>n2
Count1=n1
Count1=n2
Count2=n2
Count2=n1
Rant=count2
Rant=count2
R!= 0
V
Rant= r
R=count1MOD count2
Count1=count2
Count2=r
Rant
Pgina 17 de 19
IIE-115
Ciclo 1-2015
FIN
10. Hacer una corrida manual del siguiente diagrama de cajas, se deber
realizar por lo menos 10 iteraciones para x = 0.45.
Iteraciones
1
2
3
4
5
6
7
8
9
10
-----------
-----------
Valor de Mientras
abs(pow(x, -(2*k-1))) / (2*k-1)
-----------
IIE-115
Ciclo 1-2015
Conclusiones:
-
Los algoritmos tanto narrados como grficos son herramientas que nos facilitan la resolucin
de problemas mediante mtodos lgicos, adems de facilitar la comprensin de quien lo lee,
el nico inconveniente es que debe conocer con anterioridad la metodologa.
Existe un tercer lazo se utiliza cuando se conoce el nmero exacto de veces que se ejecutara
el bucle, es un tanto ms simple que las dos anteriores, pero igualmente til.
Los diagramas NS omiten las flechas de unin, solo son cajas simples y contiguas que varan
de posicin en el caso de utilizar un bucle, los flujogramas son diagramas que utilizan
smbolos especficos y flechas para expresar la direccin del procedimiento.
Bibliografa:
Zelaya, W. (2012) Introduccin a la Informtica. Ed. Imprenta Universitaria UES. San Salvador, pg., 32 al
72.
Sitios de Internet:
http://es.wikipedia.org/wiki/Algoritmo#Diagrama_de_flujo
http://www.monografias.com/trabajos15/algoritmos/algoritmos.shtml
http://www.minsa.gob.pe/dgsp/observatorio/documentos/herramientas/Diagramade
Flujo.pdf
https://docs.google.com/document/d/1AN_r2s2zCdabvQ5j0P2i2Aggp3axxce82fJIKyuo7g/mobilebasic?pli=1
http://image.slidesharecdn.com/simbolosdiagramadeflujo-120309174851phpapp02/95/simbolos-diagrama-de-flujo-1-728.jpg?cb=1331336987
Pgina 19 de 19
IIE-115
Ciclo 1-2015