PROGRAMAÇÃO 1
INTRODUÇÃO
Engº Nunda Hilário Gunge Santos
Lógica de Programação
De forma geral, a programação é um processo de escrita, testes e manutenção de softwares
para ambientes computacionais, desenvolvido por um profissional geralmente chamado de
Programador.
Programação – Definição:
Dificilmente é notada, mas hoje a programação está presente em todos os aspectos
das nossas vidas, influenciando cada vez mais os nossos dias. E hoje, é quase impossível
Imaginar um mundo sem nenhum toque da programação.
Todos os softwares existentes, são compostos por um conjunto de instruções escritas
determinadas pelo programador, que descrevem as tarefas que devem ser realizadas pela
maquina.
Programar significa dar instruções à uma maquina para executar determinadas tarefas.
O advento da programação está directamente ligado à história e evolução dos
computadores e a primeira programadora foi uma mulher chamada Ada Lovelace, que
escreveu um código para possibilitar a utilização da máquina analítica de Charles Babbage.
(Estudo Independente)
Era uma maquina não muito fácil de operar, apenas os programadores podiam operar sobre ela,
porem hoje um século depois, os computadores ficam cada vez mais fácil de usar.
Lógica de Programação
Não se fala de programação sem incluir a Linguagem de programação.
As máquinas ou computadores, são formadas por duas categorias de componentes:
Componentes Físicos (hardware) – É a parte palpavel e material do computador. Ex:Rato,
monitor, teclado cpu…
Componentes Lógicos (Software) – É a parte não palpavel, ou seja, refere-se aos sistemas que
executam diversas actividades.
Ex: SO, word, gmail, torrent, instagram...
É através da parte lógica que nós usuários nos comunicamos com a maquina.
Tanto a parte física como a lógica são programáveis, mas recebem instruções de forma diferentes.
É por conta desta diversidade que existem as linguagens de programação.
Os componentes Físicos funcionam a base de circuitos eléctricos, e usa-se a linguagem binaria para
serem programados.
Os componentes lógicos ou softwares por sua vez são criados utilizando uma linguagem
intermediária próxima a linguagem humana.
Lógica de Programação
É uma linguagem formal que, através de uma série de instruções, permite que um programador
escreva um conjunto de ordens, acções consecutivas, dados e algoritmos para criar programas que
controlam o comportamento físico e lógico de uma máquina.
Linguagem de Programação – Definição:
Sintaxe – Estabelece as regras de disposição das palavras, acentuação e pontuação dentro do código
fonte.
Semântica – Trata de dar o significado devido as sentenças de formas que seja entendida pelo
interpretador e pelo compilador.
É um meio sistemático de regras sintácticas e semânticas, que permitem o programador expressar
suas ideias e comunica-las de forma eficiente à máquina.
Código Fonte - É o conjunto de palavras e comandos escritos ordenadamente,
de maneira lógica, que contém instruções em determinada linguagem de programação
Tipos de Linguagem de programação
Linguagens de Baixo nível- É o tipo de linguagem que é totalmente orientada à maquina, e por sua
vez de difícil compreensão para o programador.
Linguagens de Alto nível- São linguagens que cuja sintaxe é voltada ao entendimento humano ,
tornando mais fácil o processo de comunicação entre o homem e a máquina..
Lógica de Programação
Existem dois tipos fundamentais de tradutores:
Interpretadores – São programas tradutores, que recebendo o código fonte faz a
leitura, análise, tradução e execução linha por linha.
Compiladores – Programas tradutores que lêm, analisam, traduzem e executam o
código fonte de uma só vez.
Compiladores vs Interpretadores
As máquinas ou computadores, são formadas por duas partes, que utilizam linguagens
diferentes mas possuem uma necessidade urgente de comunicar entre si de forma
constante.(1)
Isto se torna possível pois as linguagens de programação de alto nivel possuem tradutores que
como o nome indica têm a função de traduzir as instruções do codigo fonte para a linguagem
de maquina.
Comparação dos compiladores e interpretadores. Vantagens e desvantagens.
(Estudo Independente)
Lógica de Programação
NOTAS:
A programação não se resume apenas num simples processo de escrita, pelo contrario, envolve
um conjunto de outras habilidades que devem ser desenvolvidas:
 Raciocínio Lógico;
 Habilidades Matemáticas;
 Capacidade de Abstracção;
 Análise de diferentes tipos de Dados; entre outras.
No estudo da programação, a primeira coisa que se aprende é a criação de algoritmos básicos,
que de forma resumida são receitas elaboradas para executar uma determinada tarefa.
Estas tarefas vão desde a mais simples até as mais complexas, assim, a complexide de um
algoritmo depende da complexidade da tarefa a ser executada.
PROGRAMAÇÃO 1
Lógica de Programação e Algoritmos
Engº Nunda Hilário Gunge Santos
Lógica de Programação
• São técnicas usadas pra representar problemas e obter soluções;
• Ou ainda, sao tecnicas de formação de pensamentos para atingir um
determinado objectivo;
• Permite definir uma sequência lógica para a solução de um problema;
Lógica – Pode ser definida como a habilidade de pensar correctamente. Tem a função de
colocar ordem no pensamento.
Enquanto humanos, utilizamos a lógica de forma natural no nosso dia a dia:
1º Sei que o Livro está no armário.
Sei que o armário está fechado.
Concluo que para pegar o livro tenho de abrir o armário.
2º Sei sou mais velho que o João.
Sei que o João é mais velho que o José.
Logo, concluo que sou mais velho que o José.
Lógica de Programação
Sequência Lógica
• Os pensamentos formados, devem ser extruturados como uma sequencia de
Instruçoes que devem ser seguidas para solucionar o problema ou tarefa.
Exemplos: Testes PsicoTécnicos, fibonanci;
• É cada acção singular feita para solucionar o problema, seguindo a sequencia
Lógica.
• Na programação computacional, pode ser definida como os comandos ou palavras
de ordem dirigidas ao computador para executar uma determinada Operaçao
Exemplos: “Multiplicar”, “Comparar”, “Mostrar”
Instrução
Lógica de Programação
Exemplos:
Sejam os seguintes factos:
Todos os filhos de João são mais altos que a Maria
António é filho de João.
O que podemos concluir logicamente?
Considere os factos abaixo:
Mário é aluno do ISPOCAB;
Para ser aprovado, um aluno no ISPOCAB precisa de uma nota igual ou superior à
10 valores e comparecer em mais de 75% das aulas.
João teve uma nota igual a 15 valor e compareceu em 73% das aulas.
O que podemos concluir?
Num aviao existem 4 romanos e 1 inglês.
Qual o nome da aeromoça?
a) Carla b)Sintia c)Ivone d)Miriam
Lógica de Programação
• Conjunto de operações, sequenciais, lógicas e não ambíguas, que permitem
resolver um problema num número finito de passos
Algoritmos
Exemplo: Achar a média entre 2 numeros.
1. Ter o primeiro número em “A”;
2. Ter o segundo numero em “B”;
3. Somar os dois numeros em “SOMA”;
4. Dividir a soma por dois em “Soma/2”
A B Soma Soma / 2 Média
+ = => =
Em outras palavras, criar algoritmos, significa apontar uma sequencia de actividades que
de forma lógica, levam a solução correta de um problema (desde os mais simples aos
Mais complexos, e incluindo até alguns dos problemas do nosso cotidiano)
Algoritmos
Exemplos de Algoritmos
1º Pegue uma escada.
2º Posicione a escada embaixo de uma lampada
3º Pegue uma lâmpada nova
4º Suba na escada.
5º Retire a Lampada velha.
6º Coloque a lampada nova.
Importante: Esta é apenas uma das muitas soluções possíveis para o
problema apresentado. Ou seja
Podem existir vários algoritmos diferentes para solucionar o mesmo problema.
Algoritmos
Exemplos de Algoritmos
1º Escreva um algoritmo, para trocar um pneu de um carro.
2º Descreva um algoritmo que defina como fazer um bolo.
3º Descreva um algoritmo que defina como preparar um ovo frito.
4º Descreva um algoritmo que defina como tirar o carro de uma garagem.
Lógica de Programação
Diariamente lidamos com vários problemas, do mais simples ao mais complexo, e em todos
eles somos obrigados a tomar uma decisão sobre uma condição, das quais resultam as
nossas acções.
Algoritmos com Estruturas de decisão
Condiçoes – São proposições declarativas que podem ser valoradas em Verdade ou Falso.
Ações – Tarefas ou instruções que se realizam ou nao como consequencia das condiçoes.
Até ao momento, nos deparamos maioritariamente com algoritmos cuja sequencia de
passos devem ser seguidos, todos sem restrição para atingir um objectivo determinado.
A estes algoritmos chamamos de lineares.
Porém, existem algoritmos onde nem todos os passos precisam ser necessariamente
executados para que se alcance o objectivo, ou seja, alguns passos podem depender de
decisões a serem tomadas durante o processo de execução do algoritmo. Estes algoritmos
Possuem uma estrutura de decisão, e são chamados de algoritmos condicionais.
Lógica de Programação
Algoritmos com Estruturas de decisão
Exemplo: Algoritmo para trocar uma lâmpada:
1º Pegue uma escada.
2º Posicione a escada em baixo de uma
lâmpada
3º Pegue uma lâmpada nova
4º Suba na escada.
5º Retire a Lâmpada velha.
6º Coloque a lâmpada nova.
Observaçoes sobre o algoritmo anterior:
1º Não sabemos qual o estado da lampada.
2º Trocamos a lampada sem fazer qualquer
teste
3º Pode ser que não haja necessidade de trocar
a lampada.
4º Em que estado se deve trocar a lâmpada?
Lógica de Programação
Para resolver o problema anterior acrescentamos ao nosso algorítmo um teste que verifique
se a lampada deve ser trocada:
Exemplo: Algoritmo para trocar uma lâmpada:
1º Ligue o Interruptor
2º Se a lâmpada acender
2.1 – Não faça nada.
3º Se a lâmpada não acender
3.1ºPegue uma escada.
3.2º Posicione a escada por baixo da lâmpada
3.3º Pegue uma lâmpada nova
3.4º Suba na escada.
3.5º Retire a Lâmpada velha.
3.6º Coloque a lâmpada nova.
4º Fim
Observações sobre o algoritmo anterior:
1º Os passos normais para efectuar a troca de uma
lâmpada estão associadas a uma condição
2º Os passos 3.1 à 3.6 apenas serão executados se a
condição 3 for verdadeira, ou seja, caso a lampada não
acenda.
Assim, estruturas de decisão ou (estruturas condicionais)
são elementos da programação que permitem que um bloco
de instruções sejam executados quando uma
ou mais condições são ou não cumpridas.
Algoritmos
Exemplos de Algoritmos com estrutura Condicional
1º Sabendo que um estudante possui apenas duas condições (aprovado ou reprovado), escreva
um algoritmo que nos permita a partir da média conhecida, saber se o estudante aprovou ou
reprovou.
Para notas maiores ou igual 10 o estudante é considerado aprovado, o contrario é reprovado.
Lógica de Programação
Analisando o nosso algoritmo em estudo, já nos permite verificar se há ou não necessidade
De efectuar a troca da lampada em vez de faze-lo de forma deliberada. Porém:
E se nova lampada instalada não funcionar?
Algoritmos com Estruturas de Repetição
1º Ligue o Interruptor
2º Se a lâmpada acender
2.1 – Não faça nada.
3º Se a lâmpada não acender
3.1ºPegue uma escada.
3.2º Posicione a escada por baixo da lâmpada
3.3º Pegue uma lâmpada nova
3.4º Suba na escada.
3.5º Retire a Lâmpada velha.
3.6º Coloque a lâmpada nova.
3.7º Se a lâmpada não acender
3.7.1º Retire a Lâmpada
3.7.2º Coloque outra lampada.
3.7.3º Se a lâmpada não acender
3.7.4º Retire a Lâmpada
3.7.5º Coloque outra lampada.
4º Fim
Podemos tentar melhorar o nosso
algoritmo. Utilizando as estruturas de
decisao
Lógica de Programação
Pode aparentemente ser funcional, porem temos alguns problemas:
Algoritmos com Estruturas de Repetição
1º O processo de trocar a lâmpada caso ela esta não acenda, é indefinido.
2º Não sabemos quantas vezes teremos de repetir o processo até acharmos uma
lâmpada que funcione.
3º Por definição, algoritmos têm de ter uma sequencia finita de passos.
Para casos semelhantes, devemos utilizar estruturas de repetição, que são estruturas que
definem um fluxo de ações que se repetem até que uma determinada situação pré estabelecida
se aconteça.
Lógica de Programação
Algoritmos com Estruturas de Repetição
Assim, substituindo a sequencia indefinida de estruturas de decisão por uma estrutura de
repetição teríamos:
1º Ligue o Interruptor
2º Se a lâmpada acender
2.1 – Não faça nada.
3º Se a lâmpada não acender
3.1ºPegue uma escada.
3.2º Posicione a escada por baixo da
lâmpada
3.3º Pegue uma lâmpada nova
3.4º Suba na escada.
3.5º Retire a Lâmpada velha.
3.6º Coloque a lâmpada nova.
3.7º Enquanto não acender
3.7.1º Retire a Lâmpada
3.7.2º Coloque outra lampada.
4º Fim
Logo: Com base neste novo algoritmo, enquanto
a condiçao definida na linha 3.7 for verdadeira, ou
seja enquanto a lampada não acender, as ações
definidas em 3.7.1 e 3.7.2 serão repetidas
Algoritmos
Exemplos de Algoritmos com estrutura Condicional
1º Elabore um algoritmo que indique como fazer uma prova, partindo do pressuposto de que o
estudante não deve deixar questoes em brancos assim deve continuar fazendo a prova enquanto
existir uma quetao em branco. Alem disso, o aluno so deve resolver uma questao se souber
resolve-la.
2º Suponha que você tenha uma caixa cheia de bolas. Nessa caixa existem bolas azuis e bolas
vermelhas. Além disso, você tem também duas caixas vazias.
Vamos chamar a caixa que contém as bolas de “caixa 1” e as duas caixas vazias de “caixa 2” e
“caixa 3”.
Neste contexto, escreva um algoritmo que defina como tirar todas as bolas da “caixa 1”
colocando as bolas azuis na “caixa 2” e as bolas vermelhas na “caixa 3”.
Algoritmos
Exemplos de Algoritmos com estrutura Condicional
3º José trabalha no departamento de recursos humanos de uma empresa. A empresa de José
definiu que os salários dos empregados serão aumentados seguindo a seguinte regra:
caso o salário seja menor que R$1000,00 o aumento será de 10% e,
caso contrário, será de 8%.
José recebeu uma lista contendo os nomes e salários de todos os funcionários da empresa e foi
solicitado que calculasse o novo salário desses funcionários. Assim, escreva um algoritmo para
que José calcule corretamente os novos salários.
Algoritmos
Exemplos de Algoritmos com estrutura Condicional
4º - Três missionários e três canibais encontram-se na margem esquerda de um rio. Nessa
margem também existe um bote que pode transportar uma ou duas pessoas. As seis pessoas
pretendem todas passar para a margem direita (usando o bote).
No entanto, os missionários têm de arranjar um plano para o conseguir de modo que, em nenhuma
circunstância, existam missionários numa margem em minoria relativamente aos canibais, pois têm
receio do que lhes possa acontecer. Quando o bote chega à margem, os elementos do bote são
contados como estando na margem. Assim, se houver apenas um
canibal em uma margem, não podemos enviar a essa margem o bote com um canibal e um
missionário,pois, ao chegar à outra margem, serão dois canibais
contra um missionário.
Lembre-se de que para o bote ir de uma margem a outra é necessário que alguém
esteja remando, ou seja, o bote nunca atravessa vazio.
Faça um algoritmo que exiba, passo a passo, como efetuar esta travessia de forma segura.
– Os algoritmos são expressos diretamente em linguagem natural.
– Resolve os problemas apenas a nivel logico.
aos detalhes de implementação.
–Os algoritmos são representados graficamente, onde diferentes formas geométricas
representam acções (instruções, comandos) distintos.
–São intermediários a nivel de detalhes, sendo mais precisos que a descrição Narrativa.
–Se atenta mais aos detalhes físicos de implementação.
Pseudocódigo ou Portugol
–É uma linguagem intermediaria a linguagem natural e as linguagens de programação
–Os comandos e instruções são representadas por palavras de fácil compreensão.
–Sao precisas e muito exigentes em detalhes de implementação.
–Assemelham-se bastante às linguagens de programação usadas para aplicativos.
–Náo é uma linguagem de programação
O critério usado para classificar hierarquicamente estas formas está diretamente ligado ao
nível de detalhe que cada uma forma pode exigir.
As formas de representação mais conhecidas sao:
Início e final
Entrada de dados
Saída de dados
Processamento de dados
Estrutura de Decisão
Início
N1, N2
Media 
(N1 +N2) / 2
Media
>= 7
Aprovado Reprovado
Fim
Algoritmo <Nome do Algoritmo>
Var
<Declaração de Variáveis>
Inicio
<Corpo do Algoritmo>
Fim
Algoritmo – Palavra que indica o inicio do Algoritmo.
<Nome do Algoritmo> - É um nome simbólico dado ao algoritmo para
distingui-lo dos demais;
<Declaração de Variáveis> - Determina a área reservada para declarar as
variáveis a ser usadas no algoritmo .
Inicio/Fim – Palavras que delimitam o inicio e o fim do conjunto de
instruções do corpo do algoritmo.
<Corpo do Algoritmo> - Espaço para o processamento das instruções e
operações do algoritmo.
É no corpo do algoritmo onde encontraremos o conjunto de instruções
ou comandos para a execução do algoritmo
Leia – Comando usado para inserir valores a partir do teclado ou de um
outro dispositivo, de formas a serem lidos pela maquina.
Escreva, Escreval comando usado para imprimir uma mensagem na
tela.
, := - Permite atribuir valores e resultados à determinadas variáveis. É
principal forma de armazenar informações numa variável.
Comandos e Instruções – São palavras usadas para orientar a maquina a executar diferentes açoes.
Em pseudocodigo temos os seguintes comandos:
Entrada: Leia
Saida: Escreva, Escreval
Atruibuiçao: , :=
Exemplo: Calcular e mostrar a média de duas notas de um estudante
1. Algoritmo “Achar a média”
2. Var
3. Nota1: inteiro
4. Nota2: inteiro
5. media, soma: real
6. Inicio
7. Leia (Nota1)
8. Leia (Nota2)
9. soma  Nota1 + Nota2
10. media  soma / 2
11. escreva (media)
12. Fim
Linha 1– Demos inicio ao algorítmo e definimos um nome.
Linha 2- Definimos o espaço para declarar variaveis e as declaramos
nas linhas 3,4 e 5.
Linhas 6 e 12- Delimitamos o inicio e o termino do algoritmo
Linhas 7 e 8- Instruímos o computador a permitir que o usuário insira os
valores das duas notas
Linhas 9 e 10 – Efectuamos o processamento calculando a média
Linha 11 – Imprimimos o resultado “na tela”.
Para compilar os algoritmos em pseudocódigo, passaremos a utilizar uma ferramenta denominada
VisualG
Introdução ao VisualG - ou Portugol
No exemplo anterior, vimos como é a estrutura de uma algoritmo em pseudocódigo, bem como o seu
funcionamento depois de implementado.
Existem conceitos importantes que devem ser aprendidos antes de prosseguirmos ao estudo de
algoritmos computacionais.
– Devem ser sempre declaradas antes de utilizadas;
– Devem possuir um nome, e o seu valor pode ser variavel ou constante.
– Ao nome da chamamos de identificadores e os valores devem pertencer à uma certa familia ou
tipo de dados
Declaração de variáveis em pseudocódigo : <Identificador> : <tipo de dado>
Introdução ao VisualG - ou Portugol
Regras para definir identificadores
1. Deve começar com uma letra ou “ __ ”
2. Os próximos podem ser letras ou números
3. Não pode utilizar nenhum sibolo excepto
o “ __ ”
4. Não pode conter espaçamento
5. Nao pode ter letras com acento
6. Nao pode ser uma palavra reservada
Exemplos de Variaveis
Válidas:
Inválidas a) 8_Ana b) Carlos Manuel c) a + c d) Média
a) raio b) Manuel c) _43
3º Tipo de Dados - Definem o tipo ou formato da informação que se vai atribuir à
uma variável, bem como os tipos de operações que serão realizados sobre as mesmas.
Inteiros – Representa toda a informação numérica inteira, ou seja, sem a parte fraccionaria. E podem
ser positivos, negativos ou nulos: Exemplo: -1; 1; 1000; 0
Real – Representa toda informação numérica pertencente ao conunto dos numeros reais (inteiros ou
fraccionarios); Exemplo: -0.5; 0.001; -50.8076; 0; 3.1415, 1000
Caractere – Representa toda a sequencia de conteudos, letras, numeros e simbolos especiais
(Alfanumericos).
Sua representaçao deve ser feita dentro de aspas duplas.
Exemplo: “Angola”; “1234 Alpha”, “Olá Mundo!...”
Lógico – Representam apenas dois tipos de valores: “Verdadeiro e Falso”.
Cada variavel deste tipo deve possuir apenas um destes valores, e sao chamados tambem de valores
Booleanos.
Exemplo: As lâmpadas estão apagas; 2+2 = 5-2; Café é ruim;
Exercícios Teorico-Práticos
1. Elabore um algoritmo que imprima na tela a frase “Olá Mundo”;
2. Elabore um algoritmo que receba o ano de nascimento de uma pessoa e determina a sua idade
3. Lê um número e mostra a terça parte deste número.
4. O balconista de um mini-mercado deseja saber o total que cada cliente deve pagar de acordo as
compras feitas, supondo que cada cliente so compra um único produto.
5. Lê dois números e mostre os seguintes resultados:
a. Dividendo:
b. Divisor:
c. Quociente:
d. Resto (para calcular o resto de uma divisão, utilize o operador MOD).
PROGRAMAÇÃO 1
Operadores e Expressoes Lógicas
Engº Nunda Hilário Gunge Santos
Operadores - São elementos funcionais que atuam sobre operandos e produzem um
determinado resultado.
ex: 5 + 2 – Esta expressão, relaciona dois operandos (5 e 2) por meio do operador (+).
De acordo com o número de operandos, os operadores podem ser classificados em:
 Unários- quando atuam sobre um único operando.
ex: Incremento (++), decremento(--), o sinal de (-) em frente de um numero cuja função é inverter
o sinal;
 Binários - Quando atuam sobre dois operandos.
ex: os operadores das operações aritméticas básicas (soma, subtracção, multiplicação e
divisão);
Outra classificação dos operadores é feita considerando-se o tipo de dado de seus
operandos e do valor resultante de sua avaliação. Segundo esta classificação, os operadores dividem-
se em aritméticos, lógicos e literais.
Operadores Aritméticos - são aqueles cujo resultado da avaliação é do tipo numérico,
seja ele inteiro ou real.
Simbolo Descriçao Exemplo A = 7 / B = 2
Adição A + B
Subtração A – B
Multiplicação A * B
Divisao (Faccionaria) A / B
Divisão Inteira A  B
Exponenciação A^B
MOD ou % Resto da Divisao A mod B
*

^
/
Na resolução de expressões aritméticas deve-se utilizar a seguinte ordem de precedência entre
os operadores:
Simbolo Descriçao
() Parênteses
^ Exponenciação
* /  % Mult, Div
+ - Soma e Subtração
Exemplo: 10+9*3 (10+9)*3
Exemplo2: nota1 + nota2 + nota3 / 2
nota1 + (nota2+nota3)/2
Funções Pré-definidas – Podem ser chamadas de sub-algoritmos, são elementos incorporados
dentro de uma linguagem de programação para efectuar um ou mais cálculos notáveis de forma
mais simples e prática. Ex: Funções no VisualG:
Simbolo Descriçao Exemplo
ABS Vaor Absoluto ABS (-7)
Exp Exponenciação Exp (4,2)
Int Valor Inteiro Int (29.34)
RaizQ Raiz Quadrada RaizQ (9)
Pi Pi
Sen Seno
Cos Cosseno
Tan Tangente
Operadores Relacionais- São utilizados para realizar comparações entre dois valores do mesmo
tipo. Operaçoes realizadas por operadores relacionais recebem o nome de relação e devolvem
sempre resultados lógicos(Verdadeiro ou Falso).
Simbolo Descriçao Exemplo A=7; B=2
> Maior que A > B
< Menor que A < B
>= Maior ou igual à A >= B
<= Menor ou igual à A <= B
= Igual A = B
<> Diferente A<>B
Operadores Lógicos - Assim como os relacionais, também retornam resultados lógicos, porem
nao servem para comparar dois valores ou expressoes, mas para apurar resultados logicos.
P Q P e Q P ou Q NãoP
V V Verdadeiro Verdadeiro Falso
V F Falso Verdadeiro Falso
F V Falso Verdadeiro Verdade
F F Falso Falso Verdade
Os operadores lógicos são tambem conhecidos comoconectivos, pois são utilizados para formar
novas proposiçoes a partir de expressoes diversas.
Exemplo: Sabendo que A = 5 e B = 8, resolva as seguintes expressões até ao último reduto.
A<6 E B>7
Nao(A =5) E B<5
Nao((A<>B) OU (Nao(B>=8)))

aaa Algoritmo e Logica de Programação.pdf

  • 1.
  • 2.
    Lógica de Programação Deforma geral, a programação é um processo de escrita, testes e manutenção de softwares para ambientes computacionais, desenvolvido por um profissional geralmente chamado de Programador. Programação – Definição: Dificilmente é notada, mas hoje a programação está presente em todos os aspectos das nossas vidas, influenciando cada vez mais os nossos dias. E hoje, é quase impossível Imaginar um mundo sem nenhum toque da programação. Todos os softwares existentes, são compostos por um conjunto de instruções escritas determinadas pelo programador, que descrevem as tarefas que devem ser realizadas pela maquina. Programar significa dar instruções à uma maquina para executar determinadas tarefas. O advento da programação está directamente ligado à história e evolução dos computadores e a primeira programadora foi uma mulher chamada Ada Lovelace, que escreveu um código para possibilitar a utilização da máquina analítica de Charles Babbage. (Estudo Independente) Era uma maquina não muito fácil de operar, apenas os programadores podiam operar sobre ela, porem hoje um século depois, os computadores ficam cada vez mais fácil de usar.
  • 3.
    Lógica de Programação Nãose fala de programação sem incluir a Linguagem de programação. As máquinas ou computadores, são formadas por duas categorias de componentes: Componentes Físicos (hardware) – É a parte palpavel e material do computador. Ex:Rato, monitor, teclado cpu… Componentes Lógicos (Software) – É a parte não palpavel, ou seja, refere-se aos sistemas que executam diversas actividades. Ex: SO, word, gmail, torrent, instagram... É através da parte lógica que nós usuários nos comunicamos com a maquina. Tanto a parte física como a lógica são programáveis, mas recebem instruções de forma diferentes. É por conta desta diversidade que existem as linguagens de programação. Os componentes Físicos funcionam a base de circuitos eléctricos, e usa-se a linguagem binaria para serem programados. Os componentes lógicos ou softwares por sua vez são criados utilizando uma linguagem intermediária próxima a linguagem humana.
  • 4.
    Lógica de Programação Éuma linguagem formal que, através de uma série de instruções, permite que um programador escreva um conjunto de ordens, acções consecutivas, dados e algoritmos para criar programas que controlam o comportamento físico e lógico de uma máquina. Linguagem de Programação – Definição: Sintaxe – Estabelece as regras de disposição das palavras, acentuação e pontuação dentro do código fonte. Semântica – Trata de dar o significado devido as sentenças de formas que seja entendida pelo interpretador e pelo compilador. É um meio sistemático de regras sintácticas e semânticas, que permitem o programador expressar suas ideias e comunica-las de forma eficiente à máquina. Código Fonte - É o conjunto de palavras e comandos escritos ordenadamente, de maneira lógica, que contém instruções em determinada linguagem de programação Tipos de Linguagem de programação Linguagens de Baixo nível- É o tipo de linguagem que é totalmente orientada à maquina, e por sua vez de difícil compreensão para o programador. Linguagens de Alto nível- São linguagens que cuja sintaxe é voltada ao entendimento humano , tornando mais fácil o processo de comunicação entre o homem e a máquina..
  • 5.
    Lógica de Programação Existemdois tipos fundamentais de tradutores: Interpretadores – São programas tradutores, que recebendo o código fonte faz a leitura, análise, tradução e execução linha por linha. Compiladores – Programas tradutores que lêm, analisam, traduzem e executam o código fonte de uma só vez. Compiladores vs Interpretadores As máquinas ou computadores, são formadas por duas partes, que utilizam linguagens diferentes mas possuem uma necessidade urgente de comunicar entre si de forma constante.(1) Isto se torna possível pois as linguagens de programação de alto nivel possuem tradutores que como o nome indica têm a função de traduzir as instruções do codigo fonte para a linguagem de maquina. Comparação dos compiladores e interpretadores. Vantagens e desvantagens. (Estudo Independente)
  • 6.
    Lógica de Programação NOTAS: Aprogramação não se resume apenas num simples processo de escrita, pelo contrario, envolve um conjunto de outras habilidades que devem ser desenvolvidas:  Raciocínio Lógico;  Habilidades Matemáticas;  Capacidade de Abstracção;  Análise de diferentes tipos de Dados; entre outras. No estudo da programação, a primeira coisa que se aprende é a criação de algoritmos básicos, que de forma resumida são receitas elaboradas para executar uma determinada tarefa. Estas tarefas vão desde a mais simples até as mais complexas, assim, a complexide de um algoritmo depende da complexidade da tarefa a ser executada.
  • 7.
    PROGRAMAÇÃO 1 Lógica deProgramação e Algoritmos Engº Nunda Hilário Gunge Santos
  • 8.
    Lógica de Programação •São técnicas usadas pra representar problemas e obter soluções; • Ou ainda, sao tecnicas de formação de pensamentos para atingir um determinado objectivo; • Permite definir uma sequência lógica para a solução de um problema; Lógica – Pode ser definida como a habilidade de pensar correctamente. Tem a função de colocar ordem no pensamento. Enquanto humanos, utilizamos a lógica de forma natural no nosso dia a dia: 1º Sei que o Livro está no armário. Sei que o armário está fechado. Concluo que para pegar o livro tenho de abrir o armário. 2º Sei sou mais velho que o João. Sei que o João é mais velho que o José. Logo, concluo que sou mais velho que o José.
  • 9.
    Lógica de Programação SequênciaLógica • Os pensamentos formados, devem ser extruturados como uma sequencia de Instruçoes que devem ser seguidas para solucionar o problema ou tarefa. Exemplos: Testes PsicoTécnicos, fibonanci; • É cada acção singular feita para solucionar o problema, seguindo a sequencia Lógica. • Na programação computacional, pode ser definida como os comandos ou palavras de ordem dirigidas ao computador para executar uma determinada Operaçao Exemplos: “Multiplicar”, “Comparar”, “Mostrar” Instrução
  • 10.
    Lógica de Programação Exemplos: Sejamos seguintes factos: Todos os filhos de João são mais altos que a Maria António é filho de João. O que podemos concluir logicamente? Considere os factos abaixo: Mário é aluno do ISPOCAB; Para ser aprovado, um aluno no ISPOCAB precisa de uma nota igual ou superior à 10 valores e comparecer em mais de 75% das aulas. João teve uma nota igual a 15 valor e compareceu em 73% das aulas. O que podemos concluir? Num aviao existem 4 romanos e 1 inglês. Qual o nome da aeromoça? a) Carla b)Sintia c)Ivone d)Miriam
  • 11.
    Lógica de Programação •Conjunto de operações, sequenciais, lógicas e não ambíguas, que permitem resolver um problema num número finito de passos Algoritmos Exemplo: Achar a média entre 2 numeros. 1. Ter o primeiro número em “A”; 2. Ter o segundo numero em “B”; 3. Somar os dois numeros em “SOMA”; 4. Dividir a soma por dois em “Soma/2” A B Soma Soma / 2 Média + = => = Em outras palavras, criar algoritmos, significa apontar uma sequencia de actividades que de forma lógica, levam a solução correta de um problema (desde os mais simples aos Mais complexos, e incluindo até alguns dos problemas do nosso cotidiano)
  • 12.
    Algoritmos Exemplos de Algoritmos 1ºPegue uma escada. 2º Posicione a escada embaixo de uma lampada 3º Pegue uma lâmpada nova 4º Suba na escada. 5º Retire a Lampada velha. 6º Coloque a lampada nova. Importante: Esta é apenas uma das muitas soluções possíveis para o problema apresentado. Ou seja Podem existir vários algoritmos diferentes para solucionar o mesmo problema.
  • 13.
    Algoritmos Exemplos de Algoritmos 1ºEscreva um algoritmo, para trocar um pneu de um carro. 2º Descreva um algoritmo que defina como fazer um bolo. 3º Descreva um algoritmo que defina como preparar um ovo frito. 4º Descreva um algoritmo que defina como tirar o carro de uma garagem.
  • 14.
    Lógica de Programação Diariamentelidamos com vários problemas, do mais simples ao mais complexo, e em todos eles somos obrigados a tomar uma decisão sobre uma condição, das quais resultam as nossas acções. Algoritmos com Estruturas de decisão Condiçoes – São proposições declarativas que podem ser valoradas em Verdade ou Falso. Ações – Tarefas ou instruções que se realizam ou nao como consequencia das condiçoes. Até ao momento, nos deparamos maioritariamente com algoritmos cuja sequencia de passos devem ser seguidos, todos sem restrição para atingir um objectivo determinado. A estes algoritmos chamamos de lineares. Porém, existem algoritmos onde nem todos os passos precisam ser necessariamente executados para que se alcance o objectivo, ou seja, alguns passos podem depender de decisões a serem tomadas durante o processo de execução do algoritmo. Estes algoritmos Possuem uma estrutura de decisão, e são chamados de algoritmos condicionais.
  • 15.
    Lógica de Programação Algoritmoscom Estruturas de decisão Exemplo: Algoritmo para trocar uma lâmpada: 1º Pegue uma escada. 2º Posicione a escada em baixo de uma lâmpada 3º Pegue uma lâmpada nova 4º Suba na escada. 5º Retire a Lâmpada velha. 6º Coloque a lâmpada nova. Observaçoes sobre o algoritmo anterior: 1º Não sabemos qual o estado da lampada. 2º Trocamos a lampada sem fazer qualquer teste 3º Pode ser que não haja necessidade de trocar a lampada. 4º Em que estado se deve trocar a lâmpada?
  • 16.
    Lógica de Programação Pararesolver o problema anterior acrescentamos ao nosso algorítmo um teste que verifique se a lampada deve ser trocada: Exemplo: Algoritmo para trocar uma lâmpada: 1º Ligue o Interruptor 2º Se a lâmpada acender 2.1 – Não faça nada. 3º Se a lâmpada não acender 3.1ºPegue uma escada. 3.2º Posicione a escada por baixo da lâmpada 3.3º Pegue uma lâmpada nova 3.4º Suba na escada. 3.5º Retire a Lâmpada velha. 3.6º Coloque a lâmpada nova. 4º Fim Observações sobre o algoritmo anterior: 1º Os passos normais para efectuar a troca de uma lâmpada estão associadas a uma condição 2º Os passos 3.1 à 3.6 apenas serão executados se a condição 3 for verdadeira, ou seja, caso a lampada não acenda. Assim, estruturas de decisão ou (estruturas condicionais) são elementos da programação que permitem que um bloco de instruções sejam executados quando uma ou mais condições são ou não cumpridas.
  • 17.
    Algoritmos Exemplos de Algoritmoscom estrutura Condicional 1º Sabendo que um estudante possui apenas duas condições (aprovado ou reprovado), escreva um algoritmo que nos permita a partir da média conhecida, saber se o estudante aprovou ou reprovou. Para notas maiores ou igual 10 o estudante é considerado aprovado, o contrario é reprovado.
  • 18.
    Lógica de Programação Analisandoo nosso algoritmo em estudo, já nos permite verificar se há ou não necessidade De efectuar a troca da lampada em vez de faze-lo de forma deliberada. Porém: E se nova lampada instalada não funcionar? Algoritmos com Estruturas de Repetição 1º Ligue o Interruptor 2º Se a lâmpada acender 2.1 – Não faça nada. 3º Se a lâmpada não acender 3.1ºPegue uma escada. 3.2º Posicione a escada por baixo da lâmpada 3.3º Pegue uma lâmpada nova 3.4º Suba na escada. 3.5º Retire a Lâmpada velha. 3.6º Coloque a lâmpada nova. 3.7º Se a lâmpada não acender 3.7.1º Retire a Lâmpada 3.7.2º Coloque outra lampada. 3.7.3º Se a lâmpada não acender 3.7.4º Retire a Lâmpada 3.7.5º Coloque outra lampada. 4º Fim Podemos tentar melhorar o nosso algoritmo. Utilizando as estruturas de decisao
  • 19.
    Lógica de Programação Podeaparentemente ser funcional, porem temos alguns problemas: Algoritmos com Estruturas de Repetição 1º O processo de trocar a lâmpada caso ela esta não acenda, é indefinido. 2º Não sabemos quantas vezes teremos de repetir o processo até acharmos uma lâmpada que funcione. 3º Por definição, algoritmos têm de ter uma sequencia finita de passos. Para casos semelhantes, devemos utilizar estruturas de repetição, que são estruturas que definem um fluxo de ações que se repetem até que uma determinada situação pré estabelecida se aconteça.
  • 20.
    Lógica de Programação Algoritmoscom Estruturas de Repetição Assim, substituindo a sequencia indefinida de estruturas de decisão por uma estrutura de repetição teríamos: 1º Ligue o Interruptor 2º Se a lâmpada acender 2.1 – Não faça nada. 3º Se a lâmpada não acender 3.1ºPegue uma escada. 3.2º Posicione a escada por baixo da lâmpada 3.3º Pegue uma lâmpada nova 3.4º Suba na escada. 3.5º Retire a Lâmpada velha. 3.6º Coloque a lâmpada nova. 3.7º Enquanto não acender 3.7.1º Retire a Lâmpada 3.7.2º Coloque outra lampada. 4º Fim Logo: Com base neste novo algoritmo, enquanto a condiçao definida na linha 3.7 for verdadeira, ou seja enquanto a lampada não acender, as ações definidas em 3.7.1 e 3.7.2 serão repetidas
  • 21.
    Algoritmos Exemplos de Algoritmoscom estrutura Condicional 1º Elabore um algoritmo que indique como fazer uma prova, partindo do pressuposto de que o estudante não deve deixar questoes em brancos assim deve continuar fazendo a prova enquanto existir uma quetao em branco. Alem disso, o aluno so deve resolver uma questao se souber resolve-la. 2º Suponha que você tenha uma caixa cheia de bolas. Nessa caixa existem bolas azuis e bolas vermelhas. Além disso, você tem também duas caixas vazias. Vamos chamar a caixa que contém as bolas de “caixa 1” e as duas caixas vazias de “caixa 2” e “caixa 3”. Neste contexto, escreva um algoritmo que defina como tirar todas as bolas da “caixa 1” colocando as bolas azuis na “caixa 2” e as bolas vermelhas na “caixa 3”.
  • 22.
    Algoritmos Exemplos de Algoritmoscom estrutura Condicional 3º José trabalha no departamento de recursos humanos de uma empresa. A empresa de José definiu que os salários dos empregados serão aumentados seguindo a seguinte regra: caso o salário seja menor que R$1000,00 o aumento será de 10% e, caso contrário, será de 8%. José recebeu uma lista contendo os nomes e salários de todos os funcionários da empresa e foi solicitado que calculasse o novo salário desses funcionários. Assim, escreva um algoritmo para que José calcule corretamente os novos salários.
  • 23.
    Algoritmos Exemplos de Algoritmoscom estrutura Condicional 4º - Três missionários e três canibais encontram-se na margem esquerda de um rio. Nessa margem também existe um bote que pode transportar uma ou duas pessoas. As seis pessoas pretendem todas passar para a margem direita (usando o bote). No entanto, os missionários têm de arranjar um plano para o conseguir de modo que, em nenhuma circunstância, existam missionários numa margem em minoria relativamente aos canibais, pois têm receio do que lhes possa acontecer. Quando o bote chega à margem, os elementos do bote são contados como estando na margem. Assim, se houver apenas um canibal em uma margem, não podemos enviar a essa margem o bote com um canibal e um missionário,pois, ao chegar à outra margem, serão dois canibais contra um missionário. Lembre-se de que para o bote ir de uma margem a outra é necessário que alguém esteja remando, ou seja, o bote nunca atravessa vazio. Faça um algoritmo que exiba, passo a passo, como efetuar esta travessia de forma segura.
  • 25.
    – Os algoritmossão expressos diretamente em linguagem natural. – Resolve os problemas apenas a nivel logico. aos detalhes de implementação. –Os algoritmos são representados graficamente, onde diferentes formas geométricas representam acções (instruções, comandos) distintos. –São intermediários a nivel de detalhes, sendo mais precisos que a descrição Narrativa. –Se atenta mais aos detalhes físicos de implementação. Pseudocódigo ou Portugol –É uma linguagem intermediaria a linguagem natural e as linguagens de programação –Os comandos e instruções são representadas por palavras de fácil compreensão. –Sao precisas e muito exigentes em detalhes de implementação. –Assemelham-se bastante às linguagens de programação usadas para aplicativos. –Náo é uma linguagem de programação O critério usado para classificar hierarquicamente estas formas está diretamente ligado ao nível de detalhe que cada uma forma pode exigir. As formas de representação mais conhecidas sao:
  • 26.
    Início e final Entradade dados Saída de dados Processamento de dados Estrutura de Decisão Início N1, N2 Media  (N1 +N2) / 2 Media >= 7 Aprovado Reprovado Fim
  • 27.
    Algoritmo <Nome doAlgoritmo> Var <Declaração de Variáveis> Inicio <Corpo do Algoritmo> Fim Algoritmo – Palavra que indica o inicio do Algoritmo. <Nome do Algoritmo> - É um nome simbólico dado ao algoritmo para distingui-lo dos demais; <Declaração de Variáveis> - Determina a área reservada para declarar as variáveis a ser usadas no algoritmo . Inicio/Fim – Palavras que delimitam o inicio e o fim do conjunto de instruções do corpo do algoritmo. <Corpo do Algoritmo> - Espaço para o processamento das instruções e operações do algoritmo. É no corpo do algoritmo onde encontraremos o conjunto de instruções ou comandos para a execução do algoritmo
  • 28.
    Leia – Comandousado para inserir valores a partir do teclado ou de um outro dispositivo, de formas a serem lidos pela maquina. Escreva, Escreval comando usado para imprimir uma mensagem na tela. , := - Permite atribuir valores e resultados à determinadas variáveis. É principal forma de armazenar informações numa variável. Comandos e Instruções – São palavras usadas para orientar a maquina a executar diferentes açoes. Em pseudocodigo temos os seguintes comandos: Entrada: Leia Saida: Escreva, Escreval Atruibuiçao: , :=
  • 29.
    Exemplo: Calcular emostrar a média de duas notas de um estudante 1. Algoritmo “Achar a média” 2. Var 3. Nota1: inteiro 4. Nota2: inteiro 5. media, soma: real 6. Inicio 7. Leia (Nota1) 8. Leia (Nota2) 9. soma  Nota1 + Nota2 10. media  soma / 2 11. escreva (media) 12. Fim Linha 1– Demos inicio ao algorítmo e definimos um nome. Linha 2- Definimos o espaço para declarar variaveis e as declaramos nas linhas 3,4 e 5. Linhas 6 e 12- Delimitamos o inicio e o termino do algoritmo Linhas 7 e 8- Instruímos o computador a permitir que o usuário insira os valores das duas notas Linhas 9 e 10 – Efectuamos o processamento calculando a média Linha 11 – Imprimimos o resultado “na tela”. Para compilar os algoritmos em pseudocódigo, passaremos a utilizar uma ferramenta denominada VisualG
  • 31.
    Introdução ao VisualG- ou Portugol No exemplo anterior, vimos como é a estrutura de uma algoritmo em pseudocódigo, bem como o seu funcionamento depois de implementado. Existem conceitos importantes que devem ser aprendidos antes de prosseguirmos ao estudo de algoritmos computacionais. – Devem ser sempre declaradas antes de utilizadas; – Devem possuir um nome, e o seu valor pode ser variavel ou constante. – Ao nome da chamamos de identificadores e os valores devem pertencer à uma certa familia ou tipo de dados Declaração de variáveis em pseudocódigo : <Identificador> : <tipo de dado>
  • 32.
    Introdução ao VisualG- ou Portugol Regras para definir identificadores 1. Deve começar com uma letra ou “ __ ” 2. Os próximos podem ser letras ou números 3. Não pode utilizar nenhum sibolo excepto o “ __ ” 4. Não pode conter espaçamento 5. Nao pode ter letras com acento 6. Nao pode ser uma palavra reservada Exemplos de Variaveis Válidas: Inválidas a) 8_Ana b) Carlos Manuel c) a + c d) Média a) raio b) Manuel c) _43
  • 33.
    3º Tipo deDados - Definem o tipo ou formato da informação que se vai atribuir à uma variável, bem como os tipos de operações que serão realizados sobre as mesmas. Inteiros – Representa toda a informação numérica inteira, ou seja, sem a parte fraccionaria. E podem ser positivos, negativos ou nulos: Exemplo: -1; 1; 1000; 0 Real – Representa toda informação numérica pertencente ao conunto dos numeros reais (inteiros ou fraccionarios); Exemplo: -0.5; 0.001; -50.8076; 0; 3.1415, 1000 Caractere – Representa toda a sequencia de conteudos, letras, numeros e simbolos especiais (Alfanumericos). Sua representaçao deve ser feita dentro de aspas duplas. Exemplo: “Angola”; “1234 Alpha”, “Olá Mundo!...” Lógico – Representam apenas dois tipos de valores: “Verdadeiro e Falso”. Cada variavel deste tipo deve possuir apenas um destes valores, e sao chamados tambem de valores Booleanos. Exemplo: As lâmpadas estão apagas; 2+2 = 5-2; Café é ruim;
  • 34.
    Exercícios Teorico-Práticos 1. Elaboreum algoritmo que imprima na tela a frase “Olá Mundo”; 2. Elabore um algoritmo que receba o ano de nascimento de uma pessoa e determina a sua idade 3. Lê um número e mostra a terça parte deste número. 4. O balconista de um mini-mercado deseja saber o total que cada cliente deve pagar de acordo as compras feitas, supondo que cada cliente so compra um único produto. 5. Lê dois números e mostre os seguintes resultados: a. Dividendo: b. Divisor: c. Quociente: d. Resto (para calcular o resto de uma divisão, utilize o operador MOD).
  • 35.
    PROGRAMAÇÃO 1 Operadores eExpressoes Lógicas Engº Nunda Hilário Gunge Santos
  • 36.
    Operadores - Sãoelementos funcionais que atuam sobre operandos e produzem um determinado resultado. ex: 5 + 2 – Esta expressão, relaciona dois operandos (5 e 2) por meio do operador (+). De acordo com o número de operandos, os operadores podem ser classificados em:  Unários- quando atuam sobre um único operando. ex: Incremento (++), decremento(--), o sinal de (-) em frente de um numero cuja função é inverter o sinal;  Binários - Quando atuam sobre dois operandos. ex: os operadores das operações aritméticas básicas (soma, subtracção, multiplicação e divisão);
  • 37.
    Outra classificação dosoperadores é feita considerando-se o tipo de dado de seus operandos e do valor resultante de sua avaliação. Segundo esta classificação, os operadores dividem- se em aritméticos, lógicos e literais. Operadores Aritméticos - são aqueles cujo resultado da avaliação é do tipo numérico, seja ele inteiro ou real. Simbolo Descriçao Exemplo A = 7 / B = 2 Adição A + B Subtração A – B Multiplicação A * B Divisao (Faccionaria) A / B Divisão Inteira A B Exponenciação A^B MOD ou % Resto da Divisao A mod B * ^ /
  • 38.
    Na resolução deexpressões aritméticas deve-se utilizar a seguinte ordem de precedência entre os operadores: Simbolo Descriçao () Parênteses ^ Exponenciação * / % Mult, Div + - Soma e Subtração Exemplo: 10+9*3 (10+9)*3 Exemplo2: nota1 + nota2 + nota3 / 2 nota1 + (nota2+nota3)/2 Funções Pré-definidas – Podem ser chamadas de sub-algoritmos, são elementos incorporados dentro de uma linguagem de programação para efectuar um ou mais cálculos notáveis de forma mais simples e prática. Ex: Funções no VisualG: Simbolo Descriçao Exemplo ABS Vaor Absoluto ABS (-7) Exp Exponenciação Exp (4,2) Int Valor Inteiro Int (29.34) RaizQ Raiz Quadrada RaizQ (9) Pi Pi Sen Seno Cos Cosseno Tan Tangente
  • 39.
    Operadores Relacionais- Sãoutilizados para realizar comparações entre dois valores do mesmo tipo. Operaçoes realizadas por operadores relacionais recebem o nome de relação e devolvem sempre resultados lógicos(Verdadeiro ou Falso). Simbolo Descriçao Exemplo A=7; B=2 > Maior que A > B < Menor que A < B >= Maior ou igual à A >= B <= Menor ou igual à A <= B = Igual A = B <> Diferente A<>B
  • 40.
    Operadores Lógicos -Assim como os relacionais, também retornam resultados lógicos, porem nao servem para comparar dois valores ou expressoes, mas para apurar resultados logicos. P Q P e Q P ou Q NãoP V V Verdadeiro Verdadeiro Falso V F Falso Verdadeiro Falso F V Falso Verdadeiro Verdade F F Falso Falso Verdade Os operadores lógicos são tambem conhecidos comoconectivos, pois são utilizados para formar novas proposiçoes a partir de expressoes diversas. Exemplo: Sabendo que A = 5 e B = 8, resolva as seguintes expressões até ao último reduto. A<6 E B>7 Nao(A =5) E B<5 Nao((A<>B) OU (Nao(B>=8)))