Informatica 11er
Informatica 11er
11er. Semestre
Educacin Media Tcnica
283
284
Los algoritmos
Semana
1
Los algoritmos
Semana 1
Empecemos!
Estimado participante, bienvenido a este nuevo semestre en el
que esperamos mucha dedicacin y apertura de tu parte para
enfrentar los nuevos retos que
se te presentan. A estas alturas
del partido, como diramos en
el bisbol, son muchas las cosas que dominas del tema sobre
programacin.
En las ltimas semanas del 10mo semestre aprendimos sobre el concepto
de algoritmo con sus respectivos diagramas de flujo y cmo elaborarlos a partir de problemas sencillos de la cotidianidad. Esta semana vamos a repasar los
conceptos y procedimientos respectivos.
Qu sabes de...?
Qu significa la palabra algoritmo?, has realizado alguno?, lo has representado grficamente? Para entender de programacin, es importante que
manejes esto.
El reto es...
Antes de entrar de lleno en el tema de los algoritmos y su representacin
grfica, te invitamos a realizar algunos ejercicios que te permitirn tener un
acercamiento al tema.
Diariamente estamos realizando actividades, cuyos procesos desarrollamos
de manera automtica; por ejemplo, asistir al trabajo, ir al mercado, ir el da
sbado al CCA, etc. Para ello, no anotamos los pasos que vamos a dar, pues ya
estn grabados en nuestra mente. En vista de esto, te proponemos que escojas un problema tomado de tus actividades cotidianas y realices, junto a tus
compaeros, una lista ordenada de los pasos para lograr la solucin.
285
Semana 1
Los algoritmos
Vamos al grano
En el diccionario de la Real Academia Espaola
([Link] encontramos la siguiente definicin de algoritmo:
1.m. Conjunto ordenado y finito de operaciones que permite hallar la solucin de un problema.
2.m. Mtodo y notacin en las distintas formas del clculo.
Por su parte, en [Link] ([Link] se define algoritmo como:
1.m. Conjunto ordenado y finito de operaciones que permiten hallar la solucin de un problema: por el algoritmo de Euclides se calcula el mximo comn divisor de dos nmeros.
2. Mtodo y notacin en las distintas formas del clculo:
ax2 + bx + c = 0 es un algoritmo.
En ambos casos, nos hablan de
pasos ordenados y finitos para
resolver un problema. Entonces,
si nos planteamos, por ejemplo,
exponer el tema sobre algoritmos, deberamos cumplir con
los pasos siguientes: revisar el
tema relacionado con los algoritmos; preguntarme si lo que s
sobre algoritmos es suficiente
para lo que voy a exponer; si es
suficiente, contino con los pasos siguientes; si no, me tocar
investigar lo que no domino;
preparar la exposicin, exponer
y finalizar.
286
La lmpara
no funciona
Est
enchufada?
NO
Enchufarla
SI
Foco
quemado?
NO
Comprar nueva
lmpara
SI
Reemplazar
el foco
Los algoritmos
Semana 1
287
Semana 1
Los algoritmos
Para saber ms
Para profundizar en el interesante tema de esta semana, anmate a consultar otras fuentes, como libros de texto y/o diferentes sitios web, entre
los que te recomendamos los siguientes:
[Link]
[Link]
[Link]
Los algoritmos
Semana 1
289
Semana
Semana22
Qu sabes de...?
Alguna vez has realizado un diagrama de flujo? Sabes lo que son
pseudocdigos?
Inicio
A, B
S
A+B
Fin
El reto es...
290
Semana 2
Vamos al grano
Un diagrama de flujo o flujograma, como tambin se conoce, es sencillamente un dibujo que indica, mediante smbolos, la direccin del flujo de la
informacin y la secuencia de pasos de un algoritmo; por eso se habla de la
representacin grfica del mismo. Este sistema de smbolos est regido por la
Organizacin Internacional de Estandarizacin ISO.
Cada una de las instrucciones de un algoritmo representan acciones diferentes; por ejemplo, hay instrucciones que representan lectura de datos, escritura de datos o toma de decisiones, entre otras. Estas acciones se ubican de
forma secuencial, segn el orden del algoritmo, en un grfico denominado
diagrama de flujo, que permite ver con mayor precisin cada una de las acciones. Los smbolos utilizados son una convencin aceptada por todos los
desarrolladores de programas (ver tabla 1).
Tabla 1
Representa el inicio y el fin del proceso.
Representa la realizacin de una actividad en el proceso; ejemplos: llenar la forma para retirar dinero, asignar
un valor inicial, realizar una suma.
Representa entrada de datos: leer nmero, leer una
frmula.
Representa salida de datos, resultados, sumas, reas,
etc.
Representa la continuidad del diagrama de flujo en otra
pgina.
Representa la direccin del flujo de informacin.
Representa una accin consistente en la toma de decisiones cerradas, cuyas opciones sean s o no.
Aplicando estos smbolos al ejemplo de ir al banco a retirar dinero, podramos hacer un diagrama como el que se muestra (ver figura 1).
291
Semana 2
Inicio
Inicio
Ir al banco
Hacer la cola
Entregar la
forma
Retirar
efectivo
Al diagrama
de la izquierda
le podemos
introducir una
accin de decisin; por ejemplo, el personal del banco
est laborando? usando
el smbolo
respectivo.
Ir al banco
El banco est
laborando?
Ir a otro
banco
Hacer la cola
Entregar la
forma
Fin
Retirar
efectivo
Fin
Figura 1
En el diagrama de la izquierda el algoritmo
est bien diagramado, se entiende que el
banco est en funcionamiento. En el de la
derecha, introducimos una duda que complejiza el procedimiento, pues hay que tomar una decisin antes de continuar con
el proceso. Estos cambios tambin los puedes introducir a modo de ejercicio, para ver
qu sucede; lo que s debe estar claro es
que, a la hora de la traduccin al lenguaje
informtico, no haya ambigedades.
El pseudocdigo
Semana 2
Diagrama de
flujo
1. Inicio
Inicio
3. Leer la altura
(h)
6. Fin.
5
B*h/2
Pseudocdigo
Interpretacin
Inicio
Inicio
B
9 (se asigna
el valor 9 a B)
B*h/2
A
Fin
A
Fin
h
5 (se asigna
al valor 5 a h)
A B*h/2 (se lee
la frmula para
calcular el rea)
A (se escribe el
rea calculada)
Fin
Para saber ms
Te invitamos a ver dos interesantes videos para profundizar en el tema
de esta semana, disponibles en las siguientes direcciones web:
[Link]
[Link]
293
Semana 2
294
Diagramas
Semana
3 de flujo y pseudocdigos
Datos
Semana 2
Empecemos!
Apreciados participantes, ya
hemos avanzado en este nuevo
semestre, adentrndonos en el
maravilloso mundo de la informtica. En la semana 1 y 2 repasamos el tema sobre algoritmos,
su definicin y representacin
grfica; esta semana estudiaremos los datos y tipos de datos
que se utilizan en programacin.
Esperamos de ti toda la disposicin y atencin que puedas prestar para entender este tema fundamental para tu formacin como Tcnico Medio.
En el proceso formativo de esta semana hars uso de los saberes adquiridos
durante el semestre pasado, vinculados con la estructura de datos; as que,
muchos de los conceptos que abordaremos te resultarn familiares, pues son
parte esencial de la informtica y de la programacin.
Qu sabes de...?
Te invitamos a reflexionar sobre las siguientes cuestiones: Qu es un dato?
Qu es el tipo de dato informtico? Cules son los datos primitivos?
El reto es...
Te invitamos a dar una mirada al entorno del CCA y hacer una lista de los
datos que puedes encontrar en l.
Vamos al grano
Todos conocemos sobre datos, nuestro da a da est lleno de ellos. Por
ejemplo, en un partido de futbol, uno de los datos ms destacados son los
goles que anota cada equipo.
295
Semana 3
Datos
Los datos son lo que le dan sentido a un programa informtico, por cuanto
en l entran datos, que luego son procesados, de donde se genera un resultado, llamado informacin.
Los datos son una representacin simblica (numrica, alfabtica, algortmica, espacial, etc.) de un atributo o variable. Los mismos describen hechos
empricos, sucesos y entidades. Se trata de un valor o referente que recibe el
computador por diferentes medios y representa la informacin que el programador manipula en la construccin de una solucin o en el desarrollo de un
algoritmo.
Los datos aisladamente pueden no contener informacin relevante. Slo
cuando un conjunto de datos se examina en un enfoque, hiptesis o teora,
se puede apreciar la informacin contenida en dichos datos. Los mismos pueden consistir en nmeros, estadsticas o proposiciones descriptivas.
Los datos se caracterizan por no contener ninguna informacin. Un dato
puede significar un nmero, una letra, un signo ortogrfico o cualquier smbolo que represente una cantidad, una medida, una palabra o una descripcin.
La importancia de los datos est en su capacidad de asociarse dentro de
un contexto para convertirse en informacin. Por si mismos los datos no tienen capacidad de comunicar un significado y, por tanto, no pueden afectar el
comportamiento de quien los recibe. Para ser tiles, los datos deben convertirse en informacin, a fin de ofrecer un significado, idea o conclusin.
Hasta el momento, hemos supuesto que los datos que maneja una aplicacin no son tan voluminosos y, por lo tanto, caben en la memoria. Cuando
recurrimos a archivos, se debe a la necesidad de conservar datos despus de
que termina un programa; por ejemplo, para apagar el computador.
Sin embargo, existen problemas en donde el volumen de datos es tan grande que es imposible mantenerlos en la memoria. Entonces, los datos se almacenan en un conjunto de archivos, los cuales conforman una base de datos.
1. Tipo de dato informtico: es un atributo de una parte de los datos que
indica al ordenador y/o al programador algo acerca de la clase de datos
sobre los que se va a procesar. Esto incluye imponer restricciones en los
datos, como qu valores pueden tomar y qu operaciones se pueden
realizar.
2. Tipos de datos primitivos: se refieren a tipos de datos bsicos o elementales, a partir de los cuales se forman estructuras de datos. Los tipos
de datos primitivos considerados en los lenguajes de programacin,
son: enteros, reales, lgicos y los caracteres.
296
Semana 3
Datos
297
Semana 3
Datos
Para saber ms
Revisa las direcciones web siguientes, para profundizar en el tema de
esta semana:
[Link] [Link]
ADS345
6
-7
000001
Si, no
2. Escribe verdadero (V) o falso (F), segn sea el caso, en las siguientes afirmaciones.
a) Datos es igual a informacin ( )
b) El valor 5,67 es un dato tipo entero ( )
c) El valor 100000 es un dato de tipo binario (
d) Verdadero o Falso son datos tipo Char (
298
Datos
Semana 3
299
Semana
Semana4 4
Estructura de datos
Estructura de datos
Empecemos!
Estimados participantes, bienvenidos a esta nueva semana, en
la que seguiremos estudiando
temas bsicos de programacin.
Veremos especficamente lo que
tiene que ver con estructuras de
datos, que tiene mucha relacin
con los procesos estudiados anteriormente, por cuanto existen
para el manejo de datos.
Presta mucha atencin, dedcate y s constante; as logrars el xito en cada una de
tus metas.
Qu sabes de...?
Qu es una estructura de datos? Expresa tu opinin
al respecto, tomando en cuenta que esta es la base
para comprender los temas que vamos a trabajar esta semana y las siguientes.
El reto es...
Construye, a partir de los datos que te puedan suministrar tus compaeros,
una estructura de datos en lenguaje natural. Decide libremente sobre qu datos vas a trabajar.
Vamos al grano
En primer lugar recordemos el concepto de dato. Qu es para ti un dato?.
Segn el Diccionario de la Real Academia Espaola (DRAE), dato es: (Del lat.
datum, lo que se da).
300
Estructura de datos
Semana 4
Estructura de datos
Es una forma de organizar un conjunto de datos elementales, con el objetivo de facilitar la informacin que se tiene en un sistema, definiendo la interrelacin de estos y un conjunto de operaciones que se pueden realizar sobre
los mismos.
Las operaciones bsicas son:
1. Alta, significa agregar un valor a la estructura.
2. Baja, significa borrar un valor de la estructura.
3. Bsqueda, significa encontrar un determinado valor en la estructura
para realizar una operacin con este valor, en forma secuencial o binaria
(siempre y cuando los datos estn ordenados).
Otras operaciones:
1. Ordenamiento, significa arreglar ordenadamente los datos.
2. Apareo, significa originar una nueva estructura que contenga las apareadas.
Cada estructura ofrece ventajas y desventajas en relacin a la simplicidad y
eficiencia para la realizacin de cada operacin. De esta forma, la eleccin de
la estructura de datos apropiada para cada problema, depende de factores
como la frecuencia y el orden en que se realiza cada operacin sobre los datos.
Veamos un ejemplo de estructura de datos sencilla y de uso cotidiano en
un lenguaje natural (figura 2). Ms adelante estudiaremos cmo codificar las
estructuras de datos en lenguaje de programacin.
301
Semana 4
Estructura de datos
CCA
Personal Voluntario
I Lapso 13-14
II Lapso 12-13
I Lapso 12-13
II Lapso 11-12
II Lapso 13-14
Trujillo
I Lapso 13-14
Andes Mrida
II Lapso 12-13
Oficinas
(Educacin)
I Lapso 12-13
Regin Estado
II Lapso
13-14
II Lapso 11-12
Mrida
87
Valera
34
Total Andes
41
48
39
40
23 11
Figura 2
Esta estructura es sencillamente un arreglo con datos numricos y alfabticos, donde aparecen aspectos relacionados con la gestin del Instituto
Radiofnico Fe y Alegra en la regin Andes, visualizando variables como
Estado, oficinas, cantidad de centros, cantidad de voluntarios, adems de
operaciones que se ejecutan entre ellas. Estas variables se disponen en celdas
(direcciones), en las intersecciones de las filas (horizontales) y columnas (verticales). En la casilla sealada con la circunferencia de color verde, se define una
operacin de adicin de los valores de las dos casillas superiores; por supuesto, este arreglo es el resultado del procesamiento de la informacin que hace
la computadora, usando el lenguaje correspondiente,
lo cual estudiaremos en semanas prximas, y te ser
til para el diseo de estructuras sencillas.
Una estructura es, en trminos ms sencillos, una forma, una manera de organizar
elementos de un sistema. Por ejemplo, 10
personas agrupadas de forma desordenada en un consultorio mdico, no nos dan
ninguna informacin, pero, si les asignamos un nmero a cada una, del 1 al 10, s
nos dice algo. As entendemos que hay un
orden: el que tiene el nmero 1 ser atendido en primer lugar y, as hasta el ltimo,
identificado con el nmero 10.
Para saber ms
Encuentra ms informacin acerca de las estructuras de datos en las direcciones web recomendadas. Si te topas con algunos lenguajes desconocidos, no te preocupes, pues la prxima semana estudiaremos los
lenguajes de programacin ms utilizados.
302
[Link]
[Link]
Semana 4
Estructura de datos
303
Semana
Semana55
Qu sabes de...?
Para entender el tema que abordaremos esta semana, es fundamental tener
claro qu son datos, su definicin, ejemplos, tipos y las estructuras que se
pueden configurar con los mismos; por eso te invitamos a volver sobre estos
temas y reflexionar acerca de: qu viene a tu mente cuando oyes la palabra
datos?, con qu otros trminos relacionas dicha palabra?, cules datos utilizas con frecuencia en la cotidianidad?
El reto es...
Elabora una estructura con informacin de tus compaeros del 11er semestre, utilizando datos como, por ejemplo, edad, sexo, estatura, peso, entre
otros. Adems, indica qu tipo de estructura es.
Para el reto de esta semana, apyate en lo
que has estudiado hasta ahora e indaga en
otras fuentes. T puedes!
Vamos al grano
304
Semana 5
Veamos algunos ejemplos de conjuntos: los seres humanos del sexo femenino, los participantes del 11er semestre del IRFA, los nmeros naturales, los
nmeros enteros, los nmeros binarios, etc.
Para repasar las maneras como se representan y se denotan los conjuntos,
busca en tus apuntes de otros semestres, en libros de texto o en internet.
Veamos ahora las diferentes estructuras de datos:
1. Pilas. Una pila (stack en ingls) es
una lista ordinal o estructura de
datos en la que el modo de acceso a sus elementos es de tipo LIFO
(del ingls Last In First Out: ltimo
en entrar, primero en salir) que
permite almacenar y recuperar
datos. Esta forma se aplica en multitud de ocasiones en informtica,
debido a su simplicidad y ordenacin implcita en la propia estructura.
Otra similitud pudiese ser una caja donde introducimos una serie de lminas con datos especficos; la ubicacin de estas lminas, lgicamente
ser 1, 2, 3, 4,, N. Si buscamos el dato 1 (el primero), tendremos
que revisar cada uno de los datos que estn en ubicaciones contiguas
empezando por N (el ltimo). Te ha pasado que te toca buscar un
documento en una caja y tienes que sacar uno por uno hasta llega al primero? Por eso, la premisa es: el primero en entrar es el ltimo en salir.
2. Cola. Colas FIFO (en ingls First In, First Out: primero en entrar primero en
salir). Son aquellas que slo tienen dos operaciones, Push (Insercin) y
Pop (Eliminacin). Push slo se puede efectuar por un extremo llamado
Frente y Pop por el extremo llamado Final. Sin embargo, se le pueden aplicar todas las operaciones
al igual que a las listas.
Esta estructura de datos se compara con una cola en la vida real; por
ejemplo, en una cola para realizar
una transaccin bancaria, el primero que llega es el primero que sale.
En este ejemplo, se pueden crear prioridades, otras colas, por ejemplo,
de personas de la tercera edad, personas con discapacidad, etc.
3. Listas. El trmino lista tendr alguna relacin con la palabra ya conocida por todos? Claro que s! Por ejemplo, si queremos hacer una lista de
las personas que acuden a un consultorio, sencillamente escribimos sus
nombres en forma secuencial: Pedro, Mara, Rosalba, Blanca, David, etc.
Y, si le asignamos un cdigo a cada persona, nos quedara as: Pedro (01),
Mara (02), Rosalba (03), Blanca (04), David (05).
305
Semana 5
La atencin de forma lgica y ordenada sera 01, 02, 03, 04, 05, 06. No se
puede atender al 02, si antes no ha pasado el 01; no se puede atender al
03 antes que al 02.
Las listas son secuencias de 0 (cero) o ms elementos de un tipo de datos almacenados en la memoria. Son estructuras lineales, donde cada
elemento tiene un predecesor, a excepcin del primero y un sucesor,
excepto el ltimo.
La figura 3 muestra la estructura grfica de una lista simple. Y, de forma
general, sera como muestra la figura 4.
01
02
03
04
05
Figura 3
X
Y
Figura 4
99
99
Figura 5
3.2. Lista doblemente enlazada
Un tipo de lista enlazada ms sofisticado es la doblemente enlazada o lista enlazada de dos vas. Cada nodo tiene dos enlaces: uno
apunta al nodo anterior, al valor NULL o a la lista vaca, si es el primer nodo; y otro apunta al siguiente nodo, al valor NULL o a la lista
vaca, si es el ltimo nodo (figura 6).
12
99
Figura 6
306
37
Semana 5
99
37
Figura 7
3.3.1. Listas enlazadas circulares simples
Cada nodo tiene un enlace, similar al de las listas enlazadas simples, excepto que el siguiente nodo del ltimo apunta al primero. Como en una lista enlazada simple, los nuevos nodos pueden
ser slo eficientemente insertados despus de uno que ya tengamos referenciado. Por esta razn, es usual quedarse con una
referencia solamente al ltimo elemento en una lista enlazada
circular simple, esto nos permite rpidas inserciones al principio,
y tambin accesos al primer nodo desde el puntero del ltimo
nodo.
3.3.2. Lista enlazada doblemente circular
En una lista enlazada doblemente circular, cada nodo tiene dos
enlaces similares a los de la lista doblemente enlazada, pero el
enlace anterior del primer nodo apunta al ltimo y el enlace siguiente del ltimo nodo apunta al primero. Como en una lista
doblemente enlazada, las inserciones y eliminaciones pueden
ser hechas desde cualquier punto con acceso a algn nodo cercano. Aunque estructuralmente una lista circular doblemente
enlazada no tiene ni principio ni fin, un puntero de acceso externo puede establecer el nodo apuntado que est en la cabeza o
al nodo cola y as mantener el orden tan bien como en una lista
doblemente enlazada.
307
Semana 5
Para saber ms
Para profundizar en los temas que hemos estudiado esta semana, te recomendamos revisar esta direccin web: [Link] donde encontrars una presentacin que explica detalladamente qu es una estructura de datos tipo lista?
Tipos de estructuras
de datos
Semana
6
Lenguajes de programacin
Semana 5
Empecemos!
Queridos participantes, esta semana estudiaremos los lenguajes de programacin que existen
y su evolucin desde el lenguaje
mquina hasta los lenguajes de
alto nivel.
Qu sabes de...?
Sabes programar? Qu es un lenguaje de programacin? Conoces algn
lenguaje de programacin?
El reto es...
Durante esta semana vamos a entrar al mundo de los lenguajes informticos. Seguramente ya has escuchado alguna referencia a los mismos, por
eso te invitamos a debatir sobre el tema y explicar lo que es el lenguaje de
programacin.
Vamos al grano
Un lenguaje de programacin es un lenguaje formal diseado para expresar procesos que pueden ser llevados a cabo por mquinas, como las
computadoras.
Los mismos pueden emplearse para crear programas que controlen el comportamiento fsico y lgico de una mquina, para expresar algoritmos con
precisin, o como modo de comunicacin humana, mediante el uso de un
conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura, as como el significado de sus elementos y expresiones.
309
Semana 6
Lenguajes de programacin
4ta generacin: lenguajes capaces de generar cdigos por si solos; son los
llamados RAD, con los cuales se pueden realizar aplicaciones sin ser experto
en lenguajes. Aqu tambin se encuentran los lenguajes orientados a objetos,
haciendo posible la reutilizacin de partes del cdigo para otros programas.
Ejemplo: Visual, Natural Adabes.
5ta generacin: lenguajes orientados a la inteligencia artificial, los cuales
aun estn en fase de desarrollo. Ejemplo: LISP.
Elementos
Lenguajes de programacin
Semana 6
Bucles: son parientes cercanos de los condicionantes, pero ejecutan constantemente un cdigo, mientras se cumpla una determinada condicin. Los
ms frecuentes son:
For: ejecuta un cdigo mientras una variable se encuentre entre dos determinados parmetros.
While: ejecuta un cdigo mientras se cumpla la condicin que solicita.
Hay que decir que, a pesar de que existan distintos tipos de bucles, todos
son capaces de realizar exactamente las mismas funciones. El empleo de uno
u otro depende, por lo general, del gusto del programador.
Funciones: se crearon para evitar tener que repetir constantemente fragmentos de cdigo. Una funcin podra considerarse como una variable que
encierra cdigo dentro de s. Por lo tanto, cuando accedemos a dicha variable
(la funcin), en realidad lo que estamos es diciendo al programa que ejecute
un determinado cdigo, predefinido anteriormente.
Todos los lenguajes de programacin tienen algunos elementos de formacin primitivos para la descripcin de los datos y de los procesos o transformaciones aplicadas a estos datos (tal como la suma de dos nmeros o la seleccin de un elemento que forma parte de una coleccin). Estos elementos
primitivos son definidos por reglas sintcticas y semnticas que describen su
estructura y significado respectivamente.
Programar es disear un programa para
comunicarnos con un pblico determinado y esto lo podemos hacer en un lenguaje
natural, es decir, el que usamos a diario,
cuando se trata de comunicarnos de t a
t con el pblico. Pero, si se trata de un programa informtico, utilizamos un lenguaje
de programacin de los que hemos mencionado. En ambos procesos, el objetivo es
comunicar. Lo que cambia es el lenguaje,
por lo que debes aprender otro lenguaje
adems del que ya conoces y ponerte en
la situacin de una persona que aprende a
leer y escribir por primera vez.
311
Semana 6
Lenguajes de programacin
Para saber ms
En las direcciones web indicadas encontrars otros puntos de vista acerca de los lenguajes de programacin. Revsalas y compara con lo que
hemos estudiado esta semana.
[Link]
[Link]
312
Semana
Lenguajes7de programacin
Tipos de lenguajes de programacin
Semana 6
Empecemos!
Estimados participantes, bienvenidos a esta nueva semana, en
la que estudiaremos los lenguajes de programacin ms utilizados. No olvides repasar los temas vistos anteriormente, pues
son la base para lo que veremos
a partir de ahora.
Qu sabes de...?
Consideras que ya manejas lo que es un lenguaje de programacin? Y podras definir cul es su importancia?
El reto es...
Debate con tus compaeros y elabora una lista de los lenguajes de programacin ms utilizados, para qu sirven y dnde se aplican.
Vamos al grano
Ya sabemos que el lenguaje de programacin es una serie de smbolos
que, debidamente codificados, sirve para comunicarnos con las computadoras, lo que permite, a su vez, resolver algunos problemas en cualquier rea
disciplinaria.
Existen muchos lenguajes de programacin ubicados en tres grandes grupos: lenguajes de bajo nivel, lenguajes de nivel medio y lenguajes de alto
nivel.
313
Semana 7
Significado de operacin
a) Cargar contenido de la direccin 129 en
acumulador
b) Sumar contenido de la direccin 130 al
acumulador
c) Almacenar contenido del acumulador en la
direccin 131
d) 10000011 = 27+21+20 = 131
Semana 7
a los registros del sistema, trabajar con direcciones de memoria, todas ellas
caractersticas de lenguajes de bajo nivel y, a la vez, realizar operaciones de
alto nivel.
Bien, ya empiezan a aparecer nombres de lenguajes, como el C, el cual es
sencillamente la manera de expresarse para comunicarse con la computadora, a nivel de hardware (parte fsica) y software (programas), no tan elevados
como el de alto nivel que veremos posteriormente.
Un algoritmo en lenguaje C, es el siguiente:
Clculo del promedio de una lista de los nmeros 5, 8, 2, 7, 6
Tabla 5
Instrucciones en
Lenguaje C
int datos[ ] = { 5, 8, 2, 7, 6,
9 };
int nDatos = 6;
int promedio ()
{
int suma;
int prom;
int cont;
suma = 0;
for (cont=0; cont<nDatos;
cont++)
{
suma += datos [cont];
}
prom=suma/nDatos;
return (prom);
Accin de la computadora
1. Define una matriz (datos) de nmeros enteros y le asigna los valores 5, 8, 2, 7, 6, 9
2. Define la variable (nDatos) de tipo entero y
le asigna el valor 6.
3. Define la funcin (promedio) que devuelve
un nmero entero.
4. Define la variable (suma) de tipo entero.
5. Define la variable (prom) de tipo entero.
6. Define la variable (cont) de tipo entero.
7. Asigna a suma el valor 0.
8. Para cada elemento de la matriz datos, aade su valor a la variable suma.
}
Fjate que a la izquierda tenemos instrucciones en lenguaje C y, a la derecha,
lo que hara la computadora obedeciendo a cada orden.
Las instrucciones son, en su mayora, en idioma ingls, por lo que te recomendamos tener un diccionario Ingls-Espaol a la mano.
315
Semana 7
316
Semana 7
C++
/* para mostrar en pantalla */ #include <iostream.h>
void main(){
a:entero
int a; /* a es entera */
b:entero
int b; /* b es entera */
inicio
cin >> a;
leer (a)
cin >>b;
leer (b)
if( a<b ){
si (a<b) entonces
escribir( b)
else{
si no
cout << a;
}
}
317
Semana 7
Para saber ms
Te recomendamos visitar las direcciones web indicadas, para profundizar en el tema de esta semana.
[Link]
[Link]
318
Tipo de lenguaje
Semana 7
319
Semana 88
Semana
Base de datos
Base de datos
Empecemos!
Bienvenidos a esta nueva semana, donde seguiremos profundizando en temas bsicos
para entender el proceso de programacin. Esta semana estudiaremos lo qu es una base de
datos y tipos de base de datos en
el lenguaje natural, o como las
vemos a diario.
En las semanas siguientes aprenders a construir una base de datos, utilizando las aplicaciones existentes. Slo se requiere de tu disposicin y toda la
atencin y participacin para entender estos nuevos temas.
Qu sabes de...?
Reflexiona sobre algunos tpicos relacionados con el tema de esta semana:
qu es para ti una base de datos?, en cules situaciones cotidianas crees
que se utilizan las bases de datos?
El reto es...
Escoge un semestre cualquiera y, con los datos que se puedan obtener, elabora una base de datos en lenguaje natural. Las variables que puedes tomar
en cuenta son, entre otras, edad, sexo, estatura, salario, gustos, etc.
Vamos al grano
320
Una base de datos es un conjunto de datos pertenecientes a un mismo contexto, que son almacenados sistemticamente para su posterior uso. En este
sentido, una biblioteca puede considerarse una base de datos compuesta, en
su mayora, por documentos y textos impresos en papel, indexados para su
consulta. Actualmente, debido al desarrollo tecnolgico de campos como la
informtica y la electrnica, la mayora de las bases de datos estn en formato
digital, siendo este un componente electrnico; por ende, se ha desarrollado
Base de datos
Semana 8
Segn el contenido
321
Semana 8
Base de datos
grfica contiene informacin sobre el autor, fecha de publicacin, editorial, ttulo, edicin, de una determinada publicacin. Estas pueden
contener un resumen o extracto de la publicacin original, pero nunca
el texto completo.
2. Bases de datos de texto completo
Almacenan las fuentes primarias como, por ejemplo, todo el contenido de todas las ediciones de una coleccin de revistas cientficas o de la
prensa escrita (hemeroteca).
3. Directorios
Un ejemplo de directorios son las guas telefnicas en formato electrnico, donde aparece informacin de los usuarios de una red telefnica
determinada. En el caso de Venezuela, CANTV, adems de las pginas
amarillas de la misma telefnica, incluye en su directorio todos los comercios afiliados, con la finalidad de orientar a los consumidores y usuarios acerca de los servicios ofrecidos en el mbito nacional.
4. Bases de datos o bibliotecas de informacin qumica o biolgica
Almacenan diferentes tipos de informacin, proveniente de la qumica, las ciencias de la vida o ciencias mdicas.
5. Base de datos orientada a objetos
Es una base de datos que incorpora todos los conceptos importantes
del paradigma de objetos:
Encapsulacin, propiedad que permite ocultar la informacin al resto de los objetos, impidiendo as accesos incorrectos o conflictos.
Herencia, propiedad a travs de la cual los objetos heredan comportamientos dentro de una jerarqua de clases.
Polimorfismo, propiedad de una operacin mediante la cual puede
ser aplicada a distintos tipos de objetos.
En este tipo de bases de datos, los usuarios pueden definir operaciones
sobre los datos como parte de la definicin de la base de datos. Una operacin (llamada funcin) se especifica en dos partes. La interfaz (o signatura) de una operacin incluye el nombre de la operacin y los tipos de datos de sus argumentos (o parmetros). La implementacin (o mtodo) de
la operacin se especifica separadamente y puede modificarse sin afectar
la interfaz. Los programas de aplicacin de los usuarios pueden operar
sobre los datos invocando dichas operaciones a travs de sus nombres y
argumentos, sea cual sea la forma en la que se han implementado. Esto
podra denominarse independencia entre programas y operaciones.
322
Semana 8
Base de datos
Para saber ms
Anmate a profundizar en el tema de esta semana, consultando las siguientes direcciones web:
[Link]
[Link]
[Link]
323
Semana 99
Semana
Entidad-relacin
Entidad-relacin
Empecemos!
Amigo y amiga participante, ya
arribamos a la semana 9, aprendiendo los temas bsicos de programacin, manejando lo que
son lenguajes de programacin
y su clasificacin, entre otros
aspectos importantes. Vamos
ahora a seguir echando las bases para aprender a programar,
conociendo qu es una entidad,
sus atributos y las relaciones que
se establecen entre entidades.
Esperamos de ti toda la disposicin, inters y participacin, para lograr la adquisicin de las competencias que sobre este tema se requieren.
Qu sabes de...?
Antes de entrar a estudiar los temas asignados para esta semana, reflexiona sobre los siguientes planteamientos: qu es para ti una entidad?, qu
son atributos? Explica la expresin Rafael, tiene 34 aos, pertenece al gnero
masculino y pesa 55 kgs. Debate con tus compaeros al respecto.
El reto es...
Indaga en tu CCA y haz una lista de ejemplos de las entidades que observas
all, abstractas o concretas y menciona los atributos de cada una de ellas.
Vamos al grano
324
Entidad-relacin
Semana 9
Modelo entidad-relacin
1. Se elabora el diagrama (o diagramas) entidad-relacin.
2. Se completa el modelo con listas de atributos y una descripcin de otras
restricciones que no se pueden reflejar en el diagrama.
El modelado de datos no acaba con el uso de esta tcnica. Son necesarias
otras tcnicas para lograr un modelo que puede implementarse directamente en una base de datos. Brevemente permite mostrar resultados entre otras
entidades pertenecientes a las existentes, de manera que se encuentre la normatividad de archivos que se almacenarn:
1. Transformacin de relaciones mltiples en binarias.
2. Normalizacin de una base de datos de relaciones (algunas relaciones
pueden transformarse en atributos y viceversa).
3. Conversin en tablas (en caso de utilizar una base de datos relacional).
Entidad
Representa una cosa u objeto del mundo real con existencia independiente, es decir, se diferencia unvocamente de otro objeto o cosa, incluso siendo
del mismo tipo o una misma entidad.
Veamos algunos ejemplos:
Una persona se diferencia de cualquier otra persona, incluso siendo gemelos.
Un automvil se diferencia de otro, aunque sean de la misma marca, el
mismo modelo, etc. Cada uno tendr sus atributos diferentes, por ejemplo, el nmero de chasis.
Una casa nunca es exactamente igual a otra; al menos en la direccin se
diferenciarn.
Una entidad puede ser un objeto con existencia fsica, como una persona,
un animal, una casa, etc. (entidades concretas); o un objeto con existencia
conceptual, no palpables, como un puesto de trabajo, una asignatura de clases, un nombre, etc. (entidades abstractas).
325
Semana 9
Entidad-relacin
Atributos
Los atributos son las caractersticas que definen o identifican a una entidad.
Como pueden ser muchas, el diseador slo utiliza o implementa las que considere ms relevantes.
En un conjunto de entidades del mismo tipo, cada una tiene valores especficos asignados para cada uno de sus atributos; de esta forma, es posible su
identificacin unvoca. Veamos un ejemplo:
A la coleccin de entidades participantes, con un conjunto de atributos en
comn (ID, nombre, edad, semestre), pertenecen las entidades:
(1, Sofa, 38 aos, 2)
(2, Josefa, 19 aos, 5)
(3, Carlos, 20 aos, 2)
...
Cada una de las entidades pertenecientes a este conjunto se diferencia de
las dems por el valor de sus atributos. Ntese que dos o ms entidades diferentes pueden tener los mismos valores para algunos de sus atributos, pero
nunca para todos.
En particular, los atributos identificativos son aquellos que permiten diferenciar a una instancia de la entidad de otra distinta. Por ejemplo, el atributo
identificativo que distingue a un participante de otro es su nmero de ID.
El ID una identificacin nica que puede
tener una persona dentro de un sistema.
Dependiendo del sistema, el ID sern nmeros, letras, nombre de la persona, nmero de documento, etc.
326
Entidad-relacin
Semana 9
Relacin
Describe cierta dependencia entre entidades o permite la asociacin de las mismas.
Por ejemplo, si tenemos dos entidades,
cliente y habitacin, podemos entender
la relacin entre ambas al tomar un caso
concreto (ocurrencia) de cada una de ellas.
Entonces podramos tener la ocurrencia habitacin 502, de la entidad habitacin y la ocurrencia Henry Johnson Mcfly Bogard, de la entidad cliente,
de donde es posible relacionar que la habitacin 502 se encuentra ocupada
por el husped de nombre Henry Johnson Mcfly Bogar.
O tambin, teniendo las entidades participantes e IRFA y las ocurrencias
Mara Uzctegui y semestre 11ero, se podra establecer la relacin Mara
Uzctegui estudia en el semestre 11ero del IRFA.
Conjunto de relaciones
Consiste en una coleccin o conjunto de relaciones de la misma naturaleza.
Por ejemplo: dados los conjuntos de entidades habitacin y husped, todas las relaciones de la forma habitacin-husped, permiten obtener la informacin de los huspedes y sus respectivas habitaciones.
La dependencia o asociacin entre los conjuntos de entidades, es llamada
participacin. En el ejemplo anterior, los conjuntos de entidades habitacin
y husped participan en el conjunto de relaciones habitacin-husped.
Se llama grado del conjunto de relaciones a la cantidad de conjuntos de
entidades participantes en la relacin.
No es necesario que te descerebres mucho
para identificar una entidad; con hacerte
algunas preguntas sobre el ente en cuestin es suficiente; por ejemplo, puedo tocarlo?, puedo verlo?, puedo sentirlo? Si
las respuestas son afirmativas, se trata de
entidades concretas (un libro, una persona,
un instrumento musical, etc). Pero existen
otras entidades abstractas, que no puedes
percibir por medio de tus sentidos, pero si
a travs del intelecto; por ejemplo, un rea
de conocimiento, una enfermedad, un sentimiento (amor, odio, etc.), entre otras.
327
Semana 9
Entidad-relacin
Para saber ms
Para conocer otros enfoques acerca del tema de esta semana, te invitamos a visitar las siguientes direcciones web:
[Link]
[Link]
[Link]
)
)
)
)
4. Escribe en las celdas o casillas vacas de la tabla 8 la relacin que se establece entre las entidades.
Tabla 8
Entidad /
ocurrencia
Participante /
Mara Pedraza
Orientador /
Simn Rodrguez
Hotel VENETUR /
habitacin 112
Cliente /
Manuel Ramrez
IRFA /
CCA San Jos obrero
Relacin
Entidad / ocurrencia
Semestre / 11er semestre
rea / Sociedad y Cultura
Husped / Carlos Madariaga
Comida / Pabelln con baranda
Estado Mrida / Mrida
5. Realiza la actividad interactiva de clasificacin que encontrars en el disco multimedia en la semana respectiva.
328
Entidad-relacin
Semana 9
329
Semana
Semana10
10
Modelo entidad-relacin
Modelo entidad-relacin
Empecemos!
Bienvenidos a la semana 10! Ya
conocemos lo que es una entidad,
sus atributos y las relaciones entre
entidades. Con estos temas todava frescos en tu mente, estudiars
ahora el modelaje o diagramacin
de las relaciones entre entidades.
Concntrate! Estos son temas
abstractos que requieren de tu
atencin para comprenderlos.
Qu sabes de...?
Reflexiona sobre las siguientes cuestiones: qu es una entidad?, existe
alguna relacin entre entidad y objetos de la vida real?, es posible graficar
las diferentes relaciones que se dan en la cotidianidad entre objetos? Propn
algunos ejemplos.
El reto es...
Haz una lista de entidades que interactan en el CCA. Construye y representa relaciones entre ellas, apoyndote en lo que ya sabes sobre el tema.
Tambin puedes investigar en textos impresos o en internet.
Vamos al grano
Ya tenemos claros algunos conceptos relacionados al modelo E-R; ahora vamos a representarlo grficamente. Cabe destacar que, para todo proceso de
modelado, siempre hay que tener claros los conceptos, para tener el saber necesario y fundamentar nuestro modelo al momento de presentarlo a terceros.
330
Formalmente, los diagramas E-R son un lenguaje grfico para describir conceptos. Informalmente, son simples dibujos o grficos que describen informacin que trata un sistema de informacin y el software que lo automatiza.
Semana 10
Modelo entidad-relacin
CI
USUARIOS
Apellidos
Cdigo
Nombres
Titulo
Prestar
Telfono
Editorial
LIBROS
ISBN
Escribir
Edicin
AUTORES
Figura 8
ID autor
Nombre
331
Semana 10
Modelo entidad-relacin
332
Modelo entidad-relacin
Semana 10
Claves
Es un subconjunto del conjunto de atributos comunes en una coleccin de
entidades, que permite identificar unvocamente cada una de las entidades
pertenecientes a dicha coleccin. Asimismo, permite distinguir entre s las relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades, existen los siguientes tipos de claves:
1. Superclave: es un subconjunto de atributos que permite distinguir unvocamente cada una de las entidades de un conjunto de entidades. Si
se aade un atributo al anterior subconjunto, el resultado seguir siendo una superclave. Por ejemplo, si tenemos un conjunto empleados, el
nmero de cdula, nmero de seguro social y Registro de Informacin
Fiscal (RIF) del subconjunto de atributos identidad es una superclave,
ya que no hay dos personas con la misma identidad.
2. Clave candidata: dada una superclave, si sta deja de serlo, quitando
nicamente uno de los atributos que la componen, entonces sta es
una clave candidata.
3. Clave primaria: es una clave candidata, elegida por el diseador de la
base de datos, para identificar unvocamente las entidades en un conjunto de entidades.
333
Semana 10
Modelo entidad-relacin
Los valores de los atributos de una clave, no pueden ser todos iguales para
dos o ms instancias.
Para poder distinguir unvocamente las relaciones en un conjunto de relaciones R, se deben considerar dos casos:
1. R NO tiene atributos asociados: en este caso, se usa como clave primaria
de R la unin de las claves primarias de todos los conjuntos de entidades
participantes.
2. R tiene atributos asociados: en este caso, se usa como clave primaria de
R la unin de los atributos asociados y las claves primarias de todos los
conjuntos de entidades participantes.
Si el conjunto de relaciones R, sobre el que se pretende determinar la clave primaria, est compuesto de relaciones binarias, con los conjuntos de
entidades participantes A y B, se consideran los siguientes casos, segn sus
cardinalidades:
1. R es de muchos a uno de A a B, entonces slo se toma la clave primaria
de A, como clave primaria de R.
2. R es de uno a muchos de A a B, entonces se toma slo la clave primaria
de B, como clave primaria de R.
3. R es de uno a uno de A a B, entonces se toma cualquiera de las dos claves primarias, como clave primaria de R.
4. R es de muchos a muchos de A a B, entonces se toma la unin de los
atributos que conforman las claves primarias de A y de B, como clave
primaria de R.
Para saber ms
Investiga otros tipos de restricciones que se aplican en las bases de datos, visitando las siguientes direcciones web:
[Link]
[Link]
Modelo entidad-relacin
Semana 10
a) Facilitador(a) - reas
b) Participante - semestre
c) Trabajador(a) - puesto de trabajo
d) Autobs - pasajero(a)
3. Realiza la sopa de letras que encontrars en el disco multimedia en la
semana respectiva.
335
Semana
Semana1111
Qu sabes de...?
Una de las principales herramientas de la informtica son las bases de datos;
por tal razn, es importante que tengas claros dos conceptos claves:
1. Sistematizacin de informacin: el ordenamiento y clasificacin bajo
determinados criterios, relaciones y categoras de todo tipo de datos.
Por ejemplo, la creacin de bases de datos.
2. Automatizacin de informacin: es un sistema donde se trasfieren tareas de produccin, realizadas habitualmente por operadores humanos,
a un conjunto de elementos tecnolgicos. Por ejemplo, un proceso de
inscripcin va web.
Discute con tus compaeros del CCA estos dos conceptos y analicen entre
todos en qu situaciones relacionadas con la vida diaria se pueden aplicar
(seleccionen por lo menos 4 situaciones).
Repasa lo visto durante la semana anterior,
para aplicarlo esta semana.
336
Semana 11
El reto es...
Considerando el anlisis de los dos conceptos anteriores y la relacin con
situaciones cotidianas comunes, te invitamos a poner en prctica tus saberes.
Has visto un programa comercial de facturacin? Pues eso es una base de
datos. Y te gustara disear tu propio programa de facturacin, adaptado a
tus necesidades e ir mejorndolo, segn te vaya haciendo falta, sin necesidad
de invertir grandes cantidades de dinero en costosos programas comerciales?
Pues eso es Access.
Esto es slo un ejemplo de lo que puedes hacer. El reto es detectar alguna situacin problemtica y sistematizarla, a travs de la construccin de una base
de datos sencilla, utilizando Microsoft Access del paquete de aplicaciones que
vienen en Office.
Toda organizacin, independientemente
de su tamao y naturaleza, necesita tener
un control de sus datos. Microsoft Access
es una aplicacin para manejo de bases
de datos que facilita su uso, sin requerir
de un conocimiento especializado de programacin; sin embargo, hoy da existen
en el mercado otras tantas aplicaciones o
programas que permiten hacerlo. Escoger
la indicada depende del uso, dominio y necesidades especficas.
Vamos al grano
Microsoft Access es una de las aplicaciones que vienen incluidas en la suite
ofimtica Microsoft Office en su versin profesional. Y es una de esas aplicaciones que, por desconocimiento, la mayora de las veces no abrimos pero,
realmente qu es, para qu sirve y qu podemos hacer con Microsoft Access?
Access es una base de datos, que ejemplificamos de la siguiente forma:
Las cientos de recetas de cocina que tenemos en casa podemos guardarlas en una base de datos y, con un par de clic, buscar la que necesitemos.
El seguimiento de averas de nuestros vehculos se pueden guardar
en una base de datos, para poder analizar rpido los costes de las mismas, la rentabilidad del vehculo, etc.
337
Semana 11
Herramientas de Access
1. Tablas: son el objeto principal de una base de datos, por cuanto almacenan los datos de un asunto en particular y se componen de registros y
campos. Un registro se denomina normalmente fila o instancia. Un campo contiene datos acerca de un aspecto de la tabla, el cual se denomina
columna o atributo.
2. Consultas: se utilizan para visualizar, modificar y analizar datos de formas diferentes. Permiten dar respuesta a las preguntas que se pueden
plantear acerca de los datos almacenados. Existen varios tipos: consultas de seleccin, de parmetros, referencias cruzadas, de accin y SQL.
3. Formularios: se utilizan para introducir, modificar, consultar y borrar registros de una tabla. Es la forma idnea de introducir y editar datos.
Figura 9
338
Semana 11
Figura 10
4. Informes: se usan para visualizar, formatear y resumir datos; pueden
ofrecer detalles sobre registro individuales, resmenes de varios registros o ambos; tambin pueden crear etiquetas para correo o afines.
Figura 11
5. Macro: es una herramienta que permite automatizar tareas frecuentes;
se puede utilizar en formularios, informes y controles. Una macro consta
de acciones, las cuales, en su mayora, requieren de argumentos.
6. Mdulos: es una coleccin de declaraciones, instrucciones y procedimientos escritos en el lenguaje VBA (Visual Basic Application); permiten
agregar funcionalidad a la base de datos y son utilizados por formula-
339
Semana 11
rios, informes, entre otros. Pueden ser mdulos de clase o mdulos estndar.
Figura 12
Para saber ms
Observa varios videos que explican, paso a paso, cmo construir una
base de datos:
[Link]
[Link]
[Link]
Como sabes, existen software propietarios por los que hay que pagar
cierta cantidad de dinero para su descarga; entre ellos, Access. Y otros,
por los que no desembolsas nada para su utilizacin. Te invitamos a buscar en internet algn software libre que te permita construir una base
de datos.
340
CI
Nombre
Apellido
Direccin
Sexo
Tipo de dato
Argumento
Semana 11
Estado civil
Fecha de nacimiento
Correo electrnico
Nota 1
Nota 2
2. Responde las siguientes preguntas con tus propias palabras:
a) Qu es un registro?
b) Cul es la diferencia entre un formulario y un informe?
c) Para qu sirven las consultas?
d) Para qu usaras una base de datos?
3. Divirtete con las actividades interactivas (sopa de letras y completacin) que encontrars en el disco multimedia.
341
Semana
Semana12
12
Qu sabes de...?
Para tener una mejor comprensin del tema de esta semana, debemos tener claro: qu es un dato?, qu son las estructuras de datos?, cules son los
tipos de estructura de datos?
El reto es...
El reto que debes enfrentar esta semana con los dems compaeros y compaeras, es trabajar con la base de datos natural que realizaron en la semana
8. Deben escoger un campo clave y ordenar los datos en forma ascendente o
descendente.
Vamos al grano
342
No.
1
2
3
4
5
6
C.I.
19.479.467
19.861.309
20.180.532
20.315.621
20.729.531
23.428.400
APELIDOS Y NOMBRES
I CORTE
SOLORZANO A. ZULEIKA J. 02 0,2 10
RAMOS G. WUENDY J.
0
GALLARDO ANTHONY
20 2 20
DIAZ M. MARYORY A.
0
TORREALBA G. ANDRES J. 10 1 10
LOPEZ D. MARIA DE LOS S.
0
Aprobados
2
3
Porcentaje de Aprobados 33,33
50,00
Porcentje de Reprobados 66,67
50,00
Semana 12
Existen varios mtodos para ordenar las diferentes estructuras de datos bsicas. En general, dichos mtodos no son utilizados con frecuencia; en algunos
casos, slo una vez. Hay mtodos muy simples de implementar, muy tiles en
los casos dnde el nmero de elementos a ordenar no es grande (por ejemplo, menos de 500 elementos). Asimismo, hay mtodos sofisticados, ms difciles de implementar, pero ms eficientes en cuanto a tiempo de ejecucin.
Los mtodos sencillos, por lo general, requieren de aproximadamente n x n
pasos para ordenar n elementos.
Ordenar significa reagrupar o reorganizar
un conjunto de datos u objetos en una secuencia especfica. Ordenar un grupo de
datos significa mover los datos o sus referencias para que queden en una secuencia
tal que represente un orden, el cual puede
ser numrico, alfabtico o, incluso, alfanumrico, ascendente o descendente.
Tipos de ordenamiento
1. Ascendente (menor a mayor) o
2. Descendente (mayor a menor).
A su vez, los mtodos de ordenacin se clasifican en dos categoras:
1. Ordenacin interna (de arreglos) y
2. Ordenacin externa (de archivos).
La ordenacin interna o de arreglos, recibe este nombre ya que los elementos o componentes del arreglo se encuentran en la memoria principal de la
computadora.
Tipos de ordenamiento
1. Burbuja: es el ms simple y consiste en comparar dos elementos adyacentes, para determinar si se realiza un intercambio entre los mismos;
esto en caso de que el primero sea mayor que el segundo (forma ascendente) o en caso de que el primero sea menor que el segundo (forma
descendente).
a) Se debe generar un ciclo que inicie desde uno hasta el nmero de
elementos del arreglo.
b) Se debe generar un segundo ciclo dentro del anterior, que inicie
desde cero hasta el nmero de elementos del arreglo, menos dos.
343
Semana 12
c) Dentro del segundo ciclo debe existir una comparacin que determine el tipo de ordenamiento (ascendente o descendente) entre
el primer elemento (posicin generado por el segundo ciclo) y el
segundo elemento (el que le sigue); si la respuesta a la condicin es
verdadera, se realiza un intercambio entre los dos elementos.
d) Para realizar el intercambio, se genera un almacenamiento temporal, el cual guarda el dato del primer elemento, el segundo elemento toma el lugar del primero y, en el lugar del segundo, se coloca lo
que contiene el almacenamiento temporal.
Una vez que los ciclos terminan, la estructura debe quedar ordenada de
forma ascendente o descendente, pero este procedimiento es considerado
como el peor de los casos ya que, si el nmero de elementos de la estructura
es de 100, se tienen que realizar 9900 comparaciones antes de terminar la
ejecucin del mtodo.
QuickSort
Es una tcnica basada en otra conocida con el nombre divide y vencers,
que permite ordenar una cantidad de elementos en un tiempo proporcional
a n2 en el peor de los casos, o a n log n en el mejor de los casos. El algoritmo
original es recursivo, como la tcnica en la que se basa.
La descripcin del algoritmo para el mtodo de ordenamiento QuickSort es
la siguiente:
1. Se debe elegir uno de los elementos del arreglo, al que llamaremos pivote.
2. Se deben acomodar los elementos del arreglo a cada lado del pivote, de
manera que, del lado izquierdo queden todos los menores al pivote y
del lado derecho los mayores al pivote; considera que en este momento
el pivote ocupa exactamente el lugar que le corresponder en el arreglo
ordenado.
3. Colocado el pivote en su lugar, el arreglo queda separado en dos subarreglos, uno formado por los elementos del lado izquierdo del pivote y,
otro, por los elementos del lado derecho del pivote.
4. Se debe repetir este proceso de forma recursiva para cada subarreglo
mientras stos contengan ms de un elemento. Una vez terminado este
proceso, todos los elementos estarn ordenados.
Para elegir un pivote, se puede aplicar cualquiera de las siguientes opciones:
1. El pivote ser el primer elemento del arreglo.
344
Semana 12
ShellSort
Este mtodo de ordenacin es una versin mejorada del mtodo por insercin directa, que se utiliza cuando el nmero de elementos es grande. Este
mtodo recibe su nombre gracias a su creador Donald L. Shell y tambin se
conoce con el nombre insercin con incrementos decrecientes.
ShellSort compara elementos separados por un espacio de varias posiciones.
Esto permite que un elemento haga pasos ms grandes hacia la posicin que
debe ocupar. Los pasos mltiples sobre los elementos se hacen con tamaos
de espacio cada vez ms pequeos y, el ltimo paso del mtodo, es un simple ordenamiento por insercin directa pero, para entonces, los elementos de
arreglo ya casi estn ordenados.
Para saber ms
Para profundizar en el tema sobre almacenamiento y ordenamiento de
datos, te recomendamos visitar las siguientes direcciones web:
[Link]
[Link]
[Link]
Semana
Semana13
13
Pginas web
Pginas web
Empecemos!
Bienvenidos a una nueva sesin, llena de aprendizajes! En
semanas anteriores estudiamos
lo que son bases de datos, estructuras de datos y mtodos de ordenamientos, todo lo cual es necesario para llegar a comprender
lo que son las pginas web.
Qu sabes de...?
Qu es una pgina web?, qu conoces al respecto?, sabes crear una pgina web?
El reto es...
Esta semana, junto con tus compaeros, crea manualmente una pgina
web, tomando en cuenta los siguientes criterios: qu elementos deseas que
tenga? de qu quieres que trate? Todo esto para tener una idea del anlisis
que se debe realizar, previo a la creacin de una pgina web.
Vamos al grano
Una pgina web se define como un documento electrnico, el cual contiene informacin textual, visual y/o sonora, que se encuentra alojado en un
servidor al que se puede acceder mediante el uso de navegadores. Cada pgina forma parte de una coleccin de otras pginas, dando lugar a lo que se
denomina sitio web, el cual se encuentra identificado bajo el nombre de un
dominio, tema que ser tratado en la semana 14 con mayor profundidad.
La creacin y desarrollo de una pgina web se realiza bajo un lenguaje de
programacin (HTML, PHP, ASP, JSP o RUBY), capaz de ser interpretado por los
navegadores.
346
Al inicio de la era de internet accesible, en los aos 90, era necesario el conocimiento de algn lenguaje de programacin para el desarrollo de una web,
por lo que resultaba ser una tarea exclusiva de personas con altos conoci-
Semana 13
Pginas web
[Link]
Servidores
Una vez que hemos creado y desarrollado nuestras pginas web, es necesario alojarlas en un servidor, el cual se puede definir como un ordenador conectado constantemente a internet, cuyo objetivo es poder disponer de la
pgina web a cualquier hora del da. Para acceder al servidor, es necesario el
uso de programas denominados clientes FTP (File Transfer Protocol) o protocolos de transferencia de archivos, los cuales conectan el ordenador personal,
donde se ha desarrollado la pgina, con el servidor donde se alojar; entre
otros, se tiene: Filezilla, FileFTP y Cute FTP.
Navegadores
Una vez alojadas las pginas web, estas son accesibles mediante el uso de
navegadores, los cuales permiten visualizar correctamente la informacin
alojada y desarrollada. Los ms conocidos y utilizados son: Chrome, Mozilla,
Internet Explorer y Safari.
347
Semana 13
Pginas web
348
Estas web fueron el primer tipo que apareci durante el desarrollo y expansin de internet. Su creacin y desarrollo es relativamente fcil, al disponer de
programas estilo editores de texto, que permiten programarlas sin tener conocimiento ninguno sobre HTML, lo cual es una de las grandes ventajas que presentan este tipo de pginas. Por otro lado, cada vez que se necesite modificar
Semana 13
Pginas web
349
[Link]
Semana 13
Pginas web
Para saber ms
Profundiza en el tema de esta semana, visitando las siguientes direcciones web:
[Link]
[Link]
[Link]
350
Semana 13
Pginas web
Semana
14
Construccin de una pgina web/blog
Empecemos!
Felicitaciones! Hoy, con mucha
satisfaccin, hacemos un reconocimiento a tu dedicacin, disciplina y constancia. Sabemos que no
ha sido fcil, por eso aplaudimos
que hayas llegado hasta aqu.
Esta semana trae grandes sorpresas, termina un ciclo y comienza
otro nuevo. De ti depende hasta
dnde llegar. El tema de hoy, aunque es el cierre del semestre, te abrir un mundo de posibilidades, al poner en
tus manos una forma de generar ingresos a travs de los saberes adquiridos.
Qu sabes de...?
Repasemos: pgina web y sitio web son lo mismo?, en qu se parecen o
en qu se diferencian?
El reto es...
Esta es una semana de retos, as que, cerremos con broche de oro! En este
tema encontrars mucha terminologa nueva y, en muchos casos, en ingls,
por lo que te recomendamos generar un glosario de trminos y acudir de manera regular a la investigacin con los recursos que cuentes, pues de eso depende que puedas abordar el reto y cumplirlo con xito.
Debes hacer una mapa sobre lo que te gustara que tuviera tu sitio web y
precisar sobre qu tema lo desarrollars. Asimismo, debes definir cuntas pginas web contendr o si, para empezar, lo estructurars con una sola pgina,
que bien pudiera ser un blog.
351
Semana 14
Vamos al grano
Cada sitio web tiene una pgina de inicio (en ingls, Home Page), que es el
primer documento a la vista del usuario cuando entra en el sitio web, poniendo el nombre del dominio de ese sitio en un navegador. Cada sitio pertenece
y es gestionado y por un individuo, una compaa o una organizacin y, normalmente, cada sitio tiene varios documentos (pginas web).
Ahora bien, desglosemos su construccin en siete (7) pasos:
1. Para crear nuestra pgina o sitio web, debemos elegir un proveedor de
alojamiento donde lo almacenaremos. Existen multitud de empresas
dedicadas al alojamiento web, que nos brindarn numerosas ofertas;
incluso, encontraremos empresas que nos darn alojamiento gratuito.
2. A la hora de elegir el alojamiento que vamos a contratar o usar, debemos
tener en cuenta los siguientes factores: espacio web, accesibilidad, tasa
de transferencia, as como la reputacin y las condiciones de servicio
del proveedor. Al respecto, los foros son un buen lugar para encontrar
ms informacin sobre la relacin calidad-precio de los diferentes ISP de
alojamiento.
3. Una vez tengamos seleccionado el alojamiento, debemos pensar el
nombre del dominio que utilizaremos para acceder a nuestro dominio
(Ejemplo: [Link]). Es probable que el mismo proveedor que nos ha ofertado el alojamiento nos permita registrar dominios.
4. Cuando ya tenemos nuestro proveedor de dominio y alojamiento, empezamos a crear la pgina web; para ello, nos ayudaremos de un editor
web de los muchos que existen en internet. Hay editores para crear pginas web gratuitas como Fresh HTML, Basic HTML, Netscape Composer, y
programas ms completos como Dreamweaver, Homesite y Frontpage.
352
Semana 14
353
Semana 14
Para saber ms
Para saber ms acerca de los blog y cmo crearlos, te recomendamos
visitar las siguientes direcciones web:
[Link] [Link] [Link]
Para crear tu pgina web, anmate a revisar estos enlaces:
[Link]
[Link]
[Link]
[Link]
[Link]
De acuerdo con lo visto durante este semestre, elabora un blog o una pgina web. Recuerda que puedes hacerlo en forma cooperativa.
Referencias
7mo
355
Referencias
Lenguajes de programacin. Consultado el 3 de abril de 2012, en [Link]
ve/0ht
Lenguajes de programacin. Consultado el 3 de abril de 2012, en [Link]
ve/0hu
Los Sistemas operativos. Consultado el 23 de marzo de 20012, en [Link]
be/NvsdOCawaSQ
Mantenimiento de software. Consultado el 10 de abril de 2012, en [Link]
be/K6ZkjqlYc8A
Polticas de respaldo de informacin. Consultado el 10 de abril de 2012, en
[Link]
Respaldo de informacin. Consultado el 05 de abril de 2012, en [Link]
ve/0hq
Sistema operativo CANAIMA. Consultado el 25 de marzo de 2012, en [Link]
Software de aplicacin. Consultado el 25 de marzo de 2012, en [Link]
ve/0hr
Software libre o software propietario: cul elegir? Consultado el 25 de marzo
de 2012, en [Link]
Software libre vs Software propietario. Consultado el 25 de marzo de 2012, en
[Link]
Software libre vs software propietario. Consultado el 25 de marzo de 2012, en
[Link]
Tanenbaum, Andrew S. (1997). Sistemas Operativos: Diseo e implementacin.
Editorial Prentice-Hall Hispanoamrica, Mxico.
Unidad de informtica fundacin para el desarrollo de la ciencia y tecnologa de
Yaracuy (2009). Gua: Canaima distribucin GNU-Linux. Venezuela.
8vo
Referencias
Procesamiento digital de seales. Consultado el 19 de enero de 2013, en http://
[Link]/l6F
9no
10mo
357
Referencias
Configuracin de una red domstica bsica. Consultado en abril de 2014, en
[Link]
Configuracin de una red inalmbrica. Consultado en abril de 2014, en http://
[Link]/w8m
Configuracin informtica. Consultado en abril de 2014, en [Link]
Daz, Aureliano (2004). Gua prctica para manejar y reparar computadoras red.
Imprelibros Cargraphics S.A. Dcima edicin. Medelln, Colombia.
Grupo Ocano (2008). Biblioteca de Aprendizaje Interactivo Mundo Hispano.
Tomo 3. Barcelona, Espaa.
Introduccin a la programacin. Consultado en abril de 2014, en [Link]
w8t
Manual para configurar una red local en Windows 7. Consultado en abril de
2014, en [Link]
Mendoza, Roberth (2001). Manual de cableado estructurado. RMG Consultores.
Tchira, Venezuela.
Mendoza, Roberth (2001). Manual de mantenimiento de redes. RMG Consultores.
Tchira, Venezuela.
Quintero, Mara Alejandra (2005). Introduccin a la programacin. Universidad
de los Andes, Facultad de Ciencias Forestales. Mrida, Venezuela.
Redes: montar un servidor FTP en un equipo con Windows 7. Consultado en
abril de 2014, en [Link]
Rodrguez, Miguel ngel (1991). Metodologa de la programacin. McGraw-Hill.
Madrid, Espaa.
Seguridad de Redes LAN. Consultado en abril de 2014, en [Link]
Servidor FTP. Consultado en abril de 2014, en [Link]
Sistemas informticos multiusuario y en red - UNIDAD 6 C.P.R. Consultado en
abril de 2014, en [Link]
Vielma, Jess (2011). Gua reparacin de computadoras red informtica.
Universidad de los Andes. Facultad de Ciencias Forestales. Mrida, Venezuela.
11ero
358
Referencias
Algoritmos. Consultado en diciembre de 2014, en [Link]
Los algoritmos. Consultado en diciembre de 2014, en [Link]
Estructura de datos. Consultado en diciembre de 2014, en [Link]
Lenguajes de programacin. Consultado en diciembre de 2014, en [Link]
ve/0Eb
Lenguajes de programacin. Consultado en diciembre de 2014, en [Link]
ve/0Ec
Lenguajes de programacin. Consultado en diciembre de 2014, en [Link]
ve/0Ed
Base de datos. Consultado en diciembre de 2014, en [Link]
Base de datos. Consultado en diciembre de 2014, en [Link]
Pgina web. Consultado en diciembre de 2014, en [Link]
Tipo de datos. Consultado en diciembre de 2014, en [Link]
Mtodos de ordenamiento y almacenamiento. Consultado en diciembre de
2014, en [Link]
359
Notas