Pseint Tutorial

download Pseint Tutorial

If you can't read please download the document

description

Educativo

Transcript of Pseint Tutorial

Tutorial PSEINT

En este tutorial veremos los siguientes temas:

Definicin de un algoritmo

Tipos de datos

Representaciones de un algoritmo Lenguaje natural Pseudocdigo Diagrama de flujo

Lenguaje de programacin Pseint -

Tipos de datos -

Expresiones -

Acciones secuenciales -

Estructuras de control -

Arreglos -

Notaciones Ejercicios

Donde Descargar el programa

Si buscas en google el pseint te dirige al sitio de sourceforge

http://pseint.sourceforge.net/index.php?page=descargas.php

debes descargar la version para windows (bandera de 4 colores de microsoft)luego de descargar un archivo de extension .exe, al hacer clic este se instala en tu computadoraActualmente existe la version 20131008 que esta en el nombre del archivo descargado.

1. DEFINICIN DE UN ALGORITMO

Un algoritmo es una lista de operaciones o acciones (instrucciones) para poder encontrar la solucin a un problema. Estas instrucciones deben estar ordenadas, estar bien definidas (no ser ambiguas, que cada instruccion tenga un solo significado), finitas (un numero especifico de las mismas para poder finalizar la tarea)

Esta compuesto por operaciones, mtodos y variables.

Entre las operaciones se conocen las matemticas: +, -, /, *, funciones trigonometricas, raiz cuadrada, etc.

Los mtodos son las funciones disponibles: Mostrar en pantalla. Pedir un dato

Las variables pueden ser de diversos tipos: por ejemplo la variable entera de nombre dato puede contener los valores -1, 2, 3, etc. La variable booleana (logica) llamada nombre puede contener los valores V o F (Verdadero o Falso). Una variable de tipo cadena o string llamada palabra puede contener los valores aaaaaa, "Hola Mundo", etc. La variable de tipo caracter llamada vocal puede contener los valores 'a', 'b', '$', etc.

2. TIPOS DE DATOS

Numerico: representa un numero, dentro de este tipo de dato pueden existir:los enteros: numeros como el 12, 1 , -5, etclos reales (con coma decimal), como el 1.3, 5.4, -1.33, etcBooleano: representa un valor logico que solo puede ser verdadero o falsoCaracter: representa a una sola letra del sistema alfanumerico ascci, como por ejemplo 'a', '@', '$', '3',etcString o cadena de caracteres: representa una palabra entera, como ser: "Hola Mundo", "Jose", "a", etc

REPRESENTACIONES DE UN ALGORITMO

Todo algoritmo puede ser representado por:

Lenguaje naturalPseudocdigo Diagramas de flujoLenguajes de programacin

4. LENGUAJE NATURAL

Problema : Sumar 2 nmeros.Representacin mediante Lenguaje natural:

Inicio SumaIngresar primer nmeroGuardar nmero en variable aIngresar segundo nmeroGuardar nmero en variable bSumar a y bGuardar resultado en RMostrar RFin

Desventajas: Ambiguo y Extenso

PSEUDOCDIGO

Es una forma de representar un algoritmo, que se acerca a los lenguajes de programacin y con elementos del lenguaje natural.El pseudocdigo se compone de:

CabeceraDeclaracionesCuerpo

La cabecera es la parte del algoritmo que posee el nombre de ste.Las declaraciones son las variables y constantes que utilizar el algoritmo para resolver el problema.El cuerpo son el conjunto de instrucciones o acciones que estn entre el Inicio y el Fin.

6. PSEUDOCDIGO

La estructura del pseudocdigo es la siguiente:

Proceso SinTituloaccion1;accion2;....accionN;FinProceso

La seccin Proceso SinTitulo es la cabecera del algoritmo, aqui debe estar el nombre del algoritmoLa seccin accin 1, accin 1, es el cuerpo del algoritmo, es la lista de intrucciones ordenadas y separadas por el punto y coma. Donde termina un punto y coma termina una intruccion (sentencia) y comienza la siguiente.En este caso como utilizaremos el Pseint la seccin de declaraciones del algoritmo no se toma en cuenta, ya que el software se encarga de asignarle el tipo de dato a cada variable dependiendo del uso que se le d.

PSEUDOCDIGO: Representacin mediante PseudocdigoEl ejemplo anterior de sumar dos numeros, en pseudocodigo de Pseint se veria como:

Proceso sumaEscribir "Ingrese primer numero" ;Leer a;Escribir "Ingrese segundo numero" ;Leer b;c = 5)Informar (papeles) (1)finDebemos tener en cuenta que la instruccin (1) est dentro de una instruccin de seleccin y porlo tanto slo se ejecuta si la condicin es verdadera, es decir, si la variables papeles qued en unvalor >=5.Ejemplo 3.7: Recoger e informar todos los papeles de la avenida 1.En este caso nos interesa saber la cantidad de papeles de la avenida. Una vez que hemos juntadotodos los papeles de la avenida, debemos informar la cantidad recogida. El algoritmo sera elsiguienteprograma Cap3Ejemplo7variablespapeles:numerocomenzariniciarpapeles:=0repetir 99 (1)mientras (hayPapelEnLaEsquina) (2)tomarPapel{registramos que se tomo un papel}papeles:=papeles+1mover{procesamos la ltima esquina}mientras (hayPapelEnLaEsquina) (3)tomarPapel{registramos que se tomo un papel}papeles:=papeles+1Informar (papeles) (4)fin

En (1) indicamos la estructura de control para recorrer toda una avenida. Como se sabe lacantidad de cuadras de una avenida completa es 99.En (2) contamos todos los papeles de la esquina en donde se encuentra parado el robot.En (3) contamos los papeles de la ltima esquina, es decir, la (1,100).En (4) informamos el valor de todos los papeles recogidos en el recorrido, el cual se encuentraalmacenado en papeles.Qu modificara en el algoritmo si se quisiera informar los papeles de cadaesquina?3.7 Representacin de ms de un dato dentro del algoritmoEn las secciones anteriores se present la necesidad de almacenar informacin adicional pararesponder a los requerimientos del problema. Es importante reconocer que los algoritmosdesarrollados en los captulos 1 y 2, slo se referan al funcionamiento de las estructuras decontrol y no al manejo de los datos.Contar con la posibilidad de asociar un identificador a un valor es equivalente a poder registrar"un dato para recuperarlo o modificarlo posteriormente.Como resumen de todo lo visto hasta el momento se presentar un ejemplo ms complejo,repitiendo la explicacin del proceso de modificacin de la informacin y las posiblescomparaciones a utilizar.Ejemplo 3.8: El robot debe recoger e informar la cantidad de flores y papeles de la esquina (1,1).En este ejercicio debemos representar dos datos, la cantidad de flores de la esquina y la cantidadde papeles de la esquina. Para esto, vamos a necesitar dos variables una que nos permita contar lacantidad de flores de la esquina y otra que nos permita contar la cantidad de papeles. El algoritmoquedara de la siguiente forma:

programa Cap3Ejemplo8variablespapeles:numeroflores:numerocomenzariniciarpapeles:=0 (1)flores:=0 (2)mientras (hayPapelEnLaEsquina) (3)tomarPapel{registramos que se tom un papel}papeles:=papeles+1mientras (hayFlorEnLaEsquina) (4)tomarFlor{registramos que se tom una flor}flores := flores + 1Informar (flores) (5)Informar (papeles) (6)finEn (1) indicamos que no se ha recogido ningn papel todava. Lo mismo ocurre con las flores en(2).En (3) contamos todos los papeles que existen en la esquina. Lo mismo hacemos en (4) pero paralas flores. En este punto podemos ver que la cantidad de papeles de la esquina va almacenndoseen la variable papeles y la cantidad de flores en la variable flores.En (5) y (6) se informa el valor de flores y papeles de la esquina respectivamente.Ejemplo 3.9: Modifique el ejercicio anterior para que el robot evale cual de las cantidades(flores y papeles) result mayor e informe dicha cantidad.Siguiendo el razonamiento anterior, luego de recoger y contar las flores y los papeles, deberemosanalizar cul de los dos valores obtenidos es el mayor e informar dicho valor. El algoritmoquedara de la siguiente forma:programa Cap3Ejemplo9variablespapeles:numeroflores:numerocomenzariniciarpapeles:=0flores:=0mientras (hayPapelEnLaEsquina)tomarPapelpapeles:=papeles+1mientras (hayFlorEnLaEsquina)tomarFlorflores := flores + 1Expresin de Problemas y AlgoritmosU. N. L. P.{comparamos las cantidades recogidas}si (flores>papeles) (1)Informar(flores)sinoInformar(papeles)finEn (1) se verifica si la cantidad de flores es mayor a la de papeles, por medio de una estructura deseleccin, en caso que la condicin resulte verdadera se informa la cantidad de flores, en cambio,si la condicin es falsa se informa la cantidad de papeles.Qu informa si ambas variables contienen el mismo valor?

3.8 ConclusionesHasta aqu se ha presentado la sintaxis de un algoritmo que utiliza datos para la solucin de unproblema. Tambin se ha mostrado cmo crear, inicializar y modificar estos datos en unasolucin.Contar con la posibilidad de representar informacin adicional al problema mejora la potencia deexpresin del algoritmo, ya que los atributos de los objetos con los que opera podrn estarreflejados en su interior.Tambin vimos que para representar esta informacin el lenguaje Visual da Vinci nos provee dostipos de datos: el tipo numero y el tipo logico.Hasta aqu se han presentado los elementos que componen un algoritmo: el control y los datos.De todo lo visto, entonces, podemos concluir que un algoritmo es una secuencia de instruccionesque utiliza y modifica la informacin disponible con el objetivo de resolver un problema.

Ejercitacin DAtos y Variables1. Indique que hacen los siguientes programas considerando las diferentes situaciones quepodran presentarse:(a) i. todas las esquinas de la avenida 6 tienen al menos 1 florii. slo la esquina (6,20) tiene flor.iii. ninguna esquina de la avenida 6 tiene florprograma QueHace1comenzariniciarPos(6,1)mientras HayFlorEnLaEsquina & (PosCa < 100)movertomarFlorfin(b) i. todas las esquinas de la avenida tienen al menos 1 flor y 1 papel.ii. slo la esquina (6,20) tiene flor y ningn papel, las dems estn vacas.iii. slo la esquina (6,20) tiene papel y no tiene ninguna flor, las dems estn vacas.iv. ninguna esquina de la avenida 1 tiene flor ni papelprograma QueHace3variablesnro : numerocomenzariniciarnro := 0repetir 10si ~(HayFlorEnLaEsquina | HayPapelEnLaEsquina)nro := nro + 1moverInformar(nro)fin2. Programe al robot para que informe la cantidad de flores que hay en (10,30) sin modificar elcontenido de la esquina.3. Programe al robot para que informe la cantidad de papeles que hay en la calle 72.(a) Recogiendo todos los papeles.(b) Sin modificar el contenido de cada esquina.

4. Programe al robot para que informe la cantidad de esquinas vacas que hay en la ciudad.5. Programe al robot para que recorra la avenida 72 recogiendo una flor en cada esquina. Si enalguna esquina del recorrido no puede hacerlo(a) debe continuar con la prxima esquina hasta completar la avenida.(b) debe detenerse e informar en que esquina quedo parado.6. (a) Realizar un algoritmo que permite al robot efectuar un recorrido en escalera, comenzandoen (1,1) y terminando en (100, 100). Cada escaln debe ser de una cuadra de lado.i. Utilizando repetir para controlar el final del recorrido.ii. Utilizando mientras para controlar el final del recorrido.(b) Modifique a.i) para que el recorrido comience en (1,100) y termine en (51,50).(c) Modifique a.i) para que el robot informe, al terminar el recorrido, la cantidad total deesquinas vacas (sin flor ni papel) que encontr.(d) Modifique c) para realizar el mismo recorrido pero ahora con escalones de 2 cuadras delado. En qu esquina termina el ltimo escaln completo?7. Escriba un programa que le permita al robot caminar por la calle 7 hasta encontrar 20 flores.Hay como mximo una flor por esquina. Seguro existen 20 flores.8. Escriba un programa que le permita al robot caminar por la calle 7 hasta encontrar 20 flores.Hay como mximo una flor por esquina. Pueden no haber 20 flores.9. Escriba un programa que le permita al robot caminar por la calle 7 hasta encontrar 20 flores.Puede haber ms de una flor por esquina. Seguro existen 20 flores.10. El robot debe limpiar de papeles la calle 34. Al terminar el recorrido debe informar cuantasesquinas tenan originalmente exactamente 6 papeles.11. El robot debe limpiar la esquina (89,76) de la siguiente forma: si contiene ms papeles queflores debe dejar solo un papel y si contiene ms flores que papeles debe dejar solo una flor.Si originalmente la esquina est vaca o contiene igual cantidad de flores que de papeles,debe quedar vaca.12. Programe al robot para que recorra la calle 2 hasta encontrar al menos 10 papeles.13. Programe al robot para que recorra la calle 2 hasta encontrar 10 papeles y 4 flores.14. Programe al robot para que recorra la calle 2 hasta encontrar una esquina con 10 papeles y 4flores. La esquina seguro existe.15. Programe al robot para que recorra el permetro de la ciudad e informe la cantidad de papelesrecogidos.16. Programe al robot para que recorra el permetro de la ciudad e informe la cantidad de papelesrecogidos en cada lado.

17. Programe al robot para que recorra el permetro de la ciudad e informe la cantidad de papelesrecogidos en cada esquina.18. Programe al robot para que recorra el permetro de la ciudad e informe la cantidad de papeles

recogidos en todo el permetro, en cada lado y en cada esquina.

Condiciones Lgicas, el uso de la conjuncin, disyuncin y negacion Condiciones Lgicas. Proposiciones lgicas, simbolizacin y tablas de verdad

Cuando se emplearon condiciones para definir las acciones a tomar en la seleccin y la iteracin, como ser HayPapelEnLaBolsa, esta es una condicin simple pero en la realidad las condiciones son compuestas y debe indicarse la forma en que pueden combinarse varias condiciones. Los ejercicios vistos hasta el momento fueron lo suficientemente simples como para poder ser resueltos con una pregunta sencilla. Sin embargo, en un problema real, esto no es as y se requiere combinar expresiones para poder representar una situacin a evaluar. Por esta causa se introducirn y repasarn algunos conceptos bsicos de la lgica proposicional que permitirn clarificar este aspecto, aplicados especficamente a problemas con el robot.Dos de las estructuras de control ya vistas, seleccin e iteracin, requieren para su funcionamiento, la evaluacin de una condicin. Estas condiciones se corresponden con lo que en trminos de lgica se conoce como proposiciones.Una proposicin es una expresin de la cual tiene sentido decir si es verdadera o falsa, o sea es posible asignarle un valor de verdad (verdadero o falso, pero no ambos).

Ejemplos de proposiciones

1 + 4 = 5 (Verdad)La Pampa es una nacin. (Falso)Un tringulo es menor que un crculo. (No se le puede asignar un valor de verdad, por lo tanto no es proposicin)El color azul vale menos que una sonrisa (dem anterior)Hay una flor en la esquina (ser verdadero falso dependiendo de si la flor se encuentra o no en la esquina)

1. Proposiciones atmicas y moleculares

En Lgica, el trmino atmico se utiliza con su significado habitual: algo que no puede ser dividido nuevamente.Una proposicin es considerada atmica si no puede ser descompuesta en otras proposiciones.

Ejemplos:

La casa es roja.Hoy es lunes.He llegado al final del recorrido.Estoy ubicado a 3 metros de altura.

Cuando en una expresin se unen varias proposiciones atmicas se forma una proposicin molecular o compuesta. Dicha unin se realiza mediante conectivos lgicos trminos de enlace.Estos trminos de enlace son de gran importancia. Tanto es as, que se estudiarn algunas reglas muy precisas para el uso de esta clase de trminos.Los trminos de enlace a utilizar son los siguientes: y, o, no. Los dos primeros se utilizan para conectar proposiciones atmicas; en tanto que el conectivo no, solamente se coloca frente a una proposicin atmica.

Ejemplos:

No es cierto que la luna est hecha de queso verde.La vaca est cansada y no dar leche.Hace calor hay mucha humedad.Hay papel en la bolsa y hay papel en la esquina.

Resumiendo:Una proposicin es atmica si no tiene conectivos lgicos, en caso contrario es molecular.

2. Simbolizacin

As como en matemtica se simbolizan las cantidades para facilitar el planteo y solucin de problemas, tambin en este caso es importante simbolizar las proposiciones atmicas, las moleculares y los conectivos lgicos con el objeto de facilitar las operaciones.

ConectivoSimbolizacin en Visual Da Vinci

y&

o|

no~

Tabla 1: Conectivos lgicos trminos de enlace

Se utilizarn letras minsculas para simbolizar las proposiciones atmicas:Ejemplos de simbolizacin de proposiciones atmicasAyer fue un da ventoso.Si se considera p = ayer fue un da ventoso, esta proposicin puede ser simbolizada como: p.

Ese pjaro vuela muy alto.Si se llama q = ese pjaro vuela muy alto, la proposicin se simboliza como: q.

PosCa < 100.Si se llama r = PosCa < 100, la proposicin se simboliza como: r.

A continuacin se aplicar este mecanismo de simbolizacin a las proposiciones moleculares.El proceso para simbolizarlas consiste en:1. Determinar cules son las proposiciones atmicas que la componen.2. Simbolizar las proposiciones como se explic anteriormente.3. Unir las proposiciones con los conectivos ya vistos. Por tal motivo, debe definirse un smbolo para cada uno de los conectivos. La tabla 1 muestra la simbolizacin a utilizar en cada caso.

Ejemplos de simbolizacin de proposiciones molecularesJuan es estudiante y es jugador de ftbol.p = Juan es estudianteq = Juan es jugador de ftbolSimbolizando p & q

No es cierto que PosCa = 100.p = PosCa=100Simbolizando ~ p

Hay flor en la esquina y hay papel en la bolsa, o hay papel en la esquina.p = Hay flor en la esquinaq = hay papel en la bolsar = hay papel en la esquina

Analicemos, para resolver correctamente el ejemplo anterior debe tenerse en cuenta la aparicin de la coma, la cual separa las dos primeras proposiciones de la tercera. Cuando se obtiene la simbolizacin debe respetarse ese orden. Por lo tanto la simbolizacin sera:(p & q) | r

No hay flor en la bolsa, pero hay flor en la esquina.p = hay flor en la bolsaq = hay flor en la esquinaSimbolizando (~ p & q)Notemos que la palabra pero acta como el conectivo lgico y.

3 .Tablas de verdad.

Como se explic previamente, una proposicin es una expresin de la cual tiene sentido decir si es verdadera o falsa.Para poder analizar cualquier proposicin molecular y decir qu valor de verdad tiene, es usual hacerlo a travs de lo que se conoce como tabla de verdad.La tabla de verdad de una proposicin es, como su nombre lo indica, una tabla donde se muestran todas las combinaciones posibles de los valores de verdad de dicha proposicin.

3.1 Conjuncin. Tabla de verdad

Dadas dos proposiciones cualesquiera p y q, la proposicin molecular p & q representa la conjuncin de p y q.La conjuncin de dos proposiciones es cierta nicamente en el caso en que ambas proposiciones lo sean.Dadas dos proposiciones cualesquiera p y q, si ambas son verdaderas, entonces p & q, que representa la conjuncin de p y q, es verdadera. Cualquier otra combinacin da como resultado una proposicin molecular falsa. La tabla 2.4 representa la tabla de verdad de la conjuncin p & q utilizando las cuatro combinaciones posibles de valores de verdad para p y q. Por lo tanto, si p & q es una proposicin verdadera entonces p es verdadera y q tambin es verdadera. En Lgica se pueden unir dos proposiciones cualesquiera para formar una conjuncin. No se requiere que el contenido de una de ellas tenga relacin con el contenido de la otra.

pqp & q

VVV

VFF

FVF

FFF

Tabla 2: Conjuncin (p & q)Ejemplos:

6 es un nmero par y divisible por 3.p = 6 es un numero parq = 6 es divisible por 3p es verdadera y q tambin, por lo tanto p & q es verdadera.

Suponiendo que el robot se encuentra situado en la esquina (1,1)p = PosCa=1q = PosAv=2p es verdadera y q es falsa, por lo tanto p & q es falsa.

El siguiente ejemplo muestra la aplicacin de la conjuncin en un algoritmo:Ejemplo 1: Hacer que el robot deposite, de ser posible, una flor en la esquina (4,4) en el caso que en dicha esquina no haya flores.

programa Ejemplo1{si en (4,4) no hay flor en esa esquina y hay flor en la bolsa depositar esa flor}variables p:boolean q:booleancomenzar iniciar Pos(4,4) p:=HayFlorEnLaBolsa q:=HayFlorEnLaEsquina si ((p) & ~(q)) depositarFlorfin

La seleccin utiliza la conjuncin de dos proposiciones que, como se explic anteriormente, para ser verdadera necesitar que ambas proposiciones lo sean simultneamente. Esto es, basta con que una de ellas sea falsa para que no se deposite una flor en la esquina.

3.2 Disyuncin. Tabla de verdad

Dadas dos proposiciones cualesquiera p y q, la proposicin molecular p | q representa la disyuncin de p y q.La disyuncin entre dos proposiciones es cierta cuando al menos una de dichas proposiciones lo es.La disyuncin utiliza el trmino de enlace o en su sentido incluyente. Esto significa que basta con que una de las dos proposiciones sea verdadera para que la disyuncin sea verdadera.Dadas dos proposiciones cualesquiera p y q, su disyuncin, p | q, ser falsa cuando ambas proposiciones sean falsas. La tabla 3 representa la tabla de verdad de la disyuncin p | q utilizando las cuatro combinaciones posibles de valores de verdad para p y q.

pqp | q

VVV

VFV

FVV

FFF

Tabla 3: Disyuncin (p v q)

Ejemplos2 es primo o es imparp = 2 es primoq = 2 es imparp es verdadera, q es falsa. Se deduce que p | q es verdadera

Suponiendo que el robot se encuentra situado en la esquina (1,1)p = PosCa=8q = PosAv=2p es falsa, q es falsa. Se deduce que p | q es falsa.

El siguiente problema puede resolverse aplicando la disyuncin:Ejemplo 2: hacer que el robot se mueva desde la esquina (4,7) a la esquina (4,11) en el caso que la esquina (4,7) no est vaca (se considera no vaca a aquella esquina que tiene al menos una flor o un papel).

programa Ejemplo2{si en (4,7) hay flor o papel entonces se mueve a (4,11)}variables p:boolean q:booleancomenzar iniciar Pos(4,7) p:=HayFlorEnLaEsquina q:=HayPapelEnLaEsquina si ((p) | (q)) repetir 4 mover sino Informar('Esquina vacia no me puedo mover')fin

La seleccin utiliza la disyuncin de dos proposiciones que, como se explic anteriormente, para ser verdadera solo requiere que una de ellas sea verdadera. Note que si la esquina (4,7) tiene flor y papel, el robot avanza hasta la esquina (4,11). La nica forma de que el robot no avance es que la esquina est vaca, sin flor ni papel.

3.3 Negacin. Tabla de verdadDada una proposicin p, su negacin ~ p, permitir obtener el valor de verdad opuesto.El valor de verdad de la negacin de una proposicin verdadera es falso y el valor de verdad de la negacin de una proposicin falsa es verdadero.Dada una proposicin p, la tabla 4 representa los posibles valores de verdad de dos valores de verdad posibles de p.p~ p

VF

FV

Tabla 4: Negacin (~ p)Ejemplosp = El nmero 9 es divisible por 3La proposicin p es verdadera.La negacin de p es:~ p = El nmero 9 no es divisible por 3Se ve claramente que ~ p es falsa.

Suponiendo que el robot se encuentra situado en la esquina (1,1)p = PosCa=1La proposicin p es verdadera.La negacin de p es: ~p= ~PosCa=1.Se deduce que ~p es falsa.

Ejemplo 3: el robot debe recorrer la calle 1 hasta encontrar una flor que seguro existe.

programa Ejemplo2{el robot debe recorrer la calle 1 hasta encontrar una flor que seguro existe.}variables p:booleancomenzar iniciar derecha p:=HayFlorEnLaEsquina mientras ~p mover p:=HayFlorEnLaEsquinafin

Note que la iteracin utiliza la negacin de la proposicin atmica hay flor en la esquina y que la misma proposicin debe volver a evaluarse por cada esquina en que el robot se mueveDe esta forma, el robot detendr su recorrido cuando encuentre una flor.

3.4 Utilizacin del parntesisEs frecuente encontrar proposiciones que tienen ms de un trmino de enlace. En estos casos, uno de los trminos de enlace es el ms importante, o el trmino dominante, porque acta sobre toda la proposicin.El operador ~ es el que tiene mayor prioridad, es decir, es el que primero es evala; seguido por & y |. Estos dos ltimos poseen igual prioridad. Ante una expresin que utilice varias conjunciones y/o disyunciones, se evaluaran de izquierda a derecha.Lo mismo ocurre en Matemtica. Si se considera la siguiente cuenta: 2 + 3 * 5, el resultado final, como es fcil de deducir, es 17.La primera operacin que se resuelve es el producto entre 3 y 5, y luego a su resultado se le suma 2. Ocurre as porque el operando * (por), igual que el operando / (dividido), se resuelve antes que el operando + (mas), o que el operando - (menos).Dada la siguiente proposicin p & ~ q, primero se resuelve la negacin y luego la conjuncin.En determinados casos se tiene la necesidad de alterar este orden natural de resolucin. Al igual que en matemtica, el uso de parntesis permite resolver este problema.Ejemplo~ p | q es una disyuncin entre ~ p y q.~ (p | q) es la negacin de una disyuncin.

En el ejemplo anterior se muestra la manera de convertir una disyuncin en una negacin. Es decir, el operador de negacin se resuelve en forma posterior a la disyuncin.