domingo, 28 de junio de 2015

Ejemplo 2. Nivel básico


DIA DE COMPRAS.

En un día de compras, karel sale de su casa (posición 1,1, orientado al este) y se dirige a obtener los siguientes productos: leche, pan, huevo y carne, cada uno en diferentes establecimientos, al final regresa a casa con todas sus compras.
 
En el mundo de Karel los establecimientos donde venden esos productos están en las siguientes posiciones:
Leche....... posición ( 5,  5)
Pan..........  posición ( 9,11)
Huevo.....  posición (16, 6)
Carne......  posición (  8, 3)
 
 
 
Estado inicial de Karel.
Tiene  0 zumbadores en la mochila

 
 
 
 
 
 
 
 
 
 
Estado final de Karel,
con 4 zumbadores en la posición inicial y la mochila en 0.





Programa:

iniciar-programa
   define-nueva-instruccion gira-derecha como inicio
        gira-izquierda;
        gira-izquierda;
        gira-izquierda;
    fin;
    inicia-ejecucion
        avanza;
        avanza;
        avanza;
        avanza;
        gira-izquierda;
        avanza;
        avanza;
        avanza;
        avanza;
        coge-zumbador;
        gira-derecha;
        avanza;
        avanza;
        avanza;
        gira-derecha;
        avanza;
        avanza;
        coge-zumbador;
        gira-izquierda;
        avanza;
        gira-izquierda;
        repetir 8 veces inicio
           avanza;
        fin;
        coge-zumbador;
        gira-derecha;
        repetir 7 veces inicio
           avanza;
        fin;
        gira-derecha;
        avanza;
        avanza;
        avanza;
        avanza;
        avanza;
        coge-zumbador;
        avanza;
        avanza;
        avanza;
        avanza;
        avanza;
        gira-derecha;
        repetir 15 veces inicio
           avanza;
        fin;
        deja-zumbador;
        deja-zumbador;
        deja-zumbador;
        deja-zumbador;
        apagate;
    termina-ejecucion
finalizar-programa

Ejemplo 1. Nivel Básico.

LA HERMANA DE KAREL.


Karel se encuentra en su casa (posición 1,1, viendo hacia el este), se ha dado cuenta que es hora de ir a recoger a su hermana a su escuela (posición 8,3) su misión es ir por ella y regresar juntos a casa.
 
  Estado inicial.     Karel tiene 0 zumbadores
 
 
 
 
 
 
 
 
Estado final, Karel tiene 1 zumbador y regresa a la posición inicial
Programa:
 
Iniciar-programa
   inicia-ejecución
     avanza;
     avanza;
     avanza;
     avanza;
     avanza;
     avanza;
     avanza;
     gira-izquierda;
     avanza;
     avanza;
     coge-zumbador;
     gira-izquierda;
     avanza;
     avanza;
     avanza;
     avanza;
     avanza;
     avanza;
     avanza;
     gira-izquierda;
     avanza;
     avanza;
    apagate;
  termina-ejecución
finalizar-programa
 
 
 

Tema 4.4. Instrucciones Nuevas

Para hacer las cosas más fáciles y ahorrar trabajo, nosotros podemos crear nuestras propias instrucciones usando instrucciones existentes, u otras que ya habiamos creado.
 
Karel puede girar solo hacia la izquierda y hay veces que esmuy tardado escribir tres veces gira-izquierda para que karel gire hacia la derecha.   Entonces, nosotros podemos crear una instrucción que se llama gira-derecha :
 
define-nueva-instruccion gira-derecha como inicio
        gira-izquierda;
        gira-izquierda;
        gira-izquierda;
fin;
 
Esto tiene que ser escrito entre las líneas iniciar-programa e inicia-ejecución al inicio del código.  Entonces dentro del código tú escribes la instrucción gira-derecha y karel gira tres veces hacia la izquierda automáticamente.  Las instrucciones nuevas pueden llamarse como tú quieras.
 
 
 

Tema 4.3. Repeticiones

Hay veces que karel necesita repetir una serie de instrucciones y decisiones muchas veces.   Digamos que Karel tiene que avanzar 50 veces para llegar a un lugar.   Lo que tendríamos que hacer seria escribir 50 veces la palabra avanza. Para ahorrar trabajo, espacio y tiempo, podemos hacer repeticiones o ciclos, como se les llama comunmente.

Hay dos tipos de repeticiones, repeticiones fijas y repeticiones con condición.


4.3.1. Repeticiones fijas.

En el programa de karel, puedes dar un número exacto de veces que quieres repetir una instruccion o serie de instrucciones. Ejemplo:

repetir 50 veces inicio
      avanza; 
fin;

Así se ahorra trabajo y esfuerzo. 


4.3.2.  Repeticiones con condición

En ciertas ocasiones Karel tiene que hacer una instrucción pero no sabes cuándo hacer que se pare.  Por ejemplo. Karel tiene que avanzar hasta que encuentra una pared.  Tu sabes que Karel tiene que avanzar, pero no sabes que tan lejos. Esto se logra así:

mientras frente-libre hacer inicio
      avanza;


4.3.3. Repeticiones anidadas

 En estas se pueden combinar las decisiones con las repeticiones.  Ejemplo:

mientras frente-libre hacer inicio
     avanza;
     si junto-a-zumbador entonces inicio
           mientras junto-a-zumbador entonces inicio
                   coge-zumbador;
           fin;
     fin;
fin;

Tema 4.2. Toma de Decisiones

Muchas veces, Karel necesita tomar una decisión cuando está en una situación dificil, como cuando está enfrente de una pared y necesita saber si avanza o si no.

Las condiciones que karel puede detectar para poder hacer su decisión son:

1) frente-libre
2) frente-bloqueado
3) izquierda-libre
4) izquierda-bloqueada
5) derecha-libre
6) derecha-bloqueada
7) junto-a-zumbador
8) no-junto-a-zumbador
9) algun-zumbador-en-la-mochila
10) ningun-zumbador-en-la-mochila
11) orientado-al-norte
12) orientado-al-sur
13) orientado-al-este
14) orientado-al-oeste
15) no-orientado-al-norte
16) no-orientado-al-sur
17) no-orientado-al-este
18) no-orientado-al-oeste


4.2.1.  Decisiones simples

Karel hay veces que puede hacer una serie de instrucciones si se cumple una condición previamente establecida.  La condición puede ser cualquiera de las mencionadas anteriormente.  Por ejemplo:
 
si frente-libre entonces inicio
     avanza;
fin;
 
Se muestra una pequeña decisión que va a hacer Karel.  Si en el frente de él no hay pared, entonces avanza; si hay pared entonces no hace nada
 



 

Aquí hay una pared y por lo mismo no avanza
ni nada.
 
 
 
 
 
 
Aquí el frente está libre (no hay pared) por consiguiente si avanzó una posición.
 
 
 
 
 4.2.2. Decisiones con otro caso.

En este tipo de decisiones Karel puede hacer una serie de instrucciones si se cumple la condición y si no se cumple, Karel puede hacer otra serie deinstrucciones. Ejemplo:

si frente-libre entonces inicio
                      avanza;
              fin
              sino inicio
                      gira-izquierda;
fin;

En este caso, si el frente de Karel está libre entonces avanza.  Si está bloqueado entonces gira hacia la izquierda. Unicamente el fin de la última linea lleva punto y coma.


4.2.3. Decisiones anidadas

Después de haber tomado ya una decisión, dentro dela misma, karel puede tomar múltiples decisiones.  A esto se le conoce como decisiones anidadas.
Las decisiones anidadas tienen las mismas características que las decisiones anteriores y tienen estructuras similares a la siguiente:

si frente-libre entonces inicio
               avanza;
               si junto-a-zumbador entonces inicio
                         coge-zumbador;
               fin;
fin;

Dentro de cada decisión pueden existir las instrucciones que sean necesarias, así como las decisiones con otro caso.  Si es necesario, muchas decisiones pueden existir dentro de otras.
 

lunes, 15 de junio de 2015

Tema 4.1. Introducción a Karel

Karel es un lenguaje sencillo y divertido que ayuda al aprendizaje de algoritmos y al desarrollo de la lógica. 
 
Karel es un robot virtual que aparece como una pequeña flecha azul que viaja a través de su mundo. El mundo de karel es un cuadrado lleno de calles y avenidas que él puede recorrer, a menos que ésta esté bloqueada.
 
Karel tiene una mochila donde guarda zumbadores.  Los zumbadores son unos objetos que pueden ser simulados como canicas.   Estos le ayudan a karel a realizar sus tareas ya que pueden ser utilizados para muchas cosas como contar, marcar lugares especiales o caminos importantes, etc.
 
Para que karel pueda hacer su trabajo, tú como programador tienes que escribir un código con órdenes o comandos que Karel obedece.   El código tiene que estar correcto, ya que, lamentablemente, Karel es un robot que necesita tu ayuda para poder funcionar bien.
 
 

4.1.1.. El mundo de Karel




Este mundo está formado por 100 avenidas y 100 calles. 
Las avenidas son verticales y las calles son horizontales.
Se pueden agregar y quitar paredes en cualquier parte del mundo, así como zumbadores, excepto en los límites de este.
Karel solo puede girar hacia la izquierda 90° y va a estar orientado hacia alguno de los  puntos cardinales: norte, sur, este y oeste.


4.1.2. El programa de Karel



El programa Karel es una aplicación muy sencilla que solo tiene cuatro secciones o ventanillas.

1) MUNDO

    Es el lugar en el cual Karel realiza sus tareas y puede ser diseñado como tu quieras mientras la tarea de karel pueda ser realizada ahí.


2) AYUDA

    Esta pestaña contiene un pequeño tutorial acerca del uso de karel y viene la sintaxis correcta de las instrucciones.

3) PROGRAMA

   Aquí es donde tu escribes tu código de instrucciones que karel va  a realizar.  Es la parte más importante del programa porque es lo que hace que karel funcione.   Se pueden elegir dos tipos de código: Pascal y Java. 

   Dentro de esta pestaña aparece la pantalla con 5 botones:



4) EJECUTAR

    En esta sección puedes ver a Karel realizar las instrucciones que habías escrito,  Tu código tiene que estar compilado para que funcione. 


Zumbadores en la mochila = Indica cuantos zumbadores está cargando karel en ese momento.

Retardo de ejecución = Indica qué tan rápido avanza karel. En manoe sea el número de retardo, es mayor la velocidad de karel.


4.1.3. Instrucciones Básicas

Los programas de Karel cuentan con dos simples secciones:

1) iniciar-programa...  finalizar-programa
    Indica donde irá todo el código fuente del programa; donde inicia y donde termina.

2) inicia-ejecución... finaliza-ejecución
    Esto indica cual es el área del programa que se va a ejecutar.

Además de estas dos secciones, el ´código debe contar con la linea apagate para finalizar la ejecución por completo.

 
Karel cuenta con cinco instrucciones básicas para hacer todas sus tareas.  Las instrucciones son las siguientes:
 
1) avanza
2) gira-izquierda
3) coge-zumbador
4) deja-zumbador
5) apagate
 


 

BLOQUE 4. KAREL

TEMA 4.1 . Introducción a karel
4.1.1.  Mundo de Karel
4.1.2. Programa de karel
4.1.3. Instrucciones básicas

TEMA 4.2.  Toma de Decisiones
4.2.1. Decisiones simples
4.2.2. Decisiones con otro caso
4.2.3. Decisiones anidadas

TEMA 4.3.  Repeticiones
4.3.1. Repeticiones fijas
4.3.2. Repeticiones con condición

TEMA 4.4. Instrucciones nuevas

miércoles, 13 de mayo de 2015

PROBLEMAS (Introducción a lenguajes algorítmicos)

INSTRUCCIONES:

A continuación expongo los problemas que nos servirán como introducción al tema de Lenguajes algorítmicos.  Se indica el número del equipo con el problema asignado y deberán realizar lo siguiente:
Cada equipo de 4 integrantes deberán encontrar la solución a su problema mediante Algoritmos, realizarán una interpretación con Diagrama de flujo y otra con Pseudocódigo. 
Lo expondrán.
Podrán realizar sus algoritmos en papel bond, o en computadora... (opcional)
 
 
NOTA:
 
A los equipos de los grupos B y C, ya les fueron asignados sus problemas, por lo que no es conveniente que se guien de esta lista ya que en algunos casos varía el orden..
 
 
P R O B L E M A S
 
EQUIPO 1:
Cómo comprar una entrada o boleto en la taquilla para un concierto de Rock.  Considerar que puede haber gente  o no en la fila, que encuentres boleto o no, la forma de pago y dependiendo de esto, si te alcanza.para comprarlo.
 
EQUIPO 2:
Cómo entrar a ver una película al cine y disfrutarla (Cinépolis). Considerar que ya tienes el boleto y que estas en la fila para entrar a la sala de proyección que te corresponda,  que puede o no haber intermedio, que puedes o no querer golosinas o bien ir al baño.
 
EQUIPO 3:
Cómo preparar una taza de té de manzanilla y servirlo.  Considerar que puedes utilizar manzanilla natural o de sobre., que puedes o no querer endulzante y que si lo endulzas qué tipo de endulzante utilizarías.
 
EQUIPO 4:
Cómo buscar el número de un amigo en el directorio telefónico (TELMEX).  Considerar que el lugar donde vive puede o no estar e´n la guía, que puede o no estar su nombre y que puede o no estar su número.  Recuerda que la búsqueda siempre se hace en orden alfabético.
 
EQUIPO 5:
Cómo quitar y cambiar un foco que está en un techo de 4 mts. de altura y que no enciende.  Considerar que el foco puede o no estar fundido y que necesitas escalera para alcanzarlo, y que ya tienes otro foco de reemplazo que puede ocuparse o no.
 
EQUIPO 6:
Cómo pagar una compra de despensa en la Caja de un Supermercado.  Considerar que ya estas en la fila de la Caja formado con el carro lleno de productos, y cuál podría ser la forma de pago, y si te alcanza o no.
 
EQUIPO 7:
Cómo realizar una llamada telefónica desde un teléfono celular Touch.  Considerar que puede tener batería o no, que puede haber señal o no, que puede ser telefono con línea o de crédito, en ambos casos analizar si hay saldo, además de que el número se encuentre en la agenda del teléfono o no.
 
EQUIPO 8:
Cómo buscar un tema de la materia de informática que se deja de tarea en internet.  Considerar que el buscador utilizado es Google, que puede o no aparecer el tema buscado, que puedes seleccionar varias páginas de las sugeridas, y si la información que aparece en ellas es la correcta.
 
EQUIPO 9:
Cómo publicar una entrada en un blog sobre el tema "Google y sus servicios".  Considerar que en el texto puedes o no utilizar las herramientas que se encuentran en la parte superior de la ventana de texto.
 
EQUIPO 10:
Cómo copiar en Word, los apuntes publicados en el blog de informática2.  Considerar que se imprimen, recortan y pegan de manera ordenada en su libreta de apuntes. 
 
 
 
 
 

Tema 3.4. Medios de expresión de un algoritmo

Se han creado lenguajes para representar los algoritmos y construir así una solución correcta sin omitir pasos. Sin referirse a un lenguaje de programación específico.
 
Tipos de Algoritmos:
 
1) Gráficos:      Diagramas de flujo
2) No gráficos: Pseudocódigo



3.4.1. LENGUAJES GRAFICOS

Representa los algoritmos de forma gráfica para hacer más fácil la representación de cada proceso que debe llevar a cabo una computadora para resolver problemas.
 
Diagramas de flujo:
 
Son esquemas usados para representar gráficamente un proceso.
Los símbolos utilizados en informática para representar diagramas de flujo son:
 


domingo, 3 de mayo de 2015

Tema 3.3. Metodología de solución de problemas

Con los algoritmos podemos resolver todo tipo de problemas, aunque su mayor uso es en la construcción de software donde interviene la tecnología.
 
Los pasos a seguir para la solución de un problema son:
  1. Identificación del problema
  2. Planteamiento de alternativas de solución
  3. Elección de una alternativa de solución
  4. Desarrollo de la solución
  5. Aplicación de la solución
  6. Evaluación de la solución
 
3.3.1. Identificación del problema
 
Debemos analizar qué problema se quiere resolver a través de medios informáticos y cómo queremos darle solución.
 
Las consideraciones a seguir para identificar un problema son:
  1. Identificar las variables
  2.  
    Son condiciones que se dan en cualquier problema y se dan a través de casos específicos
     
  3. Delimitar la solución
  4.  
    Definir qué parte del problema se pretende resolver a través de la tecnología de información y comunicación.
     
  5. Considerar los recursos disponibles
  6. Ver con qué recursos se cuenta para solucionar los problemas que se presenten.
     
3.3.2. Planteamiento de alternativas de solución.
 
 
Para cada problema existe más de una forma para resolverlo.  Las alternativas de solución deben tener las siguientes características:
  1. Efectos futuros
  2. Reversibilidad
  3. Impacto
  4. Calidad
  5. Periodicidad
 
3.3.3. Elección de una alternativa de solución
 
 
Los aspectos a tomar en cuenta al elegir una alternativa son: 
 
* Determinar la necesidad de una solución
* Identificar los criterios de decisión
* Asignar peso a los criterios
* Desarrollar todas las alternativas
* Evaluar las alternativas
* Seleccionar la mejor alternativa
 
 
 
 
 
3.3.4.  Desarrollo de la solución
 
Se trata de planear cómo resolver el problema creando un algoritmo de solulción
 
 
Existen varias técnicas que sirven para desarrollar algoritmos:
 
 
1) Método de fuerza bruta
 
     Aquí se toma una solución directa y poco reflexionada.  No es malo, pero dado que apenas si se ha analizado el problema, es probable que no se utilicen propiedades que nos permitan obtener una solución más eficiente.
 
 
2) Método voraz
 
En este se estudia un conjunto de opciones, de las cuales se va procediendo cada una,  paso a paso para elegir la mejor elección de entre las posibles soluciones.
 
Se recomienda utilizar en problemas de Optimización o planeación de programas de computadora.
 
 
3) Método Divide y vencerás
 
Este método permite descomponer un problema en subproblemas. resolviendo independientemente éstos para luego combinar sus soluciones y obtener la solución del problema general.
 
Se recomienda utilizar en problemas de multiplicación de matrices, ordenación de vectores, etc.
 
 
4) Método de vuelta atrás
 
Es de los más utilizados en el diseño de algoritmos, ya que se puede emplear en la resolución de diversos problemas.
 
Su construcción se asemeja a la construcción de un árbol, donde el nodo principal representa el problema en sí y cada rama es un posible camino de solución.   Es parecido al método anterior, ya que el problema debe descomponerse en problemas más pequeños que estén sujetos a condiciones particulares.
 
 
 
3.3.5. Aplicación de la solución
 
Se le llama también implementación

Resultado de imagen para Aplicación de la solucion

El problema no está realmente resuelto hasta que: 1. Se haya puesto en práctica la solución. 2. Se haya observado y controlado su implementación, para ver si es necesario realizar cambios en la solución original.  Nunca se sabrá su una idea funciona hasta que se compruebe. Por ello es recomendable seguir el siguiente procedimiento:  • Comunicar la solución a los implicados. Informarles sobre las tareas que se realizarán y cuáles acciones tendrán que llevar a cabo. • Es muy importante utilizar la retroalimentación continua para poder reorientar las acciones de forma oportuna con lo que salga mal.  • Actualización del plan.
 
3.3.6. Evaluación de la solución
 

Al aplicar una solución puede originar problemas no previstos y en Informática hay que preveerlos.  (Prueba o mantenimiento).  

El ciclo se puede repetir, hasta que se resuelva satisfactoriamente.  .
 
En esta etapa se utiliza la Prueba de Escritorio, que no es más que seguir el algoritmo paso a paso y tabular qué es lo que sucede con las variables y anotar sus cambios.
 
 
 
 

Tema 3.2. Terminología empleada en algoritmos

3.2.1. Problema

Es la situación cuya respuesta desconocida o solución debe obtenerse a través de métodos científicos

Características que debe tener un problema para encontrar su solución:

1) Debe formularse claramente
2) Debe poder observarse en la realidad
3) Debe expresar una relación entre dos o más variables


3.2.2.  Algoritmo

Conjunto ordenado de operaciones que permite hallar la solución a un problema.
 



Tema 3.1. Introducción

El desarrollo de algoritmos es un tema fundamental en el diseño de programas o en soluciones de problemas.
 
En este bloque se pretende mostrar cómo a partir de unas especificaciones de un problema del mundo real, se puede diseñar una solución para dicho problema (algoritmo)  que posteriormente puede ser codificada en un lenguaje de programación.
 
Con este objetivo se describirán las propiedades básicas de cualquier algoritmo, su forma de construcción y diversas formas de representarlos.   Además se mostrará las distintas fases que se deben seguir para buscar una solución a un problema del mundo real.
 
En este bloque no se aborda ningún lenguaje de programación particular, sino que se muestra cómo diseñar soluciones a problemas cotidianos y otros relacionados a la informática que sean fáciles de implementar en cualquier lenguaje de programación.
 

BLOQUE 3. ALGORITMOS

3.1. Introducción
3.2. Terminología empleada en algoritmos
3.3. Metodología de solución de problemas
3.4. Medios de expresión de un algoritmo
3.5. Tipos de algoritmos según su función
3.6. Técnicas de diseño de algoritmos

viernes, 1 de mayo de 2015

Tema 2.7. Tipos de campos

Uno de los datos esenciales que hay que rellenar al definir los campos, es el tipo de campo.
 
El tipo de campo define el contenido que podrá almacenar el campo en el futuro.. Por ejemplo:
Si es un campo Nombre, lo normal es que almacene caracteres de texto,
pero un campo FechaNacimiento, almacenará una fecha y no un conjunto de caracteres.
 
2.7.1. Tipos de Campo y para qué estan pensados
 
1) Texto:
     Se usa para incluir textos no muy extensos, como los nombres, apellidos, direcciones, etcétera.
 
2) Numérico:
    Se usa para cantidades numéricas, que no sean monedas, y que se usen para realizar operaciones.
 
3) Fecha/Hora:  
    Se usa para las fechas y horas.
 
4) Moneda:
    Se emplea para las cantidades de moneda.
 
5) Memo:                           
    Se usa para guardar textos de los que no se conozca la longitud.
 
6) Autonumérico:  
    Se usa para los campos clave, principalmente.
 
7) Sí/No:  
    Se usa para los campos que puedan tener dos posibles valores (Sí/No, lo más normal).
 
8) Objetos OLE:
    Se usa para incluir imágenes y objetos de otras apliciones.
 
9) Hipervínculo:
    Se emplea para incluir direcciones Web o archivos de una red.
 
10)Datos adjuntos:
     Se usa para incluir cualquier tipo de archivo admitido.
 
11)Multivalor:
     Almacena más de un valor en un campo.
 
 
Normalmente, tomar la decisión sobre el tipo de campo que se quiere usar es muy sencilla, pero hay otras ocasiones en las que hay que pensarlo un poco. Por ejemplo, un código postal español consta de cinco dígitos, pero no se van a realizar operaciones con ellos (por ejemplo, no tiene sentido restar o sumar códigos postales).  Por este motivo, se emplea un tipo de campo Texto y no Número.
 
Nota
Además, en Access los ceros delante de las cifras no se muestran. Por eso, si escribes 06005 en un campo de tipo Número, aparecerá sólo 6005, que no es un código postal correcto.


Consejo
A medida que realices cambios en la tabla, es aconsejable guardarla de vez en cuando haciendo clic en el botón Guardar de la barra de herramientas.



2.7.2. Los campos clave


El último tema esencial que debes conocer para definir tablas son los campos clave.
Un campo clave es aquél que permite identificar un registro de una tabla frente al resto. Si bien es posible crear tablas que no tengan campos clave, en bases de datos relacionales este tipo de campo se vuelve imprescindible. Por eso, siempre que crees una tabla, piensa cuál puede ser su campo clave.
 
Normalmente, hay dos opciones:
 
1) Hay un campo de la tabla que se sabe a ciencia cierta que no se va a repetir en dos registros de la misma. Por ejemplo, en una tabla de empresas proveedoras, puede haber un campo llamado CIF que contenga el Código de Identificación Fiscal de la empre­sa. Como este código es único para cada empresa, este campo nos sirve como campo clave.
 
2) No hay ningún campo que estemos seguros de que no se vaya a repetir. Por ejemplo, en nuestra tabla Alumnos, no hay ningún campo que no se pueda repetir para dos alumnos distintos. En estos casos, lo mejor es crear un campo adicional del tipo Autonumérico.
 
 
Los siguientes pasos muestran cómo definir un campo como campo clave:
 
1. Access crea por defecto en cada tabla en blanco un campo clave (la primera fila que saltamos en la Vista Diseño).
 
2. Si quieres definirlo tú, sitúa el punto de inserción sobre el campo que elijas como clave y haz clic sobre él. (Puedes seleccionar el campo completo haciendo clic en el botón situado a la izquierda del nombre del campo).

3. Haz clic en el comando Clave principal de la ficha Herramientasde tabla. Obser­va que a la izquierda del nombre del campo aparece un icono en forma de llave indicando que es el campo clave.
Este tipo de campo va a ser un identificador de alumno que para evitar repeticiones será un campo Autonumérico.
 

Nota
La clave puede estar formada por más de un campo, pero no es lo normal. Por ejemplo, se puede usar como clave el teléfono y el nombre. Si quieres crear una clave formada por varios campos, selecciona el primer campo haciendo clic en el botón situado a su izquierda, pulsa la tecla Ctrl  y, sin soltarla, haz clic en el botón de selección de todos los campos que formarán la clave. Después, haz clic en el botón Clave principal de la cinta de opciones.

Tema 2.6 Tipos de objetos

Las bases de datos en Access se componen de cuatro elementos fundamentales: las tablas, los formularios, las consultas y los reportes. .
 
 

2.6.1. Las tablas

 
Access registra y organiza los datos en tablas similares a las que elaboramos en Excel, por lo que son el corazón o núcleo de la información que existe en una base de datos; sin ellas sería imposible que funcionen correctamente.
Como ya lo habíamos mencionado, las tablas están compuestas por filas y columnas.
Una fila es una seguidilla horizontal de celdas y una columna es una seguidilla vertical.

En Access, a cada columna se le llama campo. Los campos son una manera de organizar los datos por el tipo de información que contienen.

Por ejemplo, en el campo "Nombre" siempre habrán celdas con nombres de personas, en el campo "correo electrónico" las celdas tendrán direcciones de e-mail, etc.
 
Columna de una tabla de Access 2010.
Tabla de access 2010 que muestra una fila o registro.
 
Las filas en Access son denominadas registros. Cada registro corresponde a la información completa de un elemento.

De este modo, cada celda en una fila es parte de la información del mismo registro. Por ejemplo, si tenemos la tabla "clientes" cada fila tendrá los datos de un cliente específico: su nombre, correo electrónico, dirección, teléfono, etc (cada uno en una celda diferente).
Verás que cada registro aparece enumerado en el campo ID. Este corresponde al número de identificación de cada registro y no podrá cambiarse. Para eliminar un número ID, es necesario eliminar todo el registro.





Tabla de Access 2010 que muestra dónde se ubican los números de identificación.


Aunque las tablas almacenan todos tus datos, únicamente los tres objetos restantes de Access te permiten trabajar con ellos. Los formularios, las consultas y los reportes son la forma de interactuar con la base de datos.

2.6.2. Los Formularios

Los formularios se emplean para ingresar, modificar y revisar la información de algún registro. Muy probablemente hayas tenido que llenar un formulario alguna vez, como cuando aplicas para un trabajo o cuando te registras en el médico... ah y también cuando abres una cuenta de correo electrónico en internet.
La razón por la que los formularios se usan de manera tan frecuente es porque son una forma sencilla de guiar a las personas en registrar su información correctamente.

Cuando ingresas información en Access usando un formulario, los datos van exactamente al lugar de la base de datos que quieres, en una o más tablas si así lo necesitas.
Con Access puedes diseñar tus propios formularios que te facilitarán la manera en la que ingresas la información a la base de datos.

Puedes incluir campos de una o varias tablas y hasta configurar algunas restricciones para asegurarte de que los datos sean ingresados en el formato correcto.
Frmulario de Access 2010.
 
 

2.6.3. Las Consultas

Son una manera de recopilar la información de una o varias tablas. Es como hacer una pregunta específica a la base de datos. Sin embargo, no se usan para preguntas simples como: cuál es la dirección de determinado cliente; las consultas resuelven preguntas complejas como: cuáles son los correos electrónicos de los clientes que han comprado tortas en el último mes.
Por lo tanto, una consulta bien diseñada es capaz de mostrarte información que no podrías encontrar fácilmente en una tabla y que te evita buscar tabla por tabla.

Al crear una consulta, es necesario definir los criterios específcos de búsqueda para que aparezca exactamente la información que necesitas en el momento.
Consulta de Access 2010.
 
 
 

2.6.4. Los Reportes

 
Son muy úliles porque permiten presentar tus datos en un formato que es fácil de leer. Incluso, puedes personalizar la apariencia de los reportes para que sean visualmente agradables y así imprimirlos para una junta o reunión. En Access puedes crear reportes de tablas o consultas.
Reporte de Access 2010.



Tema 2.5. Interfaz de una Base de datos

Las interfaces para bases de datos reúnen los recursos necesarios para la entrega eficaz de información y permiten poner estos recursos a trabajar en un entorno dinámico y libre de sintáxis. 
 
Ofrecen un alto grado de control sobre la seguridad de los datos y el acceso a la base de datos se puede otorgar a muchos o pocos usuarios, según las necesidades.
 
En este contenido claro está nos referimos a la aplicación ACCESS ya que es la base de datos más utilizada en la actualidad por su facilidad de acceso.
 
VIDEO:



Cuando estás aprendiendo a usar un nuevo programa, es importante que te familiarices con su ventana y las herramientas en ella.   Access no es diferente; comprender su entorno hará que aprendamos a usarlo más fácilmente.
 
Si ya estás familiarizado con algún programa de Office 2010, verás que no hay muchas diferencias en la forma como están organizadas las herramientas. Sin embargo, resaltaremos las características específicas que diferencian a Access

 
Ventana de Access 2010 completa.
  1. La barra de herramientas de acceso rápido
  2. La Cinta de Opciones
  3. El panel de navegación
  4. Panel de objeto
  5. Barra de navegación de registros
  6. Barra de búsqueda



Tema 2.4. Modelos de Bases de Datos

Un modelo de base de datos es una forma en que se determina la estructura lógica de una Base de Datos y de manera fundamental determina el modo de almacenar, organizar y manipular los datos.

Los modelos más conocidos y utilizados son:

1) Modelo de datos jerárquico

Este modelo utiliza árboles para la representación lógica de los datos. Este árbol esta compuesto de unos elementos llamados nodos. El nivel más alto del árbol se denomina raíz. Cada nodo representa un registro con sus correspondientes campos.

La representación gráfica de este modelo se realiza mediante la creación de un árbol invertido, los diferentes niveles quedan unidos mediante relaciones. Ejemplo:




2) Modelo de datos en red

En este modelo las entidades se representan como nodos y sus relaciones son las líneas que los unen. En esta estructura cualquier componente puede relacionarse con cualquier otro.
Ejemplo:




3) Modelo de datos relacional

Este modelo es el más utilizado actualmente ya que utiliza tablas bidimensionales para la representación lógica de los datos y sus relaciones.

Algunas de sus principales caracteristicas son:
  • Puede ser entendido y usado por cualquier usuario.
  • Permite ampliar el esquema conceptual sin modificar las aplicaciones de gestión.
  • Los usuarios no necesitan saber donde se encuentran los datos físicamente.

El elemento principal de este modelo es la relación que se representa mediante una tabla

domingo, 26 de abril de 2015

Tema 2.3. Tipos de Bases de Datos

2.3.1. Tipos de BD según la organización lógica de los datos

En un principio existían tres tipos de bases de datos según su estructura interna (la manera de organizar la información):
1. Bases de datos jerárquicas
2. Bases de datos en red
3. Bases de datos relacionales.
Más recientes son las :
4. Bases de datos orientadas a objetos y las
5. Bases de datos multidimensionales.
 
1. Las bases de datos jerárquicas
En una base de datos jerárquica se organizan los datos utilizando estructuras arborescentes (en árbol).
Un ÁRBOL es una estructura jerárquica en la que los elementos se suelen denominar NODOS y existen dependencias entre los nodos.
La dependencia es de 1:M del tipo padre/hijo. Un hijo no puede tener más de un padre, pero un padre varios hijos.
 
BBDD Jerárquicas

Un ejemplo de base de datos jerárquica es el sistema IMS.


2. Las bases de datos en red

También en desuso, en una base de datos en red se utiliza la estructura de grafo/red, como en el caso anterior los distintos objetos están relacionados entre sí mediante relaciones del tipo 1:M pero en este caso un objeto puede estar relacionado como hijo con varios elementos que serán sus padres. Un este caso las relaciones que se crean se denominan SET y el equivalente al padre se denomina PROPIETARIO (OWNER) y el equivalente al hijo se denomina MIEMBRO (MEMBER).

También existen modelos para realizar el diseño de datos orientado a bases de datos en red.
En red podríamos representar lo mismo que la estructura anterior y además lo siguiente:

BBDD Red

Los sistemas jerárquico y en red constituyen la primera generación de los SGBD. Pero estos sistemas presentan algunos inconvenientes:
  • Es necesario escribir complejos programas de aplicación para responder a cualquier tipo de consulta de datos, por simple que ésta sea.
  • La independencia de datos es mínima.
  • No incluyen controles de integridad.
Por lo que pronto fueron sustituidos por los sistemas relacionales.


3. Las bases de datos relacionales

Esta es la estructura que se ha impuesto para aplicaciones de gestión, consiste en organizar los datos en forma de tablas, las relaciones entre los objetos se consiguen incluyendo en la tabla del hijo, la clave del objeto padre.


4. Las bases de datos orientadas a objetos

Es un modelo más reciente, trata de almacenar en la base de datos los objetos completos (estado y comportamiento). La información que contienen se organiza en atributos y el comportamiento en operaciones.


5. Las bases de datos mutidimensionales

En una base de datos multidimensional los datos se almacenan en tablas de múltiples dimensiones en vez de tablas bidimensionales como las del modelo relacional. Se utilizan para grandes volúmenes de información.



2.3.2. Tipos de BD según su ubicación

1) Bases de datos locales.

En modo local tenemos la base de datos y el usuario ubicados en el mismo ordenador.
Un ejemplo de base de datos que funciona en modo local es Microsoft Access, MS Access es una base de datos fácil de manejar por usuarios poco expertos que funciona bien en modo local y mientras no tenga que albergar grandes cantidades de información.

Ventajas
Desventajas
Economía
Es la más barata.
Monousuario
En un instante determinado sólo la puede utilizar una persona.
Simplicidad
No se necesita llevar controles de accesos concurrentes, de transmisión de datos, etc.
Capacidad
Suele tener una capacidad de almacenamiento limitado.


2. Bases de datos centralizadas

En los sistemas centralizados tenemos la base de datos completa en un mismo servidor, y todos los usuarios acceden a ese servidor. Que la base de datos esté en un mismo servidor no implica que esté en un solo archivo o en el mismo disco, puede estar repartida.

Sistema centralizado

En modo Cliente/Servidor, la base de datos se encuentra en un ordenador (el Servidor) y los usuarios acceden simultáneamente a esa base de datos a través de la red (sea una red local o Internet) desde sus ordenadores a través de un programa Cliente.

A nivel de empresas es el sistema que más se utiliza en la actualidad.

Ventajas
Desventajas
Multiusuario
Permite que varios usuarios accedan a la vez a la misma información.
Complejidad
Tiene que incluir y gestionar un sistema de usuario y subesquemas.
No redundancia
Al estar todos los datos en el mismo servidor, la información no se duplica y es más facil evitar fallos debidos a redundancias.
Seguridad
Se tienen que realizar controles para garantizar la seguridad de los datos, tanto a nivel interno como a nivel de comunicaciones.


3. Bases de datos distribuidas

Tenemos la información repartida en distintas localizaciones unidas todas ellas mediante red y un sistema gestor de bases de datos distribuidas.
Las distintas localizaciones suelen ser distintas geográficamente.
 
Base de datos distribuida

Ventajas
Desventajas
Rendimiento
Una clara ventaja es que es posible ubicar los datos en lugares donde se necesitan con más frecuencia, aunque también se permita a usuarios no locales acceder a los datos según sus necesidades. Esto hace que la información se recupere de forma más rápida y ágil en las ubicaciones locales. Además los sistemas trabajan en paralelo, lo cual permite balancear la carga en los servidores.
Complejidad en el diseño de datos
Además de las dificultades que generalmente se encuentran al diseñar una base de datos, el diseño de una base de datos distribuida debe considerar la fragmentación, replicación y ubicación de los fragmentos en sitios específicos, se tiene que trabajar tomando en cuenta su naturaleza distribuida, por lo cual no podemos pensar en hacer joins que afecten a tablas de varios sistemas, etc.
Disponibilidad
En caso de que falle la base de datos de alguna localidad, el sistema no se colapsa, puede seguir funcionando excluyendo los datos de la localidad que haya fallado.
Complejidad técnica
Se debe asegurar que la base de datos sea transparente, se debe lidiar con varios sistemas diferentes que pueden presentar dificultades únicas.
Autonomía local
Un departamento puede controlar los datos que le pertenecen.
Economía en el mantenimiento
La complejidad y la infraestructura necesaria implica que se necesitará mayor mano de obra.
Economía en la implantación
Es más barato crear una red de muchas máquinas pequeñas, que tener una sola máquina muy poderosa.
Seguridad
Se debe trabajar en la seguridad de la infraestructura así como cada uno de los sistemas.
Modularidad
Se pueden modificar, agregar o quitar sistemas de la base de datos distribuida sin afectar a los demás sistemas (módulos).
Integridad
Se vuelve difícil mantener la integridad, aplicar las reglas de integridad a través de la red puede ser muy caro en términos de transmisión de datos.
Falta de experiencia
Las bases de datos distribuidas son un campo relativamente nuevo y poco común por lo cual no existe mucho personal con experiencia o conocimientos adecuados.
Carencia de estándares
Aún no existen herramientas o metodologías que ayuden a los usuarios a convertir un DBMS centralizado en un DBMS distribuido

Tema 2.2. Ventajas y Desventajas de las Bases de Datos

VENTAJAS:
  1. Independencia de los datos y los programas y procesos.  Permite modificar los datos.
  2. Menor redundancia, es decir, no es necesario la repetición de datos.
  3. La base de datos facilita al usuario obtener más información debido a la facilidad que provee esta estructura para proveer datos a los usuarios.
  4. Integridad de los datos, lo que genera mayor dificultad de perder la información o de realizar incoherencias con los datos.
  5. Mayor seguridad en los datos. Al permitir restringir el acceso a los usuarios, cada tipo de éstos tendrá la posibilidad de acceder a ciertos elementos.
  6. Coherencia de los resultados. Al recolectar y almacenarse la información una sola vez, en los procedimientos se utilizan los mismos datos, razón por la que los resultados son coherentes.
  7. Datos más documentados. Gracias a los metadatos que permiten detallar la información de la base dedatos.
  8. Acceso simultaneo a los datos, facilitanto controlar el acceso de usuarios de manera concurrente.
  9. Balance de Requerimientos conflictivos.  Para que la Base de datos trabaje apropiadamente, necesita de una persona o grupo que se encargue de su funcionamiento.
  10. Reducción del espacio de almacenamiento, debido a una mejor estructuración de los datos.
  11. Acceso a los datos más eficiente.  La organización de los datos produce un resultado más óptimo en rendimiento.  Igualmente, en el caso de empresas, usuarios de distintas oficinas pueden compartir datos si están autorizados.
  12. Flexibilidad y rapidez al obtener datos.  El usuario puede obtener información de la Base de Datos con escribir breves oraciones. 
  13. Aumenta la productividad de los programadores, debido a que los programadores no se tienen que preocupar por la organización de los datos ni de su validación, se pueden concentrar en resolver otros problemas inmediatos.
  14.  
 
DESVENTAJAS
 
  1. Requiere personal calificado, debido a la dificultad del manejo de este tipo de sistemas.   Esto requiere que los programadores y los analistas deben tomar cursos que los adiestren para poder comprender las capacidades y limitacions de las bases de datos.
  2. Instalación costosa, ya que el control y administración de bases de datos requiere de un software y hardwar más costoso.
  3. Falta de rentabilidad a corto plazo, debido al costo de equipos y de personal, al igual del tiempo que tarda en estar operativa.
  4. Tamaño. El sistema de manejo de Base de Datos requiere de mucho espacio en disco duro y también requiere de mucha memoria principal (RAM) para poder correr adecuadamaente
  5.  
 

jueves, 23 de abril de 2015

Tema 2.1. Introducción a las Bases de Datos

Una Base de Datos es un programa que permite introducir y almacenar datos, ordenarlos y manipularlos.   Se organizan los datos de manera que se pueda obtener información no visible como totales, tendencias o relaciones de otro tipo.
 
Una Base de Datos, es un sitio donde tenemos datos relacionados, es decir un conjunto de datos que tienen relación entre si.,
Una biblioteca  debe tener listas de los libros que posee, y de los usuarios que tiene,
Una escuela debe tener listas de los alumnos, maestros y hasta de los tutores.
Una empresa debe tener listas de sus productos, de las ventas y de los empleados.
 
A este tipo de información se le llama DATOS.
 
Microsoft Access, es un programa para crear bases de datos y es el más utilizado en el mundo.
 
tutorial access

 
 
Las bases de datos tradicionales se organizan por campos, registros y se archivan de forma estructurada.   Su abreviatura sería BD.
 
 
2.1.1.  Campo
 

Es una información concreta, por ejemplo el campo NOMBRE sería donde pondríamos los nombres de las personas que queramos poner en nuestra base de datos.
Otro campo podría ser los apellidos, edad, etc.  Cada uno sería un campo diferente.
 
 
2.1.2.. Registro

Un registro sería todos los campos de una misma persona.  El registro de una persona está formado por todos los campos con sus datos (su nombre, apellidos, edad, etc.)
 
 
2.1.3. Archivo
 
Sería una colección de registros, es decir, podría ser la base de datos entera de personas que tengamos en nuestra base con todos sus campos personales.
 
Aquí tenemos un ejemplo gráfico para que lo entiendas mejor:


    campos y registros
Ahora que tenemos los conceptos previos claros... veamos en el siguiente video cómo se maneja la Base de Datos ACCESS de microsoft.





BLOQUE 2. BASES DE DATOS

2.1.  Introducción
2.2. Aplicaciones y ventajas
2.3. Tipos de Bases de datos
2.4. Modelos de bases de datos
2.5. Interfaz de una base de datos
2.6. Tipos de objetos
       2.6.1. Tablas
       2.6.2. Consultas
       2.6.3. Formularios
       2.6.4. Informes
       2.6.5. Páginas
       2.6.6. Módulos
2.7. Tipos de campos

Seguidores