Escolar Documentos
Profissional Documentos
Cultura Documentos
LP - Lógica de Programação.
LP - Lógica de Programação.
Lgica de Programao
Conceitos fundamentais
Lgica*
Inferncia
proposio.
Proposio designa
ou orao declarativa.
Lgica*
[Do gr. logik (tchne), pelo lat. tard. logica.] .Substantivo feminino.
1.Filos. Na tradio clssica, aristotlico-tomista, conjunto de estudos que visam a
determinar os processos intelectuais que so condio geral do conhecimento
verdadeiro. [Distinguem-se a lgica formal e a lgica material.]
2.Filos. Conjunto de estudos tendentes a expressar em linguagem matemtica as
estruturas e operaes do pensamento, deduzindo-as de nmero reduzido de
axiomas, com a inteno de criar uma linguagem rigorosa, adequada ao
pensamento cientfico tal como o concebe a tradio emprico-positivista; lgica
matemtica, lgica simblica.
3.Filos. Conjunto de estudos, originados no hegelianismo, que tm por fim
determinar categorias racionais vlidas para a apreenso da realidade concebida
como uma totalidade em permanente transformao; lgica dialtica. [So
categorias dessa lgica a contradio, a totalidade, a ao recproca, a sntese,
etc.]
4.Tratado ou compndio de lgica.
5.Exemplar de um desses tratados ou compndios.
6.Coerncia de raciocnio, de idias.
7.Maneira de raciocinar particular a um indivduo ou a um grupo:
a lgica da criana;
a lgica do primitivo;
a lgica do louco.
8.Fig. Seqncia coerente, regular e necessria de acontecimentos, de coisas. [Cf. logica, do v. logicar.]
9.Conjunto de regras e princpios que orientam, implcita ou explicitamente, o desenvolvimento de uma
argumentao ou de um raciocnio, a resoluo de um problema, etc.
10.Inform. Forma pela qual as assertivas, pressupostos e instrues so organizadas em um algoritmo para
implementao de um programa de computador.
Lgica booliana. 1. Mat. Inform. V. lgebra booliana.
Lgica das proposies. 1. Filos. Parte da lgica formal (2) que trata do clculo proposicional; lgica sentencial.
Lgica das relaes. 1. Filos. Parte da lgica formal (2) que trata do clculo funcional.
Lgica dialtica. 1. Filos. Lgica (3).
Lgica difusa. 1. Extenso da lgica booliana, na qual as variveis podem adquirir graus intermedirios de
veracidade ou falsidade, representados por valores fracionrios entre 0 e 1; lgica fuzzy. [Foi introduzida na
dcada de 1960 como meio de modelar graus de incerteza presentes na linguagem natural; muito usada no
desenvolvimento de sistemas especialistas.]
Lgica formal. Filos. 1. Na tradio clssica, o estudo das formas (conceitos, juzos e raciocnios) e leis do
pensamento. 2. Na tradio empirista e positivista, o estudo da estrutura das proposies e das operaes pelas
quais, com base nessa estrutura, se deduzem concluses vlidas. [Distinguem-se a lgica das proposies e a
lgica das relaes.]
Lgica fuzzy. 1. Lgica difusa (q. v.).
Lgica matemtica. 1. Filos. V. lgica (2).
Lgica material. 1. Filos. Estudo da relao entre as formas e leis do pensamento e a verdade, i. e., estudo das
operaes do pensamento que conduzem a conhecimentos verdadeiros. [Cf. lgica transcendental.]
Lgica modal. 1. A que trata das noes de contingncia, possibilidade, e necessidade, em oposio simples
afirmao ou negao.
Lgica polivalente. 1. Sistema lgico que admite mais de dois valores de verdade.
Lgica sentencial. 1. Filos. Lgica das proposies.
Lgica simblica. 1. Filos. V. lgica (2).
Lgica transcendental. 1. Filos. Segundo Kant (v. kantismo), cincia do entendimento puro e do conhecimento
racional, pela qual se determinam os conceitos que se relacionam aos objetos independentemente da
experincia, e anteriormente a ela. [Cf. lgica material.]
Reviso
Algoritmo
Algoritmo
Ex.: receita de um bolo, manual de instrues,
etc.
Reviso
Torre de Hani
Soluo
move o disco a para a haste 2
move o disco b para a haste 3
move o disco a para a haste 3
move o disco c para a haste 2
move o disco a para a haste 1
move o disco b para a haste 2
Reviso
Algoritmo X computador
Algoritmo
Linguagem de
computao
Programa
Representao ou descrio do
Algoritmo
Portugus Estruturado (Portugol)
Diagrama de Chapin (Nassi e Schneider)
Fluxograma
Algoritmos computacionais
Algoritmo Em um aspecto computacional,
algoritmos
possuem
caractersticas
especficas, tais como:
Continuao
Um algoritmo s entendido pela mquina quando for codificado na
sintaxe de uma linguagem, isto , atinge a condio de programa.
Uma linguagem de programao traduz um algoritmo para uma forma
de linguagem entendida pela mquina (linguagem de mquina), ento,
passa a assumir o status de programa.
Um algoritmo, no entanto, composto de instrues e dados que, por
sua vez, precisam estar armazenados na memria principal do
computador.
Memria do computador
A memria principal de um computador semelhante a de um
ser humano, isto , implica na faculdade de reter informaes que
sero utilizadas quando necessrias.
Pode-se comparar a memria principal de um computador a uma
seqncia de clulas numeradas, onde cada clula corresponde a
uma espao da memria, e constantemente informaes so
armazenadas no referido espao.
A referncia a cada clula da memria realizada atravs de seu
endereo numrico.
Continuao
Pode-se alterar o contedo da clula mas o endereo de uma posio
de memria no pode ser alterado.
Graficamente, pode-se representar:
0
5
20
Tipos Primitivos
Referem-se a maneira como o computador manipula as informaes,
sendo que essas informaes classificam-se a grosso modo em dois
tipos: dados e instrues.
Dados - so representados pelas informaes a serem tratadas
(processadas) por um computador. Essas informaes esto
caracterizadas por trs tipos de dados:dados numrico(inteiros e real),
dados caracteres e dados lgicos.
Instrues Comandos, funes que determinam as operaes com
os dados contedo das variveis.
Ex:
Ao citarmos uma data como 21 de setembro, estamos apresentando
um dado; ao dizermos que este o dia da rvore, estamos agregando
valor ao dado data, isto , apresentando uma informao.
Tipos Primitivos
Inteiro:
Real:
Caractere:
Variveis
Define-se como o nome de um local onde se pode
colocar qualquer valor do conjunto de valores possveis
do tipo bsico associado. Pode-se dizer que a varivel
um identificador. Um dado classificado como varivel
quando tem a possibilidade de ser alterado em algum
instante no decorrer do tempo de execuo do algoritmo.
O nome de uma varivel utilizado para sua
identificao e posterior uso dentro de um programa.
Exemplo de variveis
Exemplos de declaraes
X,n1,N2:inteiro;
nome,Endereco,Data:caracter;
ABC,xpto,Peso,Dolar:real;
Resposta,h286:logico;
Sexo:Char:
Grfico
Obs.:
essa
forma
de
representao
diferencia-se
dependendo da sintaxe do
portugol ou da linguagem, quanto
separao do identificador e
tipo por dois pontos ou ponto e
vrgula ao final da instruo.
Compiladores que executam
portugol
geralmente
se
diferenciam.
,
Tipo
Identificador
Declarao de Variveis
As variveis ao serem declaradas devem indicar tipo
primitivo (inteiro, real, caracter ou lgico).
Para declararmos as variveis em um programa
fazemos da seguinte forma:
Sintaxe:
<Tipo> <nome_da_varivel>;
Exemplos:
inteiro valor:
lgico gelado;
caracter mensagem;
real total;
Continuao ...
Constantes
As constantes so construdas para armazenar
dados que no sero modificados
durante a
execuo do programa. Para defin-las basta
apenas:
Const
<nome_da_constante> <valor>;
Exemplos:
Const NUMERO = 5;
Const MAXIMO = 30; //Usar sempre maisculo.
Operaes - Operadores
Aritmticos
Continuao ...
As prioridades indicam a ordem na qual as
operaes sero efetuadas. As prioridades de
valor mais baixo so efetuadas antes. Se as
prioridades so iguais, opera-se da esquerda
para direita.
Analise os exemplos abaixo e verifique a
ordem que as operaes foram executadas:
5 + 6 * 4 resultado = 29 5 + 6 - 3 resultado = 8
5 * 6 + 4 resultado = 34 12 / 6 * 4 resultado = 8
4 ^ 2 + 1
4 * 12 / 6 resultado = 8
resultado = 17
8 :: 3 * 5
4 :: 2 * 3 resultado = 6
resultado = 10
11
MOD
2
11 DIV 2 resultado = 5
resultado = 1
Continuao
A utilizao de parnteses permite
alterar a prioridade das operaes.
Quando eles so usados em grupo, a
prioridade maior dos parnteses mais
internos. Veja os exemplos:
(3 * (5 + 6)), resultado = 33
3 ^ (1 + 2), resultado = 27
3 - (5 + 6), resultado = - 8
4 MOD (5 -3), resultado = 0
Operadores Relacionais
Os operadores relacionais permitem que uma
comparao feita entre dois valores do
mesmo tipo. Estes valores podero ser
identificadores, constantes ou expresses
aritmticas.
Importante! O resultado obtido ser sempre
um valor lgico, ou seja, F ou V. Os
operadores utilizados na comparao so os
seguintes:
= Igual
!= Diferente
> Maior que
< Menor que
>= Maior que ou igual a
<= Menor que ou igual a
Exemplos:
Operadores Lgicos
A combinao de valores lgicos com os operadores
lgicos tem como resultado outro valor lgico. Os
operadores lgicos so:
E
- A sentena verdadeira se TODAS as
condies forem verdadeiras.
OU A sentena verdadeira se UMA das condies
for verdadeira.
NO Inverte o valor lgico da sentena (V F) (F
V).
XOU Se as duas condies forem diferentes, a
sentena verdadeira.
A tabela verdade exprime todas as combinaes
possveis entre os valores de diversas variveis
lgicas.
Continuao ...
Continuao ...
2)
A E V OU F
F OU F
F
3)
A E B XOU B
F XOU F
F
Exerccio
Suponha que w=F, x=V e z=V. Resolva
as expresses:
a) x OU z E w;
b) z XOU x E x;
c) z OU z OU w E x;
d) x E z E w OU NAO w
b) x OU NAO z E w OU z E x XOU NAO w;
c) NAO w OU z XOU x E x NAO z E w;
d) z E z XOU x OU z E w E x OU z OU w XOU
z;
Continuao ...
Exemplos:
Suponha as variveis e valores: fruta=maa e aux=10.
1)
(aux>=10) OU (fruta=pera)
V OU F
V
2)
(30>aux) XOU (50!=100/3) E (2 MOD 2 > 0)
V XOU V E F
V XOU F
V
3)
(fruta=maa) E (27.1 DIV 9 = 3) XOU (aux>= 300/100)
V E V XOU V
V XOU V
F
Sada
Sada: So instrues que o computador envia
ao usurio, seja por um monitor, por uma
impressora, etc... A sada mais comum feita
pelo monitor. Por exemplo se o algoritmo tiver
que mostrar a idade do usurio expressa em
dias.
Sintaxe:
Escreva <literal_ou_varivel_ou_lista>;
Exemplos:
Escreva (Digite sua Idade);
Escreva (nome);
Escreva (idade * 365,25) ;
Escreva (Voc tem: , idade , de idade);
Exemplos:
Onde:
Programa ou algoritmo- a palavra que indica o inicio do
algoritmo;
<nome_do_algoritmo> - um nome simblico dado ao
algoritmo;
<declarao_de_variveis> - consiste em uma poro
opcional onde so declaradas as variveis globais;
<declarao_de_contantes> - consiste em uma poro
opcional onde so declaradas as constantes;
<declarao_de_tipos> - consiste em uma poro
opcional onde so declarados os novos tipos;
Incio e Fim delimitam respectivamente o inicio e o
trmino do algoritmo.
Exemplos
Exemplo:
Exerccios
Resolver os exerccios abaixo, usando
o portugus estruturado.
1) Leia um valor e exiba a sua metade;
2) Leia quatro valores e exiba a soma
destes;
3) Leia quatro valores e exiba a media;
4) Dada a distncia a ser percorrida em
Km e o consumo de um carro (em Km
por litro), calcule e exiba quantos litros
so necessrios para completar a
distncia.
Continuao ...
5) Ler um valor em graus Farenheit e exibi-lo
em Celsius graus - C = (5 * (F-32) / 9).
6) Ler duas variveis A e B. Inverter seus
valores.
7) Calcule o volume de um cubo. Ser dado o
valor de sua aresta. (V = a3)
8) Calcule o volume de um cilindro, sendo que
sero informados o raio da base e a altura do
mesmo. (V = A h)
9) Calcule o salrio final de um funcionrio que
obteve no primeiro ms um aumento de 10%
e no segundo ms um aumento de 5%.
Exerccios
Suponha A=127, B=10, C=5, D=falso e
E=verdadeiro. Qual o valor produzido por cada
uma das sentenas abaixo?
a) no D
b) D e E
c) no A>B
d) A-B>C
e) B-C<0 ou A>B
f) (A>B) ou (B<C)
g) no (A<B)
h) A/5>10 e E
i) D e E ou no B<C
j) D ou E e A/5-B>B
k) (D e E) ou (A=B)