domingo, 27 de octubre de 2013

2Q. Clase 3. ESTRUCTURAS CONDICIONALES DE DESICION SI

Las estructuras condicionales comparan una variable contra otro(s)valor (es), para que en base al resultado de esta comparación, se siga un curso de acción dentro del programa. Cabe mencionar que la comparación se puede hacer contra otra variable o contra una constante, según se necesite. Existen tres tipos básicos, las simples, las dobles y las múltiples. 


Simples: 

Las estructuras condicionales simples se les conoce como “Tomas de decisión”. Estas tomas de decisión tienen la siguiente forma: 


Pseudocódigo:Diagrama de flujo:

Dobles: 


Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles en función del cumplimiento o no de una determinada condición. Se representa de la siguiente forma: 


Pseudocódigo:Diagrama de flujo:


Donde: 

Si:Indica el comando de comparación 
Condición : Indica la condición a evaluar 
Entonces : Precede a las acciones a realizar cuando se cumple la condición 
Instrucción(es):Son las acciones a realizar cuando se cumple o no la condición 
si no :Precede a las acciones a realizar cuando no se cumple la condición 
Dependiendo de si la comparación es cierta o falsa, se pueden realizar una o más acciones. 

Múltiples: 

Las estructuras de comparación múltiples, son tomas de decisión especializadas que permiten comparar una variable contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La forma común es la siguiente: 


Pseudocódigo:Diagrama de flujo:

Ejemplo de condicionales de desicion:

Realizar un pseudocodigo en donde se pide la edad del usuario; si es mayor de edad debe aparecer un mensaje indicándolo. 





Pseudocódigo:Diagrama de flujo:


TALLER INDIVIDUAL

PROBLEMA:
SE PIDE INGRESAR LOS DATOS DE UN ALUMNO NOMBRE, APELLIDO, DIRECCION, CURSO, PARALELO Y TRES NOTAS/CALIFICACIONES DEL ALUMNO, LUEGO CALCULAR EL PROMEDIO DE LAS 3 NOTAS, PROCEDA A VERIFICAR SI EL PROMEDIO ES MAYOR O IGUAL A 7 PRESENTAR UN MENSAJE QUE INDIQUE "APROBO EL CURSO"; SI EL PROMEDIO ES IGUAL A 6 PRESENTAR UN MENSAJE “DEBE ASISTIR A CLASES DE ACOMPAÑAMIENTO”, CASO CONTRARIO SI LA NOTA ES MENOR A 6  PRESENTE UN MENSAJE QUE INDIQUE "REPROBO EL CURSO" Y PRESENTE LOS DATOS DEL ALUMNO POR PANTALLA.
Una vez terminado enviarlo al mail del profesor jorgetobarccc@gmail.com

domingo, 20 de octubre de 2013

2Q. CLASE 2. TECNICAS ELABORACION DE PSEUDOCODIGO.

El pseudocódigo (falso lenguaje) 
es una descripción de alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintácticas propias de lenguajes de programación, como asignaciones, ciclos y condicionales. Es utilizado para describir algoritmos en libros y publicaciones científicas, y como producto intermedio durante el desarrollo de un pseudocodigo.


El pseudocódigo está pensado para facilitar a las personas el entendimiento de un algoritmo, y por lo tanto puede omitir detalles irrelevantes que son necesarios en una implementación. 

Programadores diferentes suelen utilizar convenciones distintas, que pueden estar basadas en la sintaxis de lenguajes de programación concretos. Sin embargo, el pseudocódigo en general es comprensible sin necesidad de conocer o utilizar un entorno de programación específico, y es a la vez suficientemente estructurado para que su implementación se pueda hacer directamente a partir de él.

PROBLEMA:
Se requiere elaborar un programa/pseudocodigo que pida 2 numeros y realice las 4 operaciones mateticas y muestre el resultado de cada operacion.

Que datos de entrada requiere el ejercicio?
Que datos de salida presentara el ejercicio?
2 numeros
1 Resultados
Num1
Resul1
Num2


VARIABLE.
En programación, una variable está formada por un espacio en el sistema de almacenaje (memoria principal de un ordenador) y un nombre simbólico (unidentificador) que está asociado a dicho espacio. Ese espacio contiene una cantidad o información conocida o desconocida, es decir un valor. El nombre de la variable es la forma usual de referirse al valor almacenado

DATO.
Es un valor o referente que recibe el computador por diferentes medios, los datos representan la información que el programador manipula en la construcción de una solución o en el desarrollo de un algoritmo.

CONTENEDOR
=
CONTENIDO
VARIABLE
=
DATO
NUM1
=
23


ASIGNACION DE VALOR
Una asignación es cuando a una variable se le hace equivaler una expresión; le da un valor a la variable. Primero se evalúa o resuelve la expresión de la derecha, y después se le da el valor resultante a la asignación o expresión de la izquierda.

VARIABLE
ASIGNACION
VARIABLE
OPERADOR
VARIABLE
RESULTADO1
<------
NUM 1
+
NUM2

Tipo de dato informático 
es un atributo de una parte de los datos que indica al ordenador (y/o al programador) algo sobre 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. Tipos de datos comunes son: enteros, números de coma flotante (decimales), cadenas alfanuméricas, fechas, horas, colores, etc.


VARIABLE
=
DATO
TIPO DATO
INGRESE NUMERO:
NUM1
=
23
NUMERICO
INGRESE NOMBRE
NOMBRE
=
JORGE
TEXTO
INGRESE FECHA
FECHA
=
13/10/2013
FECHA

  • Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de izquierda a derecha.
  • Todo diagrama debe tener un Inicio y un Fin.


ESCRITURA Y REGLAS

(se deben usar variables para el almacenamiento de calquier valor)
 Var   numero1, numero2, resultado: numerica
  
(todo programa debe definir su inicio con la palabra INICIO)
 Inicio
 (el programa requiere de que lo alimenten de datos)
   Escribir "Introduce el primer numero"
   Leer numero1
   Escribir "Introduce el segundo numero"
   Leer numero2
   resultado<-numero1+numero2
   Escribir resultado
   resultado<-numero1-numero2
   Escribir resultado
   resultado<-numero1*numero2
   Escribir resultado
   resultado<-numero1/numero2
   Escribir resultado
 (todo programa debe definir su final con la palabra FIN)
 Fin

Si reemplazamos las variables por datos reales el comportamiento del pseudocodigo sera:

Inicio
 Escribir "Introduce el primer numero"
   Leer 23
   Escribir "Introduce el segundo numero"
   Leer 11
   resultado <--- 23 +  11
   Escribir 34
   resultado <--- 23 - 11
   Escribir 12
   resultado <---  23 * 11
   Escribir 253
   resultado  <----  23 / 11
   Escribir 2,09
Fin

ESTRUCTURAS DE DECISIÓN
 Estas permiten seleccionar la próxima sentencia a ejecutarse sobre la base de una desición (expresión lógica o variable lógica)

Los tipos de estructuras de desición que podemos encontrar son:
● Simples
● Dobles
● Múltiples

ESTRUCTURAS DE DECISION SIMPLE
La estructura de decisión más sencilla, es la llamada simple, Si-Entonces Su efecto es el de ejecutar una determinada acción cuando se cumpla una cierta condición y en caso contrario seguir el orden secuencial.

La selección Si-Entonces evalúa la condición y de acuerdo a los resultados:
Si es verdadero, ejecuta una o varias opciones
Si es falsa, entonces no hace nada y sigue la ejecución normal del programa


EJEMPLO:
   ● En Pseudocódigo

Si (condición) entonces               Si (A>B) entonces                    Si (hora <12) entonces
sentencias...                                Escribir ('El mayor es A')           Escribir ('buenos dias')
fin si                                             Fin si                                         Fin si


TALLER EN CLASE - INDIVIDUAL
  1. En una hoja de texto resuelva los siguientes ejercicios,en cada ejercicio especifique los datos de entrada, de sallida y las variables a usar. 
  • Escribir un Pseudocódigo de un programa que permita leer el nombre de la persona, la edad y peso de una persona y posteriormente presentarla por pantalla.
  • Escribir un Pseudocódigo que calcule el área de un triángulo recibiendo como entrada el valor de base y altura.
  • Escribir un Pseudocodigo que pida la el nombre de una persona, la edad y el sexo y dependiendo si la edad es mayor a 18 presente un mensaje que indique "SI PUEDE VOTAR".
  1. Una vez terminado envie los ejericicios al mail del profesor jorgetobarccc@gmail.com

domingo, 13 de octubre de 2013

2Q. CLASE 1. PRINCIPIOS BASICOS DE PROGRAMACION

PROGRAMACION.

La programación es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear programas que exhiban un comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal. Programar no involucra necesariamente otras tareas tales como el análisis y diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en el desarrollo de pequeñas aplicaciones.


TIPOS DE PROGRAMACION:
Se han propuesto diversas técnicas de programación cuyo objetivo es mejorar tanto el proceso de creación de software como su mantenimiento. Entre ellas, se pueden mencionar las siguientes:

ETAPAS DE LA PROGRAMACION.
  • PROGRAMA FUENTE: escritura del programa, programar.
  • COMPILADOR: proceso de verificacion de las reglas de programacion y su escritura de comandos.
  • ERROR DE SINTAXIS: proceso resultante de errores de la escritura del programa para su correccion.
  • CODIGO OBJETO: proceso de conversion del programa en la aplicacion ejecutable en el entorno del sistema operativo.


SOFTWARE.

Se conoce como software al equipamiento lógico o soporte lógico de un sistema informático, que comprende el conjunto de los componentes lógicos necesarios que hacen posible la realización de tareas específicas, en contraposición a los componentes físicos que son llamados hardware.

Son las aplicaciones informáticas; tales como el procesador de texto, que permite al usuario realizar todas las tareas concernientes a la edición de textos; el llamado software de sistema, tal como el sistema operativo, que básicamente permite al resto de los programas funcionar adecuadamente, facilitando también la interacción entre los componentes físicos y el resto de las aplicaciones, y proporcionando una interfaz con el usuario.


Suite de Aplicaciones :

consiste en múltiples aplicaciones reunidas en un solo paquete. Por lo general cuentan con funcionalidades, características e interfaz gráfica homogéneas y pueden ser capaces de interactuar entre ellas. Las aplicaciones para negocios por lo general vienen en Suites, ejemplo: Microsoft Office, OpenOffice.org e iWork las cuales reúnen un procesador de textos, una hoja de cálculo, creador de presentaciones, etc. Aunque no son las únicas, también hay suites para música y gráficos.




Software Empresarial 

está dirigido a satisfacer las necesidades en los procesos organizacionales y de flujo de datos, usualmente en un ambiente bastante grande y distribuido (Ejemplos: Sistemas Financieros, Manejo de las relaciones con los clientes, etc.). Mucho de este software está hecho a la medida.



Software de Infraestructura Empresarial proporciona la base para el Software Empresarial. Ejemplos incluyen: Bases de Datos, Servidores de Correo Electrónico y Seguridad de Redes.


Software para los “Trabajadores de la Información” 
está dirigido para satisfacer la necesidad de la gente de crear y manejar información. Ejemplos incluyen manejo de tiempo, manejo de recursos, herramientas colaborativas, analíticas y de documentación. Los Procesadores de Texto, Hojas de Cálculo, Clientes de Correo Electrónico, Sistema de Información Personal y Editores de Medios pueden ayudar en múltiples actividades del trabajador de la Información.

Software Educativo 
se relaciona al Software de Acceso a Contenidos pero adapta los contenidos para su uso por educadores o estudiantes. Por ejemplo, puede llevar acabo evaluaciones, registrar el progreso de avance en un material didáctico o incluir capacidades de colaboración.


Software de Simulación 
se utiliza para simular sistemas físicos o abstractos ya sea para investigación, entrenamiento o entretenimiento.


Software de Desarrollo de Medios 
está dirigido a las personas con la necesidad de crear medios impresos o electrónicos para que otra gente los consuma. Estos incluyen Softwares de Arte Gráfico, Publicación, Desarrollo de Multimedia, Editores de Páginas Web, Editores de Animación Digital, Composición de Audio y Video y muchos más


CICLO DEL DESARROLLO DEL SOFTWARE.

IDENTIFICACION DEL PROBLEMA Y OBJETIVOS.
Esta fase está dada por el enunciado del problema, el cual requiere una definición clara y precisa. Es importante que se conozca lo que se desea que realice la computadora; mientras esto no se conozca del todo no tiene mucho caso continuar con la siguiente etapa.

DETERMINACION DE REQUERIMIENTOS DE INFORMACION.
En esta fase se procede a obtener informacion detallada de cada proceso que requieren que ejecute el sistema.

ANALISIS DEL PROBLEMA.
Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir:
Los datos de entrada.
Cual es la información que se desea producir (salida)
Los métodos y fórmulas que se necesitan para procesar los datos.
Una recomendación muy practica es el que nos pongamos en el lugar de la computadora y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados.

DISEÑO DEL SOFTWARE
Las características de un buen algoritmo son:
Debe tener un punto particular de inicio.
Debe ser definido, no debe permitir dobles interpretaciones.
Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema.
Debe ser finito en tamaño y tiempo de ejecución.

DESARROLLO DEL SOFTWARE Y DOCUMENTACION.
La codificación/programacion es la operación de escribir la solución del problema (de acuerdo a la lógica del diagrama de flujo o pseudocódigo), en una serie de instrucciones detalladas, en un código reconocible por la computadora, la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel.

Es la guía o comunicación escrita es sus variadas formas, ya sea en enunciados, procedimientosdibujos o diagramas.
A menudo un programa escrito por una persona, es usado por otra. Por ello la documentación sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).
La documentación se divide en tres partes:
Documentación Interna
Documentación Externa
Manual del Usuario
  • Documentación Interna: Son los comentarios o mensaje que se añaden al código fuente para hacer mas claro el entendimiento de un proceso.
  • Documentación Externa: Se define en un documento escrito los siguientes puntos:
Descripción del Problema
Nombre del Autor
Algoritmo (diagrama de flujo o pseudocódigo)
Diccionario de Datos
Código Fuente (programa)
  • Manual del Usuario: Describe paso a paso la manera como funciona el programa, con el fin de que el usuario obtenga el resultado deseado.

PRUEBAS DEL SOFTWARE
Los errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a una solución sin errores se le llama depuración.
La prueba consiste en la captura de datos hasta que el programa no presente errores (los más comunes son los sintácticos y lógicos).

IMPLEMENTACION DEL SOFTWARE
etapa en la que se instala el software en su version final despues de correccion de errores.


PSEUDOCODIGO (o falso lenguaje

es una descripción informal de alto nivel de un algoritmo informático de programación, compacto e informal, que utiliza las convenciones estructurales de un lenguaje de programación verdadero, pero que está diseñado para la lectura humana en lugar de la lectura mediante máquina, y con independencia de cualquier otro lenguaje de programación. Normalmente, el pseudocódigo omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones de variables, código específico del sistema y algunas subrutinas

El lenguaje de programación se complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se utiliza pseudocódigo pues este es más fácil de entender para las personas que el código de lenguaje de programación convencional, ya que es una descripción eficiente y con un entorno independiente de los principios fundamentales de un algoritmo. 

PROBLEMA:
Se requiere elaborar un programa/pseudocodigo que pida 2 numeros y realice las 4 operaciones mateticas y muestre el resultado de cada operacion.

ESCRITURA Y REGLAS DE ESCRITURA DEL PSEUDOCODIGO
(se deben usar variables para el almacenamiento de calquier valor)

Var numero1, numero2, resultado: numerica

(todo programa debe definir su inicio con la palabra INICIO)

Inicio

(el programa requiere de que lo alimenten de datos)
   Escribir "Introduce el primer numero"
   Leer numero1

   Escribir "Introduce el segundo numero"
   Leer numero2
   resultado<-numero1+numero2

   Escribir resultado
   resultado<-numero1-numero2

   Escribir resultado
   resultado<-numero1*numero2

   Escribir resultado
   resultado<-numero1/numero2

   Escribir resultado

(todo programa debe definir su final con la palabra FIN)
Fin
PRUEBA DE ESCRITORIO.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Proceso ejercicio_2
    Escribir "Introduce el primer numero"
    Leer numero1
    Escribir "Introduce el segundo numero"
    Leer numero2
    //inicializamos la variable resultado a 0 (recomendable)
    resultado<-0
    //sumamos los numeros y escribimos su resultado
    resultado<-numero1+numero2
    Escribir resultado
    //restamos los numeros y escribimos su resultado
    resultado<-numero1-numero2
    Escribir resultado
    //multiplicamos los numeros y escribimos su resultado
    resultado<-numero1*numero2
    Escribir resultado
    //dividimos los numeros y escribimos su resultado
    resultado<-numero1/numero2
    Escribir resultado
FinProceso

EJERCICIOS PARA RESOLVER EN CLASE. 

(incluye 1 prueba de escritorio)

  1. Diseñar un pseudocodigo  que pida por teclado tres números e identifique cual es el mayor de los tres numeros.