miércoles, 13 de enero de 2016

Sistema hexadecimal

El sistema hexadecimal (a veces abreviado como Hex, no confundir con sistema sexagesimal) es el sistema de numeración posicional que tiene como base el 16. Su uso actual está muy vinculado a la informática y ciencias de la computación, pues los computadores suelen utilizar elbyte u octeto como unidad básica de memoria; y, debido a que un byte representa 2^8 valores posibles, y esto puede representarse como 2^8 = 2^4 \cdot 2^4 = 16 \cdot 16 =  1 \cdot 16^2 + 0 \cdot 16^1 + 0 \cdot 16^0, que equivale al número en base 16 100_{16}, dos dígitos hexadecimales corresponden exactamente a un byte.
En principio, dado que el sistema usual de numeración es de base decimal y, por ello, sólo se dispone de diez dígitos, se adoptó la convención de usar las seis primeras letras del alfabeto latino para suplir los dígitos que nos faltan. El conjunto de símbolos sería, por tanto, el siguiente:
 S = \{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, \mathrm{A}, \mathrm{B}, \mathrm{C}, \mathrm{D}, \mathrm{E}, \mathrm{F}\}\,
Se debe notar que A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. En ocasiones se emplean letras minúsculas en lugar de mayúsculas. Como en cualquier sistema de numeración posicional, el valor numérico de cada dígito es alterado dependiendo de su posición en la cadena de dígitos, quedando multiplicado por una cierta potencia de la base del sistema, que en este caso es 16. Por ejemplo: 3E0A16 = 3×163 + E×162 + 0×161 + A×160 = 3×4096 + 14×256 + 0×16 + 10×1 = 15882.
El sistema hexadecimal actual fue introducido en el ámbito de la computación por primera vez por IBM en 1963. Una representación anterior, con 0–9 y u–z, fue usada en 1956 por la computadora Bendix G-15.


Operaciones

En el sistema hexadecimal, al igual que en el sistema decimal, binario y octal, se pueden hacer diversas operaciones matemáticas. Entre ellas se encuentra la resta entre dos números en sistema hexadecimal, la que se puede hacer con el método de complemento a 15 o también utilizando el complemento a 16. Además de éstas, debemos manejar adecuadamente la suma en sistema hexadecimal, explicada a continuación:

HexadecimalDecimal
A10
B11
C12
D13
E14
F15

Suma

  • 9 + 7 = 16 (16 - 16 = 0 nos llevamos 1 y es = 10 )
En este caso la respuesta obtenida, 16, no está entre el 0 y el 15, por lo que tenemos que restarle 16. Por lo tanto, la respuesta obtenida será 10 (sistema hexadecimal).
Hay que tener cuidado de utilizar correctamente las letras, ya que operar a la vez con letras y números puede crear confusiones.

  • A + 6 = 16 (16 - 16 = 0 y nos llevamos 1)
Ocurre lo mismo que en el ejemplo anterior.

  • A + A = 20 ( 20 – 16 = 4 y nos llevamos 1)
La respuesta es 20 y no está entre el 0 y el 15, por lo que tenemos que restarle 16. Por lo tanto, la respuesta obtenida será 14 (sistema hexadecimal).
Hay que tener cuidado de utilizar correctamente las letras, ya que operar a la vez con letras y números puede crear confusiones.

  • F + E = 29 ( 29 – 16 = D y nos llevamos 1)
La respuesta es 29 y no está entre el 0 y el 15, por lo que tenemos que restarle 16. Por lo tanto, la respuesta obtenida será 1D (sistema hexadecimal).
Hay que tener cuidado de utilizar correctamente las letras, ya que operar a la vez con letras y números puede crear confusiones.
  • Ahora haremos una operación más complicada:
  • A + 2 = 12 (12 corresponde a C)
Ten en cuenta que puedes comprobar los resultados utilizando una calculadora científica.

Resta hexadecimal

Complemento C15

Como podemos hacer la resta de dos números hexadecimales utilizando el complemento a 15. Para ello tendremos que sumar al minuendo el complemento a quince del sustraendo, y finalmente sumarle el bit de overflow (bit que se desborda).

Para entender la resta en complemento a 15 lo analizaremos con un ejemplo. Ésta es la resta que tenemos que resolver:
      A4FC9
    -   DE8
    —————————
     ¿?¿?¿?¿?
Primero tenemos que hacer que el minuendo y el sustraendo tengan la misma cantidad de números. Para ello, añadiremos ceros al sustraendo hasta que sean suficientes.
      A4FC9
    - 00DE8
    —————————
     ¿?¿?¿?¿?
Después, crearemos un nuevo número con la misma cantidad de números que el nuevo sustraendo. Como en el sistema hexadecimal el mayor número que tenemos es el 15, que corresponde a la letra F, tendremos que escribir la F tantas veces como números tiene el sustraendo.
      FFFFF
    - 00DE8
    —————————
      FF217
La resta se hace siguiendo las normas generales de la resta común. La diferencia obtenida se denomina el complemento a 15. Recuerda el valor correspondiente a cada letra al operar.
Ahora tendremos que sumar el minuendo y el complemento a 15 utilizando la suma en sistema hexadecimal, mencionada anteriormente.
      A4FC9
    + FF217
    —————————
     1A41E0
Con la suma obtenemos el resultado 1A41E0, pero no es la respuesta final. Te habrás dado cuenta que este nuevo número tiene más cifras que los números iniciales que teníamos que restar. Tenemos que quitar el número de la izquierda (en este caso, el 1) y sumarlo.
      A41E0
    +     1
    —————————
      A41E1
La respuesta es A41E1.
Ten en cuenta que puedes comprobar los resultados utilizando una calculadora científica.

Complemento C16

También podemos hacer la resta de dos números hexadecimales utilizando el complemento a 16, siguiendo un proceso similar que en el caso del complemento a 15. Para resolver la resta, tendremos que sumar al minuendo el complemento a dieciséis del sustraendo.
Para entender la resta en complemento a 16 lo analizaremos con el ejemplo anterior. Ésta es la resta que tenemos que resolver:
      A4FC9
    -   DE8
    —————————
     ¿?¿?¿?¿?
Primero tenemos que hacer que el minuendo y el sustraendo tengan la misma cantidad de números, al igual que ocurre en el proceso del complemento a 15.
Para ello, añadiremos ceros al sustraendo hasta que sean suficientes.
      A4FC9
    - 00DE8
    —————————
     ¿?¿?¿?¿?
Después, crearemos un nuevo número con la misma cantidad de números que el nuevo sustraendo.
Como en el sistema hexadecimal el mayor número que tenemos es el 15, que corresponde a la letra F, tendremos que escribir la F tantas veces como números tiene el sustraendo.
      FFFFF
    - 00DE8
    —————————
      FF217
La resta se hace siguiendo las normas generales de la resta común.
Ahora tenemos que sumarle 1 a la diferencia obtenida. Este paso es muy importante, ya que es la diferencia entre hacer la resta en complemento a 15 ó 16, y se suele olvidar fácilmente. Además, recuerda que estás sumando en sistema hexadecimal, siguiendo el mismo proceso explicado anteriormente.
      FF217
    +     1
    —————————
      FF218

A la diferencia obtenida y sumarle uno le denominaremos el complemento a 16.
Ahora tendremos que sumar el minuendo y el complemento a 16
      A4FC9
    + FF218
    —————————
     1A41E1
Con la suma obtenemos el resultado 1A41E1.
Te habrás dado cuenta que este nuevo número tiene más cifras que los números iniciales que teníamos que restas, cosa imposible en una resta (que la diferencia sea mayor que el minuendo y el sustraendo). Por eso, y estando en complemento a 16, tendremos que despreciar (eliminar) el número de la izquierda. En este caso es el 1.
La respuesta, por lo tanto, es A41E1.
En ambos casos la respuesta obtenida deberá ser la misma, ya que hemos resuelto la misma resta en sistema hexadecimal. Por lo tanto, podremos comprobar que hemos operado bien comparando las respuestas obtenidas en complemento a 15 y en complemento a 16 para una misma resta.
Además, ten en cuenta que puedes comprobar los resultados utilizando una calculadora científica.

Sistema octal


El sistema de numeración octal es un sistema de numeración en base 8, una base que es potencia exacta de 2 o de la numeración binaria. Esta característica hace que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8 dígitos (0, 1, 2, 3, 4, 5, 6, 7) y tienen el mismo valor que en el sistema de numeración decimal.
Como el sistema de numeración octal usa la notación posicional entonces para el número 3452,32 tenemos que: 2*80 + 5*81 + 4*82 + 3*83 + 3*8-1 + 2*8-2 = 2 + 40 + 4*64 + 3*512 + 3*0,125 + 2*0,015625 = 2 + 40 + 256 + 1536 + 0,375 + 0,03125 = 1834 + 0,40625d
Entonces, 3452,32q = 1834,40625d
El sub índice "q" indica número octal, se usa la letra q para evitar confusión entre la letra 'o' y el número 0. En informática, a veces se utiliza la numeración octal en vez de la hexadecimal. Tiene la ventaja de que no requiere utilizar otros símbolos diferentes de los dígitos. Es posible que la numeración octal se usara en el pasado en lugar de la decimal, por ejemplo, para contar los espacios interdigitales o los dedos distintos de los pulgares.
Es utilizado como una forma abreviada de representar números binarios que emplean caracteres de seis bits. Cada tres bits (medio carácter) es convertido en un único dígito octal (delgriego oktō 'ocho') Esto es muy importante por eso.

Operaciones

Suma octal:
Para sumar en octal se deben requerir el siguiente paso:
1: tener en cuenta que la operación que vamos a realizar esté en sistema octal.
2: ninguno de los números del resultado puede ser mayor que “8”
3: si el resultado es mayor que “8”, el minuendo pasa a llevar un “1” (ese “1” se suma al minuendo) y lo que sobra va en el resultado.



RESTA OCTAL:
Para restar en octal se deben requerir el siguiente paso:
1: tener en cuenta que la operación que vamos a realizar esté en sistema octal.
2: Pedir prestado siempre y cuando el número que está restando sea menor al sustraendo. Tomando en cuenta que la cifra que le va a prestar es “8”, y también se le resta uno a la cifra que está prestando.

Sistema binario



El sistema binario es un sistema de numeración en el que los números se representan utilizando las cifras 0 y 1, es decir solo 2 dígitos. Esto en informática y en electrónica tiene mucha importancia ya que las computadoras trabajan internamente con 2 niveles de Tensión lo que hace que su sistema de numeración natural sea binario, por ejemplo 1 para encendido y 0 para apagado. También se utiliza en electrónica y en electricidad (encendido o apagado, activado o desactivado). 
 Se basa en la representación de cantidades utilizando los dígitos 1 y 0. Por tanto su base es 2 (número de dígitos del sistema). Cada dígito de un número en este sistema se denomina bit (contracción de binary digit).


Pasar un número Decimal a su equivalente en Binario
   Según el orden ascendente de los números en decimal tendríamos un número equivalente en binario:

    El 0 en decimal sería el 0 en binario
    El 1 en decimal sería el 1 en binario
    El 2 en decimal sería el 10 en binario 
    El 3 en decimal sería el 11 en binario
    El 4 en decimal sería el 100 en binario
   
   Y así sucesivamente obtendríamos todos los números en orden ascendente de su valor, es decir obtendríamos elSistema de Numeración Binario y su equivalente en decimal. Pero que pasaría si quisiera saber el número equivalente en binario al 23456 en decimal. Tranquilo, hay un método para convertir un número decimal en binario sin hacerlo uno a uno.

Para hacer la conversión de decimal a binario, hay que ir dividiendo el número decimal entre dos y anotar en una columna a la derecha el resto (un 0 si el resultado de la división es par y un 1 si es impar). Para sacar la cifra en binario cogeremos el último cociente (siempre será 1) y todos los restos de las divisiones de abajo arriba, orden ascendente.

   Ejemplo queremos convertir el número 28 a binario

   28 dividimos entre 2 : Resto 0
   14 dividimos entre 2 : Resto 0
   7 dividimos entre 2 : Resto 1
   3 dividimos entre 2 : Resto 1 y cociente final 1

   Entonces el primer número del número equivalente en binario sería el cociente último que es 1, el segundo número del equivalente el resto ultimo, que también es 1, la tercera cifra del equivalente sería el resto anterior que es 1, el anterior que es 0 y el último número de equivalente en binario sería el primer resto que es 0 quedaría el 11100

   Conclusión el número 28 es equivalente en binario al 11.100.



 Pasar un Número Binario a su Equivalente en Decimal
   Pues ahora al revés. ¿Que pasaría si quisiera saber cual es el número equivalente en decimal del número binario por ejemplo 1001? Pues también hay método.

   PASO 1 – Numeramos los bits de derecha a izquierda comenzando desde el 0 (muy importante desde 0 no desde 1).
   PASO 2 – Ese número asignado a cada bit o cifra binaria será el exponente que le corresponde.
   PASO 3 – Cada número se multiplica por 2 elevado al exponente que le corresponde asignado anteriormente.
   PASO 4 - Se suman todos los productos y el resultado será el número equivalente en decimal

  

Operaciones Binarias
   Las operaciones binarias que se pueden realizar con número binarios son las mismas que en cualquier otro sistema, suma, resta, multiplicación y división.

   Suma de números Binarios 

   Las posibles combinaciones al sumar dos bits son
   
   0 + 0 = 0 
   0 + 1 = 1 
   1 + 0 = 1 
   1 + 1 = 10

   Un ejemplo con más cifras:

       100110101
      + 11010101
———————————
      1000001010

   Operamos como en el sistema decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 = 10, entonces escribimos 0 en la fila del resultado y llevamos 1 (este "1" se llama arrastre). A continuación se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la columnas (exactamente como en decimal).

   Resta de Números Binarios

   Las restas básicas 0-0, 1-0 y 1-1 son evidentes:
   
   0 - 0 = 0 
   1 - 0 = 1 
   1 - 1 = 0 
   0 - 1 = Es una resta imposible en binario por que no hay números negativos.

   La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada de la posición siguiente: 10 - 1 = 1 y me llevo 1, lo que equivale a decir en decimal, 2 - 1 = 1. Esa unidad prestada debe devolverse, sumándola, a la posición siguiente. Veamos algunos ejemplos:

   Dos ejemplos: 

    10001       11011001 
   -01010      -10101011
——————  ———————
    01111       00101110

   Multiplicación de Números Binarios

   0 x 0 = 0
   0 x 1 = 0
   1 x 0 = 0
   1 x 1 = 1

   Por ejemplo, multipliquemos 10110 por 1001:
      
      10110 
      x 1001 
  ———————
      10110 
    00000 
  00000 
 10110 
————————— 
 11000110


   División de números binarios

   Igual que en el producto, la división es muy fácil de realizar, porque no son posibles en el cociente otras cifras que UNOS y CEROS.

division numeros binario

   Se intenta dividir el dividendo por el divisor, empezando por tomar en ambos el mismo número de cifras (100 entre 110, en el ejemplo). Si no puede dividirse, se intenta la división tomando un dígito más (1001 entre 100).

   Si la división es posible, entonces, el divisor sólo podrá estar contenido una vez en el dividendo, es decir, la primera cifra del cociente es un UNO. En ese caso, el resultado de multiplicar el divisor por 1 es el propio divisor. Restamos las cifras del dividendo del divisor y bajamos la cifra siguiente.

   El procedimiento de división continúa del mismo modo que en el sistema decimal.

Sistema decimal



El sistema decimal es un sistema de numeración: una serie de símbolos que, respetando distintas reglas, se emplean para la construcción de los números que son considerados válidos. En este caso, el sistema toma como base al diez.

Esto quiere decir que el sistema decimal se encarga de la representación de las cantidades empleando diez cifras o dígitos diferentes: 0 (cero), 1 (uno), 2 (dos), 3 (tres), 4 (cuatro), 5 (cinco), 6(seis), 7 (siete), 8 (ocho) y 9 (nueve).
Es importante destacar que el sistema decimal es un sistema posicional. Los dígitos adquieren su valor de acuerdo a la posición relativa que ocupan. Esta posición, a su vez, depende de la base en cuestión.
 
Operaciones:



  • Suma
  • Resta
  • Multiplicación
  • División

Razonamiento lógico computacional


En palabras de la propia Wing “el pensamiento computacional implica resolver problemas, diseñar sistemas y comprender el comportamiento humano, haciendo uso de los conceptos fundamentales de la informática”. Es decir, que la esencia del pensamiento computacional es pensar como lo haría un científico informático cuando nos enfrentamos a un problema.
Otras definiciones de pensamiento computacional han ido surgiendo en la literatura científica desde entonces. Entre las más aceptadas se encuentran la de Aho y la de la Royal Society:
  • El pensamiento computacional es el proceso que permite formular problemas de forma que sus soluciones pueden ser representadas como secuencias de instrucciones y algoritmos.
  • El pensamiento computacional es el proceso de reconocimiento de aspectos de la informática en el mundo que nos rodea, y aplicar herramientas y técnicas de la informática para comprender y razonar sobre los sistemas y procesos tanto naturales como artificiales.
Una iniciativa muy interesante en relación a la definición del pensamiento computacional es la promovida por  la Sociedad Internacional de la Tecnología en la Educación (ISTE) y la Asociación de Profesores de Informática (CSTA), que han colaborado con líderes del mundo de la investigación y la educación superior, la industria y la educación primaria y secundaria para desarrollar una definición operativa que describa con precisión sus características esenciales y ofrezca un marco de trabajo y un vocabulario común con el que los profesionales de la educación puedan trabajar.
Según esta definición operativa, el pensamiento computacional es un proceso de resolución de problemas que incluye las siguientes características:
  • Formular problemas de forma que se permita el uso de un ordenador y otras herramientas para ayudar a resolverlos.
  • Organizar y analizar lógicamente la información.
  • Representar la información a través de abstracciones como los modelos y las simulaciones.
  • Automatizar soluciones haciendo uso del pensamiento algorítmico (estableciendo una serie de pasos ordenados para llegar a la solución).
  • Identificar, analizar e implementar posibles soluciones con el objetivo de lograr la combinación más efectiva y eficiente de pasos y recursos.
  • Generalizar y transferir este proceso de resolución de problemas para ser capaz de resolver una gran variedad de familias de problemas.

Tipos de datos, variables expresiones






Datos variables y constantes
Son espacios de memoria creados para contener valores que de acuerdo a su naturaleza
deseen mantenerse (Constantes) o que puedan variar (Variables).
Constante
Es un dato que permanece con un valor, sin cambios, es decir constante, a lo
largo del desarrollo del algoritmo o a lo largo de la ejecución del programa.
Se utiliza cuando necesitamos que el valor de determinada variable se mantenga
durante la ejecución del programa o hasta tanto se requiera su cambio.
Variable
Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en
el transcurso de la ejecución del programa.
Una variable descrita o declarada de un tipo determinado, sólo podrá contener,
valores de ese tipo.
Una variable declarada numérica entera, no podrá contener números reales.
Se utiliza cuando el dato que contiene sufrirá cambios o variará en la medida
que cambien los valores que maneje.
Las variables y constantes tienen básicamente, dos atributos:

EXPRESIONES Y OPERADORES
Las expresiones son combinaciones de constantes, variables, símbolos de operación
(matemáticos, lógicos y relacionales) y nombres de funciones que se utilizan en el
cuerpo del algoritmo. Las expresiones pueden ser simples o compuestas,
Las expresiones simples, son asignaciones directas a una variable o constante de
un valor numérico o carácter, véase el siguiente ejemplo:
Ejemplos de expresiones simples
Nombre de la Expresión Valor asignado Explicación o análisis
A = 6 A la variable A se le asigna el valor de 6
B = “DEFINITIVO” A la variable B se le asigna por valor “DEFINITIVO”
FECHA = dd/mm/aa A la variable FECHA se le asigna una fecha dada.
DÓLAR =2120 A la constante DÓLAR se le asigna el valor de 2120
PAIS =”VENEZUELA” A la constante PAIS se le asigna por valor “VENEZUELA”
Una expresión compuesta es la asignación a una variable o constante que surge de
la unión de valores numéricos, operadores aritméticos, de comparación o lógicos. Por
ejemplo:
Ejemplos de expresiones compuestas
Nombre de la Expresión Valor asignado Explicación o análisis
A = 6 * 2 A la variable A se le asigna el valor 12,
que resulta de multiplicar 6 por 2.
C = A + B A la variable C se le asigna el valor de
sumar A + B
EDAD = AÑOACTUAL – AÑONAC La variable EDAD obtendrá el resultado de
restarle a la constante AÑOACTUAL el
valor de la variable AÑONAC
SUELDO = DIASTRAB * SDIARIO La variable SUELDO tomará el valor de
multiplicar los días trabajados contenidos
en la variable DIASTRAB por el valor de
salario diario contenido en SDIARIO.
􀀢Ampliación. Las asignaciones se utilizan cuando:
a) Se requiere que una variable contenga un valor específico Dólar = 4.30
b) Se requiere asignar a una variable el valor de otra variable Antes= 10
Ahora = Antes
c) Obtenemos el resultado de una expresión Salario = Sueldo_Diario * Numero_Dias
La forma de escribir una asignación, es:
A = 20 Donde la variable que esta a la izquierda toma el valor que se le asigna.
Esto también indica que pierde el valor que hasta ahora tenía.
Expresiones Aritméticas
Son utilizadas para construir formulas matemáticas. Las variables y constantes utilizadas
son de naturaleza numérica, es decir números enteros o reales, y las operaciones
a efectuar son de orden aritmético.
Operadores aritméticos
Operadores Significado Ejemplo Interpretación
+ Sumar Si A =10 y B = 13 El Resultado es: 23
– Restar A – B – 3
* Multiplicar A * B 130
** Exponenciación A ** B 100.000.000.000.000
/ División A / B 0,76
A los operadores aritméticos podemos darles características de autoincremento
(++) autodecremento (–). El operador de incremento o decremento puede ir delante
o detrás de la variable, teniendo diferente significado. Si el operador ++ se coloca desRepública
19
pués de la variable se denomina postincremento, haciendo que primero se tome el valor
y después se incremente la variable.
Ejemplo: NT=T2++, donde NT toma el valor de T2 y luego se incrementa. Cuando el
operador ++ se sitúa después de la variable, sucede lo contrario, primero se incremente
la variable y después se toma el valor, y se denomina preincremento.
Ejemplo: NT = ++T2, donde NT primero se incrementa y luego se asigna a NT.
Existe el operador de predecremento y postdecremento, el cual actúa de forma análoga.
Por ejemplo, supongamos que en una empresa requieren diseñar un programa de
incentivo a los jóvenes empleados, entre los que se encuentran los aprendices que tienen
una edad por debajo de los 18 años y los empleados que tienen 18 y más años; de
acuerdo a su edad se les brinda la oportunidad de un bono, para los empleados fijos
equivale al 50 % de su salario y para los aprendices el 40 %. El algoritmo se desarrolla
realizando la lectura de los datos hasta que sea fin de archivo, calcular el incentivo correspondiente
e imprimir cédula, nombre, sueldo anterior, incentivo y sueldo nuevo.
☺ Ejemplo. Cálculo de bonificación.
Inicio
Declaración de variables
Leer Datos hasta fin_ archivo Cédula, Nombre,
Edad
Si Edad >= 18
INCENTIVO = SUELDO * 0,50
De lo contrario
INCENTIVO = SUELDO * 0,40
Fin si
MONTOTOTAL = SUELDO + INCENTIVO
IMPRIMIR RESULTADOS
Fin
Inicio
Declaración de variables que se requieren
Lectura de los datos de entrada
Evalúa el tipo de empleado, Si ya cumplió 18 años, pertenece a los empleados
fijos, y se calcula el monto del incentivo en base al 50%. De ser ese el
caso, se ejecutan las dos instrucciones que se encuentran dentro del primer
bloque.
De lo contrario, no se cumple la condición anterior, se trata de un aprendiz.
Se calcula lo previsto para estos (40%).
Se cierra la estructura
Se calcula el monto total y se imprimen los resultados es decir cédula, nombre,
sueldo anterior, incentivo, sueldo nuevo.
Fin del algoritmo
En este algoritmo se utiliza la denominada estructura de control selectivas: Si(If),
Entonces(Then), Si no(Else). Esta estructura responde a la necesidad de contar con
una instrucción que permita evaluar dada una condición, se realice una serie de actividades,
de no cumplirse, es decir, de lo contrario (Else), se desarrollarán otra serie de
actividades. Este proceso deberá incluirse dentro de un ciclo de repetición para que se
ejecute tantas veces como registros de empleados tenga. Estas estructuras se explicarán
mas adelante.
Expresiones Relacionales
Se construyen a partir de los operadores relacionales (de relación o comparación, =
, > , < , >=, <=, <>. Los operadores relacionales sirven para expresar las condiciones en
los algoritmos. Las variables y constantes utilizadas son de distinta naturaleza, el resultado
de una expresión lógica y relacional es de tipo lógico. El conjunto de operaciones
relacionales se muestran en la siguiente tabla
Operadores de relación
Se utilizan para expresar condiciones y describen una relación entre 2 variables.
Operadores Significado Ejemplo Interpretación
> Mayor que
Si A =10 y B = 13
A > B
El Resultado es:
FALSO
< Menor que A < B VERDADERO
>= Mayor igual A> = B FALSO
<= Menor igual A <= B VERDADERO
= Igual A = B FALSO
<> Diferente A <> B VERDADERO
Expresiones Lógicas
Las expresiones lógicas se utilizan en los programas cuando se requiere conocer o
evaluar si los valores de variables o constantes determinadas cumplen con ciertas condiciones.
De cumplirse o no, permiten un conjunto de instrucciones que pueden o no
ejecutarse. Una expresión lógica puede ser verdadera o falsa.
Ejemplo de expresión lógica.
Parte del Algoritmo diseñado para
preseleccionar a posibles candidatos
presidenciales, tomando como requisito
de selección sólo aquellos
que, simultáneamente, sean venezolanos
y mayores de treinta años.
Una expresión lógica “Y” (AND) es
verdadera, si y sólo sí, se cumplen
las dos condiciones simples. Como
se describe más adelante.
Lectura de datos
Si Nacionalidad = “V” Edad > 30 Entonces
Status “Aspirante”
Grabar en archivo de Aspirantes
Fin Si
􀀢Ampliación.
Expresiones lógicas, son expresiones que sólo pueden tomar uno de dos valores posibles: Verdadero
o Falso. Estas expresiones se forman combinando constantes lógicas, variables lógicas y otras expresiones
utilizando los operadores “Y” (AND), “O” (OR) y “NO” (NOT). El resultado de una expresión lógica
es también un valor de tipo lógico: verdadero o falso.
EVALUACIÓN DE EXPRESIONES
Cuando en una expresión concurre más de una operación, los paréntesis indicarán
prioridad, es decir, la operación encerrada entre paréntesis se realizará en primer lugar.
Asimismo, algunos operadores tendrán prioridad sobre otros.
Las operaciones aritméticas son efectuadas en el siguiente orden:
1. Menos unario o negación
2. Exponenciación
3. Multiplicación, división y división entera
4. Suma y resta
􀀢Ampliación.
En la expresión:
a + b / c,
Primero se realiza b/c, y luego al resultado de esto, se le sumará el
valor de a
Si se requiere que se sume a + b y el resultado dividirlo entre c,
se deberá escribir la fórmula, como sigue:
(a + b) / c,
En una expresión donde los operadores tienen la misma prioridad,
la operación se hará de izquierda a derecha.
Si la operación tiene exponenciales el orden será de derecha a izquierda
¿Qué es un contador?, ¿Qué es un acumulador?
Antes de iniciar con los tipos de representación de un algoritmo y de las estructuras
básicas utilizadas en el diseño de instrucciones, se requiere conocer ¿Qué es un contador?
y ¿Qué es un acumulador? Un contador es una variable cuyo valor se incrementa
o decrementa en una cantidad constante, cada vez que se produce un determinado suceso,
acción o iteración. Los contadores se utilizan con la finalidad de contar sucesos,
acciones o iteraciones internas en un bucle, proceso, subrutina o donde se requiera
cuantificar; deben ser inicializados antes del ciclo o proceso, e incrementados o decrementados
dentro del ciclo. La inicialización consiste en asignarle al contador un valor
inicial, es decir el número desde el cual necesitamos se inicie el conteo.
En conclusión un contador representa: ¿Cuántas veces se realiza el proceso como
tal?, ¿Cuántas veces sucede la aparición de un dato o un evento?, cuantifica tratamientos
determinados de información. En su conformación se utiliza, por lo general, una
constante como incremento.
􀀢Ampliación.
Para incluir un contador en un proceso deberá seguirse
los siguientes pasos:
Inicializar antes del ciclo
Incrementar dentro del ciclo
Si se requiere puede imprimirse el valor con el cual
finaliza el contador.
Un contador se construye colocando el nombre del
contador = nombre del contador + el valor del incremento.
Se lee de la siguiente manera: A la variable Cuentaprimo
(el contador en este caso) se le asigna el valor
que trae y se incrementa en uno, en la primera iteración
o lectura de datos, el valor que trae, es 0, al
ejecutarse la instrucción del contador se incrementa
en uno, y así sucesivamente hasta que se finalice el
ciclo. Este contador se incrementará cada vez que la
formula determine que el número en proceso es
primo.
Ejemplo: Se requiere obtener cuantos números primos existen del número
1 hasta el 100.
Inicio
Cuentaprimo= 0
Numero = 1
Leer Numero
Mientras Número <= 100
Aplicar fórmula primo
Si es primo Entonces
Cuentaprimo = Cuentaprimo + 1
Imprimir Número
Fin Si
Numero = Numero + 1
Fin Mientras
Imprimir Cuentaprimo
Fin
Un acumulador es una variable que como su nombre lo indica, suma sobre sí misma
un conjunto de valores, al finalizar con el ciclo contendrá, en una sola variable, la sumatoria
de todos los valores, que cumplen una determinada condición,. La diferencia entre
un contador y un acumulador es que mientras el primero va aumentando en una cantidad
fija preestablecida, el acumulador va aumentando en una cantidad o valor variable.
Representación: <Nombre del acumulador> = <Nombre del acumulador> + <Valor
variable>.
􀀢Ampliación.
Para incluir un acumulador en un proceso se deben seguir los
siguientes pasos:
Inicializar antes del ciclo
Incrementar dentro del ciclo
Por lo general se requiere la impresión de su valor.
Un acumulador se construye colocando el nombre del acumulador
= nombre del acumulador + el valor variable. Ej: Sumaprimo
Se lee de la siguiente manera: A la variable Sumaprimo se le
asigna el valor que trae, que en su inicio es cero, más el valor que
contiene la variable Número. De esta manera Sumaprimo contiene
el valor del primer número. Cuando ocurre el encuentro del siguiente
número primo y deba incrementarse el acumulador Sumaprimo,
la instrucción dice que Sumaprimo, es igual al valor que
trae o tiene actualmente, que en esta segunda iteración corresponde
al primer número primo, más el valor del siguiente número
primo encontrado, este proceso se realizará cada vez que se
encuentre un número primo, acumulando la sumatoria de todos los
números primos hasta llegar al número 100.
Ejemplo: Se requiere obtener cuantos números primos existen
del 1 hasta el 100, pero además se requiere su sumatoria.
Inicio
Cuentaprimo= 0, Sumaprimo = 0
Numero = 1
Leer Numero
Mientras Número <= 100
Aplicar fórmula primo
Si es primo Entonces
Cuentaprimo = Cuentaprimo + 1
Sumaprimo = Sumaprimo + Número
Fin Si
Imprimir Numero
Numero = Numero + 1
Fin Mientras
Imprimir Cuentaprimo, Sumaprimo
Fin