jueves, 16 de marzo de 2017

Algoritmos: Pseudocodigos.


Ejemplos de Pseudocódigo

Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un rectángulo. Se debe introducir la base y la altura para poder realizar el cálculo..
Programa; área
Entorno: BASE, ALTURA, AREA son número enteros
Algoritmo:
            escribir “Introduzca la base y la altura”
            leer BASE, ALTURA
            calcular AREA = BASE * ALTURA
            escribir “El área del rectángulo es “AREA
Finprograma
Ejemplo: Realizar el pseudocódigo que permita al usuario introducir por teclado dos notas, calculando la suma y el producto de las notas.
Programa: SumaProducto
Entorno: NOTA1,NOTA2,SUMA,PRODUCTO son números enteros
Algoritmo:
escribir “Introduzca las notas”
leer NOTA1,NOTA2
calcular SUMA = NOTA1 + NOTA2
calcular PRODUCTO = NOTA1 * NOTA2
escribir “La suma de las dos notas es:” SUMA
escribir “El producto de las dos notas es :”PRODUCTO
Finprograma

Ejemplo: Realizar el pseudocódigo de un programa que permita saber si un número es mayor, menor o igual a cero.
    Programa: ComparaNúmeros
       Entorno: NUMERO es un número entero
Algoritmo:
Escribir “Introduzca un número “
leer NUMERO
SI NUMERO>0  ENTONCES
          escribir “El número introducido es positivo”
SI NO
          SI NUMERO<0 ENTONCES
                 escribir “El número introducido es negativo”
          SI NO
                 escribir “El número es cero”
          FINSI
FINSI
Finprograma


Supongamos un algoritmo que lea las coordenadas de tres puntos y los mueva tres puntos en la coordenada y escriba el resultado en algún dispositivo de salida:

ALGORITMO lee_tres_vertices
ENTRADA: las coordenadas (x,y) de tres puntos
SALIDA: las coordenadas (x,y) de los tres puntos movidos 3 puntos hacia la derecha.
VARIABLES: i:entera
x,y: real
INICIO
PARA i=1 HASTA 3 CON INCREMENTO +1
ESCRIBE "Abscisa del punto número ", i
LEER x
ESCRIBE "Ordenada del punto número ", i
LEER Y
ESCRIBE "El punto es (" x+3","y")"
FIN_PARA
FIN
 El programa equivalente a este algoritmo se muestra a continuación. Como podemos apreciar en un programa en Pascal es importantísimo no olvidar detalles de sintaxis. Por ejemplo cada sentencia termina en punto y coma. De cualquier forma es inmediato apreciar los simples cambios existentes.

program lee_tres_vertices;
var x,y:real;
i:integer;
begin
for i:=1 to 3 do
begin
write ('Abscisa del punto número ',i); readln(x);
write ('Ordenada del punto número ',i); readln(y);
writeln (' El punto es (',x+3,',',y,')');
end;
end;

Problema: calcular y mostrar la suma de los diez primeros números entre 1 y 1000 que sean divisibles por uno dado.

programa suma_divisibles
variables natural : divisor, suma, contador, número

inicio programa
divisor   leer ‘Introduce el divisor: ’
suma   0
contador   0
para número desde 1 hasta 1000 hacer
si divisor divide a número entonces
suma   suma + número
contador   contador + 1
                fin si
                si contador = 10 entonces
interrumpir
                fin si
fin para

escribir ‘La suma es’, suma

fin programa

Actividad Algoritmos

1- Ejemplo: PARA QUE UNA PERSONA PUEDA EJERCER SU VOTO EN UNA ELECCION DE

GOBIERNO,DEBE DE SER MAYOR DE EDAD Y DEBE SER COLOMBIANO.

El algoritmo sería el siguiente:
Inicio (variables a usar: edad, nacionalidad)
Escribir “Cual es su edad: ”
Leer edad
Escribir “Cual es su nacionalidad: ”
Leer nacionalidad
Si (edad >= 18 y nacionalidad = costarricense) entonces
Escribir “Puede votar”
Sino
Escribir “NO puede votar”
Fin (del si)
Fin (de inicio)

Fin (del si)

Fin (de inicio)
2. PARA QUE UNA PERSONA PUEDA CASARSE, DEBE DE SER MAYOR DE EDAD Y SOLTERO.
Inicio (variables a usar: edad, estado)
Escribir “Cual es su edad: ”
Leer edad
Escribir “Cual es su estado civil: ”
Leer estado
Si (edad >= 18 y estado = soltero) entonces
Escribir “Se puede CASAR”
Sino
Escribir “NO puede CASARSE”
Fin (del si)
Fin (de inicio)
Nota: Cualquier error que vean 
3- DETERMINAR CUANTOS NUMEROS PARES HAY ENTRE 1 Y 10.
Inicio ( Variables Conta  1, Res  0, i )
Mientras conta < = 10 haga
Conta  conta + 1
Res  conta / 2
Si Res = 0 entonces
I  i + 1
Fin (del si)
Fin (mientras)
Escriba “Hay” i “pares”
Fin (inicio)
4- HAGA UN algoritmo PARA DETERMINAR SI UN NUMERO ES NEGATIVO.
Inicio (Variables num)
Escriba “digite un numero”
Leer num
Si num < 0 entonces
Escriba “Este numero es Negativo”
Sino
Escriba “Este numero NO es Negativo”
Fin (si)
Fin (inicio)
3- DETERMINAR CUANTOS NUMEROS PARES HAY ENTRE 1 Y 10.
Inicio ( Variables Conta  1, Res  0, i )
Mientras conta < = 10 haga
Conta  conta + 1
Res  conta / 2
Si Res = 0 entonces
I  i + 1
Fin (del si)
Fin (mientras)
Escriba “Hay” i “pares”
Fin (inicio)
4- HAGA UN ALGORTIMO PARA DETERMINAR SI UN NUMERO ES NEGATIVO.
Inicio (Variables num)
Escriba “Digite un numero”
Leer num
Si num < 0 entonces
Escriba “Este numero es Negativo”
Sino
Escriba “Este numero NO es Negativo”
Fin (si)
Fin (inicio)
5- REALICE UN ALGORTIMO QUE DETERMINE SI UN NUMERO ES POSITIVO
Inicio (Variables num)
Escriba “Digite un numero”
Leer num
Si num >= 0 entonces
Escriba “Este numero es POSITIVO”
Sino
Escriba “Este numero NO es POSITIVO”
Fin (si)
6- REALICE UN ALGORITMO QUE DETERMINE SI UN NUMERO ES PRIMO.
Inicio (Variables cont  1, num, i  o, Res  0)
Escriba “Digite un numero”
Leer num
Mientras con < = num haga
Resp  num mod cont
Cont  cont + 1
Si res = 0 entonces
i  i + 1
Fin (si)
Fin (mientra)
Si (i = 2 ) entonces
Escriba “Este numero es Primo”
Sino
Escriba “Este numero NO es primo”
Fin (si)
Fin (inicio)
7- HAGA UN ALGORITMO QUE DETERMINE SI UN NUEMRO ES IGUAL A CERO
Inicio (Variables num)
Escriba “Digite un numero”
Leer num
Si num = 0 entonces
Escriba “Este numero igual a Cero”
Sino
Escriba “Este numero NO es igual a Cero”
Fin (si)
Fin (inicio)
Nota: Cualquier error 
11- ESCRIBA UN ALGORITMO QUE SUME, RESTE, MULTIPLEQUE Y DIVIDA DOS NUMEROS.
Inicio ( Variables num1, num2, suma, resta, multi, divi)
Escriba “Digite un numero”
Leer num1
Escriba “Digite un numero”
Leer num1
suma  num1 + num2
resta  num1 - num2
multi  num1 * num2
divi  num1 / num2
Escriba “El resultado de la suma es: ”, suma,
Escriba “El resultado de la resta es: ”, resta,
Escriba “El resultado de la multi es: ”, multi,
Escriba “El resultado de la divi es: ”, divi,
Fin (inicio)
12- ESCRIBA UN ALGORITMO QUE CALCULE EL AREA DE UN RECTANGULO.
Inicio ( Variables lado1, lado2, area) 
Escriba “Digite el primer lado”
Leer lado1
Escriba “Digite el segundo lado”
Leer lado2
Area  lado1 * lado2
Escriba “El área del rectángulo es: ”, area
7- ESCRIBA UN ALGORITMO QUE SUME, RESTE, MULTIPLEQUE Y DIVIDA DOS NUMEROS.
Inicio ( Variables num1, num2, suma, resta, multi, divi)
Escriba “Digite un numero”
Leer num1
Escriba “Digite un numero”
Leer num1
suma  num1 + num2
resta  num1 - num2
multi  num1 * num2
divi  num1 / num2
Escriba “El resultado de la suma es: ”, suma,
Escriba “El resultado de la resta es: ”, resta,
Escriba “El resultado de la multi es: ”, multi,
Escriba “El resultado de la divi es: ”, divi,
Fin (inicio)
8- ESCRIBA UN ALGORITMO QUE CALCULE EL AREA DE UN RECTANGULO.
Inicio ( Variables lado1, lado2, area) 
Escriba “Digite el primer lado”
Leer lado1
Escriba “Digite el segundo lado”
Leer lado2
Area  lado1 * lado2
Escriba “El área del rectángulo es: ”, area
9- ESCRIBA UN ALGORITMO QUE CALCULE EL AREA DE UN TRIANGULO.
Inicio ( Variables base, altura, area) 
Escriba “Digite la altura”
Leer altura
Escriba “Digite la base”
Leer base
Area  (base * altura)/2
Escriba “El área del triángulo es: ”, area
ESCRIBA UN ALGORITMO QUE CALCULE LA HIPOTENUSA DE UN TRIANGULO 
RECTANGULO. DONDE EL CATETO 1 ES IGUAL A 5 Y EL CATETO 2 ES IGUA 5.
Inicio ( Variables cateto1, cateto2, hipot) 
Catero1 5
Cateto2  5
Hipot  raiz2((cateto1^2)+(cateto2^2))
Escriba “La hipotenusa del triangulo rectángulo es: ”, hipot

Actividad diagrama de flujo

-Inicio o fin del programa
Captura.PNG
Indica el inicio y el final del driagrama de flujo. Indica la entrada y salida de datos.

-Procesos
Captura2.JPG
Simbolo de proceso y nos indica la asignación de un valor en la memoria y/o la ejecución de una operación aritmética

-Operaciones de entrada y salida
Captura3.JPG
Representa la captura de información a través de cualquier medio o periferico de salida.

-Toma de decisiones y Ramificación
Captura4.JPG
Simbolo de decisión. Indica la realización de una comparación de valores.

-Conector para unir el flujo a otra parte del diagrama
Captura44.JPG
Conector dentro de pagina. Representa la continuidad del diagrama dentro de la misma pagina.

-Cinta magnética
Captura5.JPG

-Disco magnético
Captura11.JPG

-Conector de pagina
Captura111.JPG

-Líneas de flujo
Captura1111.JPG

-Anotación
Captura11111.JPG

-Display, para mostrar datos
Captura22.JPG

-Envía datos a la impresora
Captura33.JPG



lunes, 13 de marzo de 2017

Trabajo: ¿Que es un algoritmo?

https://drive.google.com/file/d/0Bx8RWFQh0RxvNXdfYkY4VGVrbFE/view

Fases del proceso tecnologico

a) Planteamiento del Problema
Consiste en identificar el problema en cuestión y qué condiciones debe de cumplir.
b) Búsqueda de Información
Una vez definido el problema, se debe buscar información en todos los medios que se pueda, como pueden ser internet, libros, revistas especializadas, catálogos, preguntar a personas de nuestro entorno, observación directa de objetos similares, etc.
Con esta información se pueden ir generando ideas y aclarar conceptos sobre los materiales a utilizar, técnicas de fabricación y forma del objeto.
c) Diseño
Durante esta etapa, cada miembro realizará su diseño individual. Posteriormente, en una reunión se decidirá cuál es el diseño elegido, o por otro lado, extraer las mejores ideas individuales para adoptar un diseño final resultante de una combinación de ellas.
d) Planificación
Aunque no lo parezca, esta es una de las principales fases del método de proyectos. Planificar consiste en organizar las tareas de forma ordenada, indicando para cada una de ellas las personas que la realizarán, las herramientas y materiales a utilizar y las etapas que se necesitan seguir.
Por ello es necesario tener en cuenta el número de personas del grupo, la distribución de tiempos y adquisición de materiales y herramientas necesarios.
Para una correcta planificación se aconseja rellenar un documento llamado “Hoja de Procesos”.
e) Construcción
Lo normal es fabricar en primer lugar las piezas que componen el objeto por separado, para posteriormente ensamblarlas todas.
Durante esta fase es fundamental respetar las normas de seguridad.
f) Evaluación
Tras la etapa anterior, sólo falta ver si el objeto fabricado cumple su función.  Nos podemos encontrar con dos casos: que el objeto funcione adecuadamente (pasaremos directamente a la siguiente etapa), o que el objeto no funcione (se volverán a revisar todos los puntos anteriores para ver dónde está el fallo).
Los fallos que se suelen presentar suelen ser:
  • Errores de diseño.
  • Materiales de construcción no adecuados.
  • Mecanismos o piezas mal ensambladas.
  • Problemas con contactos eléctricos.
  • Otros.
En esta fase también se incluye la “autoevaluación del proyecto”, en el cual cada miembro del grupo procederá a valorar la estética, la funcionalidad, el trabajo realizado, el interés, el trabajo en grupo, y se realizan propuestas de mejora.
g) Divulgación
El objetivo de la tecnología, como se ha comentado anteriormente, consiste en satisfacer necesidades del ser humano.
Si se fabrica un objeto que lo cumple, lo lógico es difundirlo para que toda la sociedad de beneficie. Para ello hacemos uso de la “Memoria Técnica” y publicación en prensa y revistas especializadas.