domingo, 21 de septiembre de 2014

Estructuras de control :If y For

Los programas que se pueden realizar utilizando solamente variables y operadores son una simple sucesión lineal de instrucciones básicas.
Sin embargo, no se pueden realizar programas que muestren un mensaje si el valor de una variable es igual a un valor determinado y no muestren el mensaje en el resto de casos. Tampoco se puede repetir de forma eficiente una misma instrucción, como por ejemplo sumar un determinado valor a todos los elementos de un array.
Para realizar este tipo de programas son necesarias las estructuras de control de flujo, que son instrucciones del tipo "si se cumple esta condición, hazlo; si no se cumple, haz esto otro". También existen instrucciones del tipo "repite esto mientras se cumpla esta condición".
Si se utilizan estructuras de control de flujo, los programas dejan de ser una sucesión lineal de instrucciones para convertirse en programas inteligentes que pueden tomar decisiones en función del valor de las variables.
Estructura if
La estructura más utilizada en JavaScript y en la mayoría de lenguajes de programación es la estructura if. Se emplea para tomar decisiones en función de una condición. Su definición formal es:
if(condicion) {
  ...
}
Si la condición se cumple (es decir, si su valor es true) se ejecutan todas las instrucciones que se encuentran dentro de {...}. Si la condición no se cumple (es decir, si su valor es false) no se ejecuta ninguna instrucción contenida en {...} y el programa continúa ejecutando el resto de instrucciones del script.
Estructura if-else
En ocasiones, las decisiones que se deben realizar no son del tipo "si se cumple la condición, hazlo; si no se cumple, no hagas nada". Normalmente las condiciones suelen ser del tipo "si se cumple esta condición, hazlo; si no se cumple, haz esto otro".
Para este segundo tipo de decisiones, existe una variante de la estructura if llamada if...else. Su definición formal es la siguiente:
if(condicion) {
  ...
}
else {
  ...
}
Si la condición se cumple (es decir, si su valor es true) se ejecutan todas las instrucciones que se encuentran dentro del if(). Si la condición no se cumple (es decir, si su valor es false) se ejecutan todas las instrucciones contenidas en else { }
Estructura For
Las estructuras if y if...else no son muy eficientes cuando se desea ejecutar de forma repetitiva una instrucción.
La estructura for permite realizar este tipo de repeticiones (también llamadas bucles) de una forma muy sencilla. No obstante, su definición formal no es tan sencilla como la de if():
for(inicializacion; condicion; actualizacion) {
...
}
La idea del funcionamiento de un bucle for es la siguiente: "mientras la condición indicada se siga cumpliendo, repite la ejecución de las instrucciones definidas dentro del for. Además, después de cada repetición, actualiza el valor de las variables que se utilizan en la condición".
  • La "inicialización" es la zona en la que se establece los valores iniciales de las variables que controlan la repetición.
  • La "condición" es el único elemento que decide si continua o se detiene la repetición.
  • La "actualización" es el nuevo valor que se asigna después de cada repetición a las variables que controlan la repetición.


Lógica booleana

¿Qué es la lógica booleana?

La lógica booleana es un sistema basado en la lógica matemática, que se denomina álgebra booleana. Esta designación hace referencia al matemático inglés George Boole. Sirve para crear reglas o expresiones lógicas. Con estas expresiones lógicas se analizan, seleccionan y procesan los datos que se introducen en el componente FI-SL.

En el componente de aplicación FI-SL, se puede utilizar la lógica booleana para crear expresiones que puedan utilizarse en Report Writer y en las funciones de selección de ledgers, rollups, validaciones y sustituciones.
Una expresión booleana puede contener:
  • Valores constantes
  • Nombres de set (un set de valores)
  • Una expresión TRUE o FALSE
  • Exits de usuario (rutinas ABAP definidas por el usuario)
  • Comparaciones de campo
  • Nombres de regla
  • Proceso matemático


El componente FI-SL primero analiza los datos mediante expresiones lógicas y, a continuación, determina si estos datos son aptos para el uso. Si la expresión lógica es verdadera, los datos se utilizarán, pero no se emplearán si la expresión es falsa.

Expresiones de lógica booleana

Una expresión de lógica booleana es una sentencia lógica, que puede ser verdadera o falsa. 

Las expresiones lógicas se pueden enlazar mediante operadores. Un operador enlaza expresiones lógicas y define el modo en que éstas deben procesarse. Una expresión combinada consta de dos o más expresiones lógicas enlazadas.

La lógica booleana utiliza los operadores siguientes:

AND (Y) (conjunción):
Con este operador, las dos expresiones que se enlazan deben ser verdaderas para que la expresión combinada lo sea.

OR (O: conjunción disyuntiva)
Con este operador, por lo menos una de las expresiones debe ser verdadera para que la expresión combinada sea verdadera.

NOT (NO: negación)
Con este operador, la expresión que sigue al operador NOT debe ser falsa para que la expresión sea verdadera.

NAND (NOT AND)
Con este operador, por lo menos una de las expresiones debe ser falsa para que la expresión combinada sea verdadera.

NOR (NOT OR)
Con este operador, las dos expresiones que se enlazan deben ser falsas para que la expresión combinada sea verdadera.

-
® (Implicación)
Con este operador, las dos expresiones dependen la una de la otra para determinar el valor verdadero de la expresión ("IF A, THEN B") (SI A, ENTONCES B). No obstante, si la segunda expresión es verdadera o la primera es falsa, el valor verdadero de la combinación es verdadero.

«
(Equivalencia)
Con este operador, las expresiones deben ser ambas verdaderas o ambas falsas para que la expresión combinada sea verdadera.


En conclusion
Podemos observar que con la información presentada anteriormente, tenemos conocimiento ahora de lo que es la lógica boolena y como esta nos ayuda al momento de plantear soluciones para problemas de programación, si bien mientras nos adentramos mas a la programacion es bueno ir conociendo las herramientas que nos ayudaran.

lunes, 8 de septiembre de 2014

Operadores logicos y artimeticos

Operadores lógicos

Los operadores lógicos son generalmente empleados con valores lógicos (booleanos); estos operadores devuelven un valor booleano. Sin embargo, los operadores && y || realmente devuelven el valor de uno de sus operandos, por esto si se emplean con valores no booleanos, podrían devolver un valor no booleano. Los operadores lógicos se describen en la siguiente tabla.


Un operador de comparación compara sus operandos y devuelve un valor lógico en función de si la comparación es verdadera. Los operandos pueden ser valores numéricos, de cadena de caracteres, lógicos u objetos. Las cadenas se comparan basándose en el orden lexicográfico estándar, usando los valores Unicode.  La siguiente tabla describe los operadores de comparación.


Operadores aritméticos

Los operadores aritméticos toman valores numéricos (tanto literales como variables) como operandos y devuelven un único valor numérico. Los operadores aritméticos estándar son el de suma (+), el de resta (-), el de multiplicación (*) y el de división (/).  
Algunos otros elementos aritméticos que podemos encontrar se muestran en la siguiente tabla:

Conclusión
En conclusion los operadores ya sean aritméticos o lógicos nos sirven para la realización de operaciones entro de un lenguaje o para la realización de un diagrama de flujo, ademas de facilitarnos en muchas ocasiones ahorrarnos uno o dos pasos para las operaciones.

sábado, 30 de agosto de 2014

Diagrama de flujo

La información presentada a continuación se pretende que sirva como apoyo informativo y constructivo acerca de los diagramas de flujo antes de comenzar tenemos que definir que es un diagrama de flujo:

¿Que es un diagrama de flujo?


El diagrama de flujo o diagrama de actividades es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como programación, economía, procesos y psicología cognitiva.

Un diagrama de flujo presenta generalmente un único punto de inicio y un único punto de cierre, aunque puede tener más, siempre que cumpla con la lógica requerida.




¿Como realizar un diagrama de flujo?

A continuación se presentan una serie de pasos que anteceden para construir un diagrama de flujo:

·         Identificar las ideas principales al ser incluidas en el diagrama de flujo. Deben estar presentes el autor o responsable del proceso, los autores o responsables del proceso anterior y posterior y de otros procesos interrelacionados, así como las terceras partes interesadas.
·         Definir qué se espera obtener del diagrama de flujo.
·         Identificar quién lo empleará y cómo.
·         Establecer el nivel de detalle requerido.
·         Determinar los límites del proceso a describir.

Los pasos siguientes son el proceso que se tiene que seguir para llevar acabo el diagrama de flujo:

·  Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente.
·  Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico.
·   Si el nivel de detalle definido incluye actividades menores, listarlas también.
·   Identificar y listar los puntos de decisión.
· Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos.
·  Asignar un título al diagrama y verificar que esté completo y describa con exactitud el proceso elegido.

Después de que ya conocimos los puntos anteriores podemos ahora pasar a
la nomenclatura que se utiliza para la realización de los diagramas de flujo y
el significado de cada uno de ellos,  estos se presentan a continuación:



Conclusiones

Tras haber analizado la información anterior puedo concluir que los diagramas de flujo son muy útiles en muchos ámbitos ya que nos permiten llevar un proceso acerca de un problema que se nos plantee, ademas de que mediante ellos se puede explicar una serie de pasos o un programa a una persona con mayor facilidad, si bien los diagramas de flujo son importantes al momento de la programación ya que nos permiten no perder el enfoque inicial de un proyecto  y llevar un orden especifico para poder obtener un resultado mas satisfactorio.