Featured Posts
miércoles, 14 de mayo de 2014
miércoles, 19 de marzo de 2014
ALGORITMO
¿QUE ES UN ALGORITMO?
PASO 1
leer detenidamente y con lapsos de 5 minutos por cada párrafo el problema planteado, esto nos ayudara a captar la idea del algoritmo a diseñar. con esto también logramos que nuestra lógica comienza a desarrollarse sin cansarnos tanto ni causar confusiones con los siguientes pasos.
PASO 2
los algoritmos son como traductores de problemas matemáticos para nuestras computadoras que por medio del compilador nos ayuda a interactuar con ellas ya que su idioma es totalmente diferente a de nosotros y de algún modo debemos hablarnos casi en el mismo "IDIOMA" por decirlo así.
EJEMPLO
diseñar un algoritmo que convierta MILLAS a METROS recordando que 1 MIILA SON 1852 MTS.
lo principal es declarar variables con este símbolo INT recuerden que siempre deben poner esto y enseguida las variables las cuales les asignaran. pero ustedes se preguntaran que son la variables pues simplemente son un campo de memoria con un nombre propio (con una letra que el usuario quiera, no interferirá con el proceso) para almacenar un valor de cualquier tipo.
enseguida de esto deben colocar el proceso a seguir segun lo indicado o requerido por el problema y por ultimo imprimir nuestra respuesta.
ALGORITMO
INICIO
INT M; V; MT;
M=NUMERO INGRESADO POR EL USUARIO;V=1852;
MT= M*V;
IMPRIMIR MT
FIN
OPERADORES
Matematicos + - * / % ^
Comparacion < > <= >= == !=
And Or Not
& || !=
Incrementales ++ +- --
'
inicialmente podemos determinar que un ALGORITMO es una secuencia de pasos a seguir con un fin común, mas no es lo que muchas personas piensan cuando les preguntan,lo cual responden que es algo para programar o algo así, tenemos que aprender a diferenciar entre un algoritmo y un pseudocodigo y si podes distinguir estos pasos ya estar haciendo un algoritmo.
leer detenidamente y con lapsos de 5 minutos por cada párrafo el problema planteado, esto nos ayudara a captar la idea del algoritmo a diseñar. con esto también logramos que nuestra lógica comienza a desarrollarse sin cansarnos tanto ni causar confusiones con los siguientes pasos.
PASO 2
los algoritmos son como traductores de problemas matemáticos para nuestras computadoras que por medio del compilador nos ayuda a interactuar con ellas ya que su idioma es totalmente diferente a de nosotros y de algún modo debemos hablarnos casi en el mismo "IDIOMA" por decirlo así.
- debe tener un punto particular de inicio
- debe ser completamente definido y no debe permitir dobles interpretaciones
- debe ser general,es decir, soporta la mayoría de las variantes que se puedan presentar en la definicion del problema.
- debe ser finito en tamaño y tiempo en ejecución.
- debe ser legible,claro y fácil de interpretar y entender
ESTRUCTURA DE UN ALGORITMO
inicio
leer variables
asignar valores
realizar proceso
imprimir resultado
fin
EJEMPLO
diseñar un algoritmo que convierta MILLAS a METROS recordando que 1 MIILA SON 1852 MTS.
lo principal es declarar variables con este símbolo INT recuerden que siempre deben poner esto y enseguida las variables las cuales les asignaran. pero ustedes se preguntaran que son la variables pues simplemente son un campo de memoria con un nombre propio (con una letra que el usuario quiera, no interferirá con el proceso) para almacenar un valor de cualquier tipo.
enseguida de esto deben colocar el proceso a seguir segun lo indicado o requerido por el problema y por ultimo imprimir nuestra respuesta.
ALGORITMO
INICIO
INT M; V; MT;
M=NUMERO INGRESADO POR EL USUARIO;V=1852;
MT= M*V;
IMPRIMIR MT
FIN
OPERADORES
Matematicos + - * / % ^
Comparacion < > <= >= == !=
And Or Not
& || !=
Incrementales ++ +- --
DFD
Un diagrama de flujo de datos es una representación gráfica
del flujo de datos a través de un sistema de información. Un diagrama de flujo
de datos también se puede utilizar para la visualización de procesamiento de
datos . Es una práctica común para un diseñador dibujar un contexto a nivel de
DFD que primero muestra la interacción entre el sistema y las entidades
externas.
Los diagramas de flujo de datos fueron inventados por Larry
Constantine, el desarrollador original del diseño estructurado, basado en el
modelo de computación de Martin y Estrin: "flujo gráfico de datos" .
Los diagramas de flujo de datos (DFD) son una de las tres perspectivas
esenciales de Análisis de Sistemas Estructurados y Diseño por Método SSADM. El
patrocinador de un proyecto y los usuarios finales tendrán que ser informados y
consultados en todas las etapas de una evolución del sistema. Con un diagrama
de flujo de datos, los usuarios van a poder visualizar la forma en que el
sistema funcione, lo que el sistema va a lograr, y cómo el sistema se pondrá en
práctica. El antiguo sistema de diagramas de flujo de datos puede ser elaborado
y se comparó con el nuevo sistema de diagramas de flujo para establecer diferencias
y mejoras a aplicar para desarrollar un sistema más eficiente. Los diagramas de
flujo de datos pueden ser usados para proporcionar al usuario final una idea
física de cómo resultarán los datos a última instancia, y cómo tienen un efecto
sobre la estructura de todo el sistema. La manera en que cualquier sistema es
desarrollado, puede determinarse a través de un diagrama de flujo de datos.
modelo de datos.
'
lunes, 17 de marzo de 2014
LOS DATOS
TIPOS DE DATOS
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.
Por ejemplo, por lo general el tipo "int" representa un conjunto de enteros de 32 bits
cuyo rango va desde el -2.147.483.648 al 2.147.483.647, así como las operaciones
que se pueden realizar con los enteros, como son la suma, la resta, y la
multiplicación. Los colores, por su parte, se representan como tres bytes
denotando la cantidad de rojo, verde y azul, y una cadena de caracteres
representando el nombre del color; las operaciones permitidas en este caso
incluyen la adición y la sustracción, pero no la multiplicación.
Éste es un concepto propio de la informática, más
específicamente de los lenguajes de programación, aunque también se encuentra
relacionado con nociones similares de la matemática y lalógica.
En un sentido amplio, un tipo de
datos define un conjunto de valores y las operaciones sobre estos valores.1 Casi todos los lenguajes de programación
explícitamente incluyen la notación del tipo de datos, aunque lenguajes
diferentes pueden usar terminologías diferentes. La mayor parte de los
lenguajes de programación permiten al programador definir tipos de datos
adicionales, normalmente combinando múltiples elementos de otros tipos y
definiendo las operaciones del nuevo tipo de dato. Por ejemplo, un programador
puede crear un nuevo tipo de dato llamado "Persona" que específica
que el dato interpretado como Persona incluirá, por ejemplo, un nombre y una
fecha de nacimiento.
LAS GENERACIONES DE LA COMPUTACION
Historia
El Electronic Numerical Integrator and Computer (ENIAC) se ha considerado a menudo la primera computadora de propósito general, aunque este título pertenece en realidad a la computadora alemana Z1. Era totalmente digital, es decir, ejecutaba sus procesos y operaciones mediante instrucciones en lenguaje máquina, a diferencia de otras máquinas contemporáneas de procesos analógicos. Presentada al público el 15 de febrero de 1946, John W. Mauchly y John P. Eckert de la Universidad de Pensilvania (EEUU) iniciaron su desarrollo en 1943. Esta enorme máquina medía más de 30 metros de largo y pesaba 32 toneladas, estaba compuesta por 17.468 válvulas. El calor de las válvulas elevaba la temperatura de la sala donde se hallaba instalada hasta los 50º C. y para que llevase a cabo las operaciones para las que se había diseñado. Cuando la ENIAC se terminó en 1946, la II Guerra Mundial ya había terminado. El fin de la contienda hizo que los esfuerzos hasta entonces dedicados principalmente a objetivos militares, se destinaran también a otro tipo de investigación científica más relacionada con las necesidades de la empresa privada. Los esfuerzos múltiples dieron resultados en 1945 Mauchly y Eckert comenzaron a trabajar en una sucesora de la ENIAC, el EDVAC (Electronic Discrete Variable Automatic Computer) y Aiken inició el diseño de la Mark II. En 1951, el que está considerado como la primera computadora que se llamó Saly fue ampliamente comercializada, la UNIVAC I, comenzó a funcionar con éxito. En 1952 la computadora UNIVAC se utilizó para realizar el recuento de votos en las elecciones presidenciales de EE.UU. El resultado victoria (Eisenhower sobre Adlai Stevenson) se conoció 45 minutos después de que se cerraran los colegios electorales.
En 1952 entra en funcionamiento la primera de las llamadas IAS machines, diseñadas por John von Neumann y que incorporaban notables mejoras respecto a sus predecesoras y en 1962, Steven Russell creó el primer juego para computadoras, Spacewar.
Primera Generación (1946-1958)
En esta época las computadoras funcionaban con válvulas, usaban tarjetas perforadas para entrar los datos y los programas, utilizaban cilindros magnéticos para almacenar información e instrucciones internas y se utilizaban exclusivamente en el ámbito científico o militar. La programación implicaba la modificación directa de los cartuchos y eran sumamente grandes, utilizaban gran cantidad de electricidad, generaban gran cantidad de calor y eran sumamente lentas.
Segunda Generación (1958-1964)
Características de ésta generación: Usaban transistores para procesar información. Los transistores eran más rápidos, pequeños y más confiables que los tubos al vacío. 200 transistores podían acomodarse en la misma cantidad de espacio que un tubo al vacío. Usaban pequeños anillos magnéticos para almacenar información e instrucciones. Producían gran cantidad de calor y eran sumamente lentas. Se mejoraron los programas de computadoras que fueron desarrollados durante la primera generación.
Se desarrollaron nuevos lenguajes de programación como COBOL y FORTRAN, los cuales eran comercialmente accesibles. Se usaban en aplicaciones de sistemas de reservaciones de líneas aéreas, control del tráfico aéreo y simulaciones de propósito general. La marina de los Estados Unidos desarrolla el primer simulador de vuelo, Computadora Whirlwind. Se comenzó a disminuir el tamaño de las computadoras.
Aparecen muchas compañías y las computadoras eran bastante avanzadas para su época como la serie 5000 de Burroughs y la ATLAS de la Universidad de Mánchester. Algunas computadoras se programaban con cintas perforadas y otras por medio de cableado en un tablero.
Tercera Generación (1964-1971)
Comienza a utilizarse los circuitos integrados, lo cual permitió abaratar costos al tiempo que se aumentaba la capacidad de procesamiento y se reducía el tamaño de las máquinas. La tercera generación de computadoras emergió con el desarrollo de circuitos integrados (pastillas de silicio) en las que se colocan miles de componentes electrónicos en una integración en miniatura. El PDP-8 de la Digital Equipment Corporation fue el primer miniordenador.
Cuarta Generación (1971-1983)
Fase caracterizada por la integración sobre los componentes electrónicos, lo que propició la aparición del microprocesador, es decir, un único circuito integrado en el que se reúnen los elementos básicos de la máquina. Se desarrolló el microprocesador. Se colocan más circuitos dentro de un "chip". "LSI - Large Scale Integration circuit". "VLSI - Very Large Scale Integration circuit". Cada "chip" puede hacer diferentes tareas. Un "chip" sencillo actualmente contiene la unidad de control y la unidad de aritmética/lógica. El tercer componente, la memoria primaria, es operado por otros "chips". Se reemplaza la memoria de anillos magnéticos por la memoria de "chips" de silicio. Se desarrollan las microcomputadoras, o sea, computadoras personales o PC. Se desarrollan las supercomputadoras.
Quinta Generación (1984 -1999)
Surge la PC tal cual como la conocemos en la actualidad. IBM presenta su primera computadora personal y revoluciona el sector informativo. En vista de la acelerada marcha de la microelectrónica, la sociedad industrial se ha dado a la tarea de poner también a esa altura el desarrollo del software y los sistemas con que se manejan las computadoras.
TOMA DE DECISIONES
en los algoritmos existen algo llamado las CONDICIONALES (IF) que significa SI, esta expresion se utiliza para poder determinar un problema el cual es necesario tomar una decision ya sea un SI o un No, por ejemplo si me piden que realize un programa el cual me diferencie los nmeros primos de los no primos podrias emplear esta expresion acompañada de otros proceso.
Pero estas condicionales se dividen en 3 TIPOS las cuales son :
CONDICIONALES SIMPLES
No todos los problemas pueden resolverse empleando
estructuras secuenciales. Cuando hay que tomar una decisión aparecen las
estructuras condicionales.
En nuestra vida diaria se nos presentan situaciones
donde debemos decidir.
¿Elijo la carrera A o la carrera B?
¿Me pongo este pantalón?
Para ir al trabajo, ¿elijo el camino A o el camino
B?
Al cursar una carrera, ¿elijo el turno mañana,
tarde o noche?
Por supuesto que en un problema se combinan
estructuras secuenciales y condicionales.
ESTRUCTURA
Podemos observar: El rombo representa la condición.
Hay dos opciones que se pueden tomar. Si la condición da verdadera se sigue el
camino del verdadero, o sea el de la derecha, si la condición da falsa se sigue
el camino de la izquierda.
Se trata de una estructura CONDICIONAL SIMPLE
porque por el camino del verdadero hay actividades y por el camino del falso no
hay actividades.
Por el camino del verdadero pueden existir varias
operaciones, entradas y salidas, inclusive ya veremos que puede haber otras
estructuras condicionales
PROBLEMA
Ingresar el sueldo de una persona, si supera los
3000 pesos mostrar un mensaje en pantalla indicando que debe abonar impuestos.
EN PROGRAMACIÓN
INICIO
INT SUELDO;
SUELDO=3000
IF(SUELDO>3000)
{
IMPRIMA "ESTA PERSONA DEBE ABANDONAR IMPUESTOS"
}
FIN
DIAGRAMA DE FLUJO (DFD)
Podemos observar lo siguiente: Siempre se hace la
carga del sueldo, pero si el sueldo que ingresamos supera 3000 pesos se
mostrará por pantalla el mensaje "Esta persona debe abonar
impuestos", en caso que la persona cobre 3000 o menos no aparece nada por
pantalla.
CONDICIONALES COMPUESTAS (IF-ELSE)
Cuando
se presenta la elección tenemos la opción de realizar una actividad u otra. Es
decir tenemos actividades por el verdadero y por el falso de la condición. Lo
más importante que hay que tener en cuenta que se realizan las actividades de
la rama del verdadero o las del falso, NUNCA se realizan las actividades de las
dos ramas
ESTRUCTURA
En una estructura condicional compuesta tenemos entradas, salidas, operaciones, tanto por la rama del verdadero como por la rama del falso
PROBLEMA
Realizar un programa que solicite ingresar dos números
distintos y muestre por pantalla el mayor de ellos.
PROGRACION
INICIO
INT N1;N2;
IMPRIMA "INGRESE NUMERO";
LEA NUM 1;
IMPRIMA "INGRESE OTRO NUMERO";
LEA NUM 2;
IF(NUM1>NUM2)
{
IMPRIMA NUM1 "ES MAYOR";
}
ELSE
{
IMPRIMA NUM2 "ES MAYOR";
}
FIN
DIAGRAMA DE FLUJO (DFD)
CONDICIONALES ANIDADAS
Decimos que una estructura condicional es anidada cuando por
la rama del verdadero o el falso de una estructura condicional hay otra
estructura condicional.
El diagrama de flujo que se presenta contiene dos
estructuras condicionales. La principal se trata de una estructura condicional
compuesta y la segunda es una estructura condicional simple y está contenida
por la rama del falso de la primer estructura.
Es común que se presenten estructuras condicionales anidadas
aún más complejas.
PROBLEMA
Confeccionar un programa que pida por teclado tres notas de
un alumno, calcule el promedio e imprima alguno de estos mensajes:
Si el promedio es >=7 mostrar "Promocionado".
Si el promedio es >=4 y <7 mostrar
"Regular".
Si el promedio es <4 mostrar "Reprobado".
EN PROGRAMACION
INICIO
INT NOTA1;NOTA2;NOTA3;D;
D=3;
IMPRIMA"INGRESE NOTA";
LEA NOTA1;
IMPRIMA"INGRESE NOTA";
LEA NOTA2;
IMPRIMA"INGRESE NOTA";
LEA NOTA3;
PROMEDIO=(NOTA1+NOTA2+NOTA3)/D;
IF(PROMEDIO>=7)
{
IMPRIMA "PROMOCIONADO"
}
ELSE
{
IF(PROMEDIO >=4 && <=7)
{
IMPRIMA "REGULAR"
}
ELSE
{
IF(PROMEDIO <4)
{
IMPRIMA "REPROBADO"
}
}
FIN
DIAGRAMA DE FLUJO (DFD)

EXPRESIONES BOOLEANAS
este tema es un ooco mas complejo por lo que debemos tener en cuenta varios aspectos que veremos mas adelantes, una expresion booleana es quella que hay que evaluar como resultaddo un valor de FALSO o VERDADERO, para ello necesitamos los operadores logicos de relacion o comparecion.
EJEMPLO
3>2 = V 3==2 = F
3<2= F 3!=2= V
EN EL ALGORITMO
Incio
int=a;b;
logico S;
a= 10;
b=5;
S=a>b;
imprima S
fin
lo que podemos deducir con el ejemplo anterios es que las expresiones booleanas son pasos logicos de una operacion.
TABLAS DE VERDAD
AND OR NOT
V V V V V V V F
V F F V F V F V
F V F F V V
F V F F F F
F F F
EJEMPLO
3>2 = V 3==2 = F
3<2= F 3!=2= V
EN EL ALGORITMO
Incio
int=a;b;
logico S;
a= 10;
b=5;
S=a>b;
imprima S
fin
lo que podemos deducir con el ejemplo anterios es que las expresiones booleanas son pasos logicos de una operacion.
TABLAS DE VERDAD
AND OR NOT
V V V V V V V F
V F F V F V F V
F V F F V V
F V F F F F
F F F
TOMA DE DECICIONES
la toma de dicisiones es el proceso mediante cual se realiza una eleccion entre las opciones o formas para resovler difere nte situaciones del prblema.
INSTRUCCION SI ( IF )
SI CONDICION;
MIENTRAS PROCESO;
FIN SI;
INICIO
INT A,B;
A=3;B=3;
SI A==B
EN
ENTONCES A=A+1;
FIN SI
IMPRIMA A
FIN SI
IMPRIMA A
FIN
EJEMPLO
realize un algoritmo, con la instruccion SI podra determinar. SI en la variable a existe un numero multiplo de 5.
en caso de ser verdadero asignele B=1 de lo contrario asignele B=0
Suscribirse a:
Comentarios (Atom)






