domingo, 17 de octubre de 2010

martes, 27 de mayo de 2008

EJEMPLOS DE DESARROLLO DE ALGORITMOS Y SUS PASOS

1. Escriba un algoritmo que calcule el interés obtenido por una suma de dinero, para ello se debe ingresar por teclado la cantidad de dinero (mayor a cero), la tasa de interés (se debe validar que siempre sea mayor que 0), el tiempo en días (debe ser mayor a 0).


1. Análisis del problema : Escribir un programa para calcular el interes obtenido por una suma de dinero en determinado tiempo.
Que piden? Calcular el interes de una suma de dinero sometido a una tasa de interes y un tiempo y estos datos a su vez que sean mayor a cero
Que me dan? Cantidad de dinero, tasa de interes y tiempo en dias
Como lo hago? verificando y validando los datos suministrados entonces realizar la operación de interes para asi mostrar el interes obtenido, de lo contrario mostrar un mensaje de error. (definición de variables )

int_obt = suma_di * tasa_int * tiempo

2. Algoritmo interes
Inicio
1 Conocer los datos de suma de dinero, tasa de interes, tiempos a someter el dinero
2 Evaluar los valores de los datos para saber si son valores aceptables entonces ejecutar la operación de interes y mostrar el resultado, si no se cumple lo anterior mostrar un mensaje de error.
Fin_Algoritmo

3. Definición y declaración de variables:
Entrada: suma_di (suma de dinero a calcular interes) : Real
tasa_int (tasa de interes dia) : Real
tiempo (tiempo en dias ) : Entero
Proceso: int_obt (interes obtenido) : Real


4. Programa interes
VAR
suma_di, tasa_int, int_obt : Real
tiempo Entero

Inicio
int_obt = 0

Escriba “suma de dinero a calcular interes :” Lea suma_di
Escriba “tasa de interes dia :” Lea tasa_int
Escriba “tiempo en dias :” Lea tiempo
Si suma_di > 0 entonces
Si tasa_int > 0 entonces
Si tiempo > 0 entonces
Int_obt = (suma_di * tasa_int * tiempo) / 100
Escriba “El interes obtenido es :” int_obt
Sino
Escriba “Error, el tiempo debe ser en dias y mayor a cero”
Fin_si
Sino
Escriba “Error, la tasa de interes dia debe ser mayor a cero”
Fin_si
Sino
Escriba “Error, la suma de dinero debe ser mayor a cero”
Fin_si
Fin








2. Escriba un programa que acepte la entrada de un número entero y se determine si es par o impar.
1. Análisis del problema : Escribir un programa para determinar si un numero es par o impar
Que piden? Calcular si un numero dado es par o impar
Que me dan? Un dato (numero)
Como lo hago? Un numero es par si es multiplo de dos, es decir si el resto de la division NUMERO/2 es cero de lo contrario es impar. Definición de variables.

NUMERO (numero a determinar si es par o impar)

Si NUMERO mod 2 = 0 el NUMERO es par de lo contrario es impar


2. Algoritmo calculo numero par o impar
Inicio
1 conocer el numero (NUMERO)
2 dividir este numero en dos y si el resto es cero es par de lo contrario es impar.
3 mostrar el mensaje del resultado
Fin algoritmo.

3. Definición y declaración de variables:
Entrada: NUMERO (numero a saber si es par o impar)
Proceso:




4. Programa calculo numero par o impar
VAR
NUMERO : Entero

Inicio

Escriba “digite un numero entero:” Lea NUMERO;
Si NUMERO mod 2 = 0 entonces
Escriba” el numero es par”;
Sino
Escriba” el numero es impar”;
Fin_si
Fin


Otra manera puede ser

Inicio

Escriba “ digite un numero entero:” Lea NUMERO;
repetir
NUMERO = NUMERO – 2;
hasta_que NUMERO < 2;
si NUMERO = 0 entonces
escribir”el numero digitado es par”;
sino
escribir”el numero digitado es impar”;
fin_si
fin









3. Escriba un Programa que facilite calcular la Retención en la fuente a descontar al empleado según el salario del empleado. Para ello se ingresa cédula del empleado, salario básico. La retención se debe calcular de acuerdo a los siguientes rangos y aplicando los porcentajes indicados:
Ø $ 2,250,000.oo a 2,500,000.oo 1.5 %
Ø $ 2,501,000.oo a 3,000,000.oo 2.0 %
Ø $ 3,000,000.oo a 3,500,000.oo 2.5 %
Ø $ 3,501,000.oo en adelante 3.0 %

1.ANALISIS: crear un programa para calcular la retencion de la fuente a descontar según la cantidad del salario del empleado.
Que me piden:
Calcular la retencion de la fuente a descontar según el salario del empleado aplicando los porcentajes indicados.
Que me dan:
El salario basico del empleado y el numero de la cedula.
Como lo hago:
Se le pide al trabajador que ingrese el numero de cedula, des pues se le pide que ingrese el salalrio basico, evaluo el salario dentro de los rangos que me especifican y deacuerdo a esos rangos hago un descuento.
a. (sal_base>=2.250.000. y <=2.500.000)
Rete_fu= (sal_base * 0.01)

b. (sal_base>=2.501.000 y <=3.000.000)
Rete_fu= (sal_base * 0.02)

c. (sal_base>=3,501,000)etonces
Rete_fu= (sal_ base * 0.03)


2. ALGORITMO retencion en la fuente

Inicio
1. Conocer salarios
2. Calcular la retencion en la fuente
3. Mostrar resultado
Fin

3.DEFINICION Y DECLARACION DE CONSTANTES Y VARIABLES.

Entrada = real: sal_base
Carácter: cedula
Proceso = real: Rete_fu


4.SEUDO LENGUAJE

Programa: retencion en la fuente

Inicio
Real sal_base, Rete_fu, porcen;
Carater cedula[10];

Rete_fu = 0

Escriba”dijite el numero de cedula “lea cedula;
Escriba”dijite salario base”lea sal_base

Si(sal_base>=2.250.000. y <=2.500.000)entonces
Rete_fu= (sal_base * 0.015);
Fin_si
Si(sal_base>=2.501.000 y <=3.000.000)entonces
Rete_fu= (sal_base * 0.02);
Fin_si
Si(sal_base>=3,501,000)etonces
Rete_fu= (sal_ base * 0.03);
Fin_si
Sino entoces
Escriba “usted no tendra descuento”;
Fin_si
Escriba “el valor a retener es : “, rete_fu;
Fin_si

5.PRUEBA DE ESCRITORIO

Salario del empleado
Porcentaje de descuento
Retencion en la fuente
2.300.000
0.015
34500
4.000.000
0.03
120000

LOGICA PROPOSICIONAL

LOGICA PROPOSICIONAL

Aproximadamente hablando, una afirmación o proposición es una construcción en un lenguaje, que es falsa o verdadera. Las preguntas y las órdenes, por ejemplo, no son afirmaciones. La afirmación ``x > 5'' es falsa cuando la ``variable'' x es menor o igual que 5, y verdadera de lo contrario. Así, hay proposiciones que son falsas o verdaderas según como se interpreten las variables que aparezcan en ellas.
La lógica proposicional consiste en construir afirmaciones a partir de otras ^ ~,v, →
utilizando los conectivos y , los cuales llamaremos conectivos proposicionales . Si y son afirmaciones cualquiera, entonces las siguientes también lo serán:
1. a^b, se lee ``a y b'' (conjunción).
2. a v b , se lee ``a o b(o ambas)'' (disyunción).
3. ~a, se lee ``no a'', o ``no es el caso que a'' (negación).
4. a → b, se lee ``a implica b'', ``si a entonces b'', ``b es necesario para a'', ``a es suficiente para b'' o ``b, siempre que a'' (implicación).
5. , se lee ``a si y sólo si b'', ``a es equivalente a b'' (doble implicación o equivalencia).
Desde temprana edad hemos aprendido el uso semántico de los anteriores conectivos, esto es, cómo juzgar la verdad o falsedad de afirmaciones donde ellos intervienen. Por ejemplo, sabemos que la afirmación ``a y b'' es verdadera en caso de que tanto a como b lo sean, y falsa de lo contrario, esto es, cuando a es falsa y b es verdadera, a es verdadera y b es falsa, o a y b son falsas. En la siguiente tabla, llamada tabla proposicional de verdad, resumimos el uso semántico de los distintos conectivos:

En la tabla anterior, y corresponden a ``falso'' y ``verdadero'' respectivamente. Por ejemplo, la segunda fila nos dice: si a es falsa y b es verdadera, entonces a ^ b es falsa, a v b es verdadera, etc.


El conectador de implicación, puede ser considerado como un condicional expresado de la siguiente forma:
Si A => B va a ser verdadero,
entonces toda vez que A sea verdadero, B debe ser siempre verdadero.
Para los casos en los cuales A es falso, la expresión A => B, es siempre verdadera, independientemente de los valores lógicos que tome B, ya que el operador de implicación no puede hacer inferencias acerca de los valores de B.
Existen varias equivalencias en lógica proposicional, similares a las del álgebra Booleana. Estas se dan en la Tabla 4.3.
DENOMINACIÓN REPRESENTACIÓN LÓGICA
Leyes Equipotenciales A => B = ~A v B
A ^ ~A = F
A v ~A = V
Leyes Conmutativas A ^ B = B ^ A
A v B = B v A
Leyes Distributivas A ^ (B v C) = (A ^ B) v (A ^ C)
A v (B ^ C) = (A v B) ^ (A v C)
Leyes Asociativas A ^ (B ^ C) = (A ^ B) ^ C
A v (B v C) = (A v B) v C
Leyes Absortivas A ^ (A v B) = A
A v (A ^ B) = A
Leyes de DeMorgan ~(A ^ B) = ~A v ~B
~(A v B) = ~A ^ ~B
Tabla 4.3 Equivalencias en lógica proposicional




MODUS PONENDO PONENS (PP)

p → q “Si llueve, entonces las calles se mojan” (premisa)
p “Llueve” (premisa)
__________________________________________________

q “Luego, las calles se mojan” (conclusión)



El condicional o implicación es aquella operación que establece entre dos enunciados una relación de causa-efecto. La regla ‘ponendo ponens’ significa, “afirmando afirmo” y en un condicional establece, que si el antecedente (primer término, en este caso p) se afirma, necesariamente se afirma el consecuente (segundo término, en este caso q).
MODUS TOLLENDO TOLLENS (TT)
‘Tollendo tollens’ significa “negando, niego”, y se refiere a una propiedad inversa de los condicionales, a los que nos referíamos en primer lugar.
p → q “Si llueve, entonces las calles se mojan”
~q “Las calles no se mojan” ______________________________________________
~p “Luego, no llueve”
Si de un condicional, aparece como premisa el consecuente negado (el efecto), eso nos conduce a negar el antecedente (la causa), puesto que si un efecto no se da, su causa no ha podido darse.

Esto nos permite formular una regla combinada de las ambas anteriores, consecuencia ambas de una misma propiedad de la implicación; la regla ponendo ponens sólo nos permite afirmar si está afirmado el antecedente (el primer término de la implicación), y la regla tollendo tollens sólo nos permite negar a partir del consecuente (segundo término de la implicación); ambas consecuencias se derivan de que la implicación es una flecha que apunta en un único sentido, lo que hace que sólo se pueda afirmar a partir del antecedente y negar sólo a partir del consecuente.

DOBLE NEGACIÓN (DN)
~~p ↔ p

El esquema representa, “p doblemente negada equivale a p”. Siguiendo el esquema de una inferencia por pasos, la representaríamos así:
~~p “No ocurre que Ana no es una estudiante”
_____________________________________________________
p “Ana es una estudiante”
La regla ‘doble negación’, simplemente establece que si un enunciado está doblemente negado, equivaldría al enunciado afirmado.
ADJUNCIÓN Y SIMPLIFICACIÓN

Adjunción (A):
Si disponemos de dos enunciados afirmados como dos premisas separadas, mediante la adjunción, podemos unirlos en una sola premisa utilizando el operador Λ (conjunción).

p “Juan es cocinero”
q “Pedro es policía”
___________________________________
p Λ q “Juan es cocinero y Pedro es policía”
Simplificación (S): obviamente, es la operación inversa. Si disponemos de un enunciado formado por dos miembros unidos por una conjunción, podemos hacer de los dos miembros dos enunciados afirmados por separado.
p Λ q “Tengo una manzana y tengo una pera”
____________________________________________
p “Tengo una manzana”
q “Tengo una pera”
MODUS TOLLENDO PONENS (TP)

La disyunción, que se simboliza con el operador V, representa una elección entre dos enunciados. Ahora bien, en esa elección, forma parte de las posibilidades escoger ambos enunciados, es decir, la verdad de ambos enunciados no es incompatible, si bien, ambos no pueden ser falsos.
A partir de lo anterior, se deduce la siguiente regla, denominada tollendo ponens (negando afirmo): si uno de los miembros de una disyunción es negado, el otro miembro queda automáticamente afirmado, ya que uno de los términos de la elección ha sido descartado.
p V q “He ido al cine o me he ido de compras”
~q “No he ido de compras”
_________________________________________________________ p “Por tanto, he ido al cine”
LEY DE LA ADICIÓN (LA)
Dado un enunciado cualquiera, es posible expresarlo como una elección (disyunción) acompañado por cualquier otro enunciado.
a “He comprado manzanas”
______________________________________________________________
a V b “He comprado manzanas o he comprado peras”
SILOGISMO HIPOTÉTICO (SH)
Dados dos implicaciones, de las cuales, el antecedente de la una sea el consecuente de la otra (el mismo enunciado), podemos construir una nueva implicación cuyo antecedente sea el de aquella implicación cuya consecuencia sea el antecedente de la otra implicación, y cuyo consecuente sea el de ésta última, cuyo antecedente era consecuencia del primero.
Expresado de otro modo, si una causa se sigue una consecuencia, y ésta consecuencia es a su vez causa de una segunda consecuencia, se puede decir que esa primera causa es causa de esa segunda consecuencia, del mismo modo que, si una bola de billar roja golpea a otra bola blanca que a su vez golpea a una bola negra, la bola roja es causa del movimiento de la bola negra. Expresado en forma de inferencia lógica:
p → q “Si la bola roja golpea a la bola blanca, la bola blanca se mueve”
q → r “Si la bola blanca golpea a la bola negra, la bola negra se mueve”
_______________________________________________________________ p → r “Si la bola roja golpea a la bola blanca, la bola negra se mueve”
SILOGISMO DISYUNTIVO (DS)

Dadas tres premisas, dos de ellas implicaciones, y la tercera una disyunción cuyos miembros sean los antecedentes de los condicionales, podemos concluir en una nueva premisa en forma de disyunción, cuyos miembros serían los consecuentes de las dos implicaciones. Lógicamente, si planteamos una elección entre dos causas, podemos plantear una elección igualmente entre sus dos posibles efectos, que es el sentido de esta regla.
p → q “Si llueve, entonces las calles se mojan”
r → s “Si la tierra tiembla, los edificios se caen”
p V r “Llueve o la tierra tiembla”
____________________________________________________
q V s “Las calles se mojan o los edificios se caen”
SIMPLIFICACIÓN DISYUNTIVA (SD)
Si disponemos de dos premisas que corresponden a dos implicaciones con el mismo consecuente, y sus antecedentes se corresponden con los dos miembros de una disyunción, podemos concluir con el consecuente de ambas implicaciones.
p V q “Helado de fresa o helado de vainilla”
p → r “Si tomas helado de fresa, entonces repites”
q → r “Si tomas helado de vainilla, entonces repites”
____________________________________________________
r Luego, repites
LEY CONMUTATIVA
Esta ley, no es válida para la implicación, pero sí para conjunción y para la disyunción. Una conjunción es afirmar que se dan dos cosas a la vez, de modo que el orden de sus elementos no cambia este hecho. Igualmente, una disyunción es presentar una elección entre dos cosas, sin importar en qué orden se presente esta elección. Así pues,
p Λ q ↔ q Λ p “«p y q» equivale a «q y p»”
p V q ↔ q V p “«p ó q» equivale a «q ó p»
LEYES DE MORGAN (DM)
Esta ley permite transformar una disyunción en una conjunción, y viceversa, es decir, una conjunción en una disyunción. Cuando se pasa de una a otra, se cambian los valores de afirmación y negación de los términos de la disyunción/conjunción así como de la propia operación en conjunto, como podemos observar aquí:
p Λ q p V q
___________ ____________
~ (~p V ~q) ~ (~p Λ ~q)

La tautología en la lógica
Sin embargo, en lógica se entiende por tautología aquella proposición cuya tabla de verdad da siempre el valor de verdad V en todos los casos posibles de los valores de verdad (V, F) de cada una de las proposiciones que la integran, o de un modo más sencillo: la supuesta explicación de algo mediante una perogrullada, la "explicación" o definición de algo mediante una ligera variación de palabras que tienen en conjunto el mismo significado ya conocido de lo supuestamente explicado (Ej.: "existe el calor porque lo provoca el calórico").
Tautología: en todos los casos la forma del argumento ofrece un resultado verdadero, por lo que el argumento es válido.
Consideremos la proposición p v ~p cuya tabla de verdad siempre será verdadera. Es una tautología. Como cuando aseguramos como verdadero que “o llueve o no llueve”.
Pero en lógica, lo tautológico se convierte en la esencia del discurso deductivo, o mejor dicho de la inferencia deductiva.
La validez lógica consiste precisamente en que no puede darse el caso de que siendo verdad el antecedente, no lo sea el consecuente.
Dicho en otras palabras la tabla de verdad del esquema de inferencia que enlaza el antecedente y el consecuente da siempre el valor de verdad V, y en todos los casos posibles de los valores de verdad de las proposiciones que la integran. Es una tautología.

Sea el esquema de inferencia [ ( p → q) ^ ( q → r)] → ( p → r) cuya tabla de verdad muestra ser una tautología. Un esquema que podría modelilzarse como: “Si llueve el suelo está mojado y si el suelo está mojado entonces las ruedas de los coches patinan. Por tanto si llueve las ruedas de los coches patinan”. Un argumento fácil de comprender.
Lo que quiere decir que todos los argumentos deductivos válidos son, por definición, tautologías.
Las tautología son infinitas en número, pero, algunas pueden ser consideradas como leyes lógicas es decir como modelos aplicables para las inferencias, cuando operamos en un cálculo formal.
Cuando en un cálculo se eligen algunas leyes lógicas como el fundamento de todo, es decir, como axiomas, entonces el cálculo es un cálculo axiomático.
Cuando usamos tales esquemas de inferencia en el lenguaje estamos argumentando.
Igual que la lógica, las matemáticas pueden ser consideradas como la ciencia de hacer tautologías particularmente elaboradas de una forma rigurosa. Un teorema es un ejemplo de tautología útil.
Para Ludwig Wittgenstein, la tautológica se trata de una proposición que necesariamente es verdadera (A es igual a A), con independencia de que represente un hecho real o no. De este modo se acepta "a priori" (previo a la experiencia) y sirve de premisa obvia.
Este tipo de verdades que no dependen de los hechos han sido consideradas de diversas maneras en la historia de la filosofía: verdad necesaria, verdad analítica, verdad de razón.

OPERADOR, ASIGNACION, CONTADOR Y ACUMULADOR

Operadores

Las variables y las constantes pueden se procesadas utilizando operadores y funciones adecuadas a sus tipos




Operadores aritméticos


símbolo..................significa
^,**.....................exponente
+........................suma
-........................Resta
mod......................modo resto o residuo
*........................multiplicación
/........................Division
div......................división entera


Las expresiones que contienen variables, constantes y operadores aritméticos se llaman expresiones aritméticas

Ejemplo 2+4 =6 4+5.0=9.0

El operador / produce un resultado real con independencia del tipo de operador

Ejemplo 7/2 = 3.5 7.0/2 = 3.5 7/2.0 = 3.5 7.0/2.0 = 3.5

En las operaciones div y mod los operadores deben ser enteros

Ejemplo 7div2 = 3 12div3 =4 0div5 = 0
7mod2 =1 12mod3 = 0 0mod5 = 0

Operadores lógicos (boléanos)

Solo pueden tomar dos valores verdadero o falso

Las expresiones lógicas se forman combinando constantes y variables con operadores lógicos y relacionales


Operadores relacionales o de relación, son los que utilizan para expresar condiciones (a > b)

símbolo........significado
<> ............diferente o distinto
<= ............menor o igual que
> .............mayor que
= .............Igual
<= ............menor o igual que
> .............Mayor que



Ejemplo


A.........B............expresión lógica.......resultado

3.........6............3<6....................verdadero
0.........1............0>1....................falso
4.........2............4=2....................falso
8.........5............8<=5...................falso
9.........9............9>=9...................verdadero
5.........5............5<>5...................falso


Operadores lógicos

Permiten relación lógica y sirven para representar condiciones compuestas

Los operadores básicos son not (no), and (y), or (o)


Tabla de verdad de (y)
P ...........Q ........P ^ Q
1 ...........1 ........1
1 ...........0 ........0
0 ...........1 ........0
0 ...........0 ........0


Tabla de verdad de (o)

P.......Q.......P v Q
1.......1.......1
1.......0.......1
0.......1.......1
0.......0.......0


Negación

P......~P
1......0
0......1

Asignaciones

La instrucción de asignación se utiliza para asignar valores a una variable o lo que es igual cambiar el valor almacenado en la posición de memoria de una variable

Ejemplo

A = 5 A almacena el valor 5
B = 5 B almacena el valor 5
A = B+2 A toma el valor de 5 + 2 = 7


Asignación aritmética

AMN = 3 + 4 + 7 al evaluar la expresión, la variable AMN toma el valor de 14

Asignación lógica

Supóngase que M y P son variables tipo lógico

M = 8 < 5 falso
P = 7 > 6 verdadero

Asignacion de carácter

D = “ calle 34”


Contador

Es una variable cuyo valor incrementa o decrementa en una cantidad fija (incremento) en cada interaccion

Se representa con la instrucción

CONT = CONT+1

Acumulador

Un acumulador o totalizador es una variable cuya mision es almacenar cantidades variables resultantes de sumas sucesivas. Realiza la misma función que un contador con diferencia de que el incremento o decremento de cada suma es variable en lugar de constante como en el caso del contador

Se representa con la instrucción

S = S+N donde N es una variable

VARIABLE, CONSTANTE Y PALABRAS RESERVADAS

Definición de variable: una variable es un objeto o partida de dato cuyo valor puede cambiar durante el desarrollo del algoritmo o ejecución del programa

Tipos de variables : enteras, reales, lógicas de carácter o cadena
Las variables solo toman valores del tipo que son, de lo contrario si se asigna valor de otro tipo se produce un error de tipo.

Las variables se identifican por los siguientes atributos; nombre que lo asigna y tipo que describe el uso de la variables.
Las variables deben iniciar con un carácter letra (A,a…...Z,z) y posteriormente carácter (letras o dígitos admitiendo el subrayado y la longitud es de 8 caracteres.
Es recomendable declarar las variables en la cabecera del programa y naturalmente del algoritmo

Ejemplo:

Num_emp // numero de identificación del empleado
Horas // horas trabajadas
Paga_mes // salario mensual



Palabra reservadas (key words)

Son palabras claves y propias de un lenguaje de programación que constituyen la base de las sentencias, funciones, expresiones y órdenes.

Palabras reservadas en algoritmos inicio, fin, si, entonces, mientras

Definición de constante

Son datos cuyo valor no cambian durante el desarrollo del algoritmo o ejecución del programa, existen varios tipos como tipos de de datos

Constante entera 0 137 -1234
Constante real 1.234 -0.4567 +1234.78
Constante carácter “a” “B” “+”
constante cadena “ el viernes doce”

constantes con nombre

pi= 3.141592 constante π
e= 2.71828 base logaritmo natural

lunes, 26 de mayo de 2008

TIPOS DE DATOS

Que es un dato?

Es la expresión general que describe los objetos con los cuales opera una computadora; a nivel de maquina es un conjunto o una secuencia de bits (0 ó 1).

Existen dos tipos de datos:

Simples: sin estructura y compuestos: estructurados, los simples se dividen en
numéricos: que son los relativos a los diferentes tipos de números, enteros o reales

Enteros: es un subconjunto finito de los números enteros, son números completos y no tienen componentes fraccionarios o decimales y pueden ser positivos o negativos y tienen un rango o intervalo que va desde -32768 a +32767.
ejemplo 7.0 es un número real
7 es un número entero

Reales: Son números con parte entera y parte decimal que pertenecen al conjunto de los números reales y su rango o intervalo que va desde -62768 a +62767
ejemplo:
coma fija : 3.84567812
coma flotante : 4.86732 E9

Datos tipo carácter (cadena): son los caracteres que puede interpretar la computadora y es un conjunto finito y ordenado.
alfanuméricos A,a,B,b,C,c.........................Z,z
dígitos 0,1,2,3,4............9
especiales $,*,-,+^....................

Datos lógicos: es aquel que puede tomar uno de dos valores, cierto o verdadero y falso, se emplea para representar objetos de tipo binario o digital (0 y 1).


Otros tipos de datos:
Estructurados: * arrays
* registros
*conjuntos
* ficheros

Enumerados: * definidos por el usuario

es un conjunto de datos que conservan un orden tal que cada elemento tiene un sucesor y un predecesor excepto el primero que no tiene predecesor y el ultimo que no tiene sucesor