Escolar Documentos
Profissional Documentos
Cultura Documentos
Criao de Algoritmos
Lgica de Programao
SUMRIO
INTRODUO..................................................................................................................18
O objetivo principal da Lgica de Programao demonstrar tcnicas para resoluo
de problemas e consequentemente automatizao de tarefas........................................18
Aprender a Lgica essencial para formao de um bom programador, servindo
como base para o aprender todas as linguagens de programao.................................18
De um modo geral esses conhecimentos sero de supra importncia pois ajudaro no
cotidiano, desenvolvendo um raciocnio rpido..............................................................18
ALGORITMO....................................................................................................................19
Um Algoritmo uma seqncia de instrues ordenadas de forma lgica para a
resoluo de uma determinada tarefa ou problema.......................................................19
ALGORITMO NO COMPUTACIONAL....................................................................19
Abaixo apresentado um Algoritmo no computacional cujo objetivo usar um
telefone pblico...................................................................................................................19
Incio....................................................................................................................................19
1.Tirar o fone do gancho;..................................................................................................19
2.Ouvir o sinal de linha;.....................................................................................................19
3.Introduzir o carto;.........................................................................................................19
4.Teclar o nmero desejado;.............................................................................................19
5.Se der o sinal de chamar.................................................................................................19
DESVIO.........................................................................................................................................................19
5.1 Conversar;....................................................................................................................19
5.2 Desligar;........................................................................................................................19
5.3 Retirar o carto;...........................................................................................................19
6. Seno................................................................................................................................19
6.1 Repetir;.........................................................................................................................19
Fim.......................................................................................................................................19
PROGRAMA......................................................................................................................19
Um programa um Algoritmo escrito em uma linguagem computacional..................19
LINGUAGENS DE PROGRAMAO..........................................................................20
2
Lgica de Programao
Lgica de Programao
TRADICIONAL....................................................................................................................................................21
COMPUTACIONAL...............................................................................................................................................21
MODULARIZAO DE EXPRESSES.......................................................................21
A modularizao a diviso da expresso em partes, proporcionando maior
compreenso e definindo prioridades para resoluo da mesma..................................21
Como pode ser observado no exemplo anterior, em expresses computacionais
usamos somente parnteses ( ) para modularizao...................................................21
Na informtica podemos ter parnteses dentro de parnteses.......................................21
Exemplos de prioridades:..................................................................................................21
(2+2)/2=2.............................................................................................................................21
2+2/2=3...............................................................................................................................21
OPERADORES ESPECIAIS (MOD e DIV)...................................................................22
MOD Retorna o resto da diviso entre 2 nmeros inteiros......................................22
DIV Retorna o valor inteiro que resulta da diviso entre 2 nmeros inteiros........22
Exemplo:.............................................................................................................................22
FUNES...........................................................................................................................22
Uma funo um instrumento (Subalgoritmo) que tem como objetivo retornar um
valor ou uma informao...................................................................................................23
A chamada de uma funo feita atravs da citao do seu nome seguido
opcionalmente de seu argumento inicial entre parnteses.............................................23
As funes podem ser predefinidas pela linguagem ou criadas pelo programador de
acordo com o seu interesse................................................................................................23
Exemplos:............................................................................................................................23
BIBLIOTECAS DE FUNES........................................................................................23
Armazenam um conjunto de funes que podem ser usadas pelos programas...........23
FUNES PR-DEFINIDAS..........................................................................................23
ABS( )..................................................................................................................................24
VALOR ABSOLUTO........................................................................................................24
SQRT( )...............................................................................................................................24
RAIZ QUADRADA...........................................................................................................24
4
Lgica de Programao
SQR( )..................................................................................................................................24
ELEVA AO QUADRADO ...............................................................................................24
TRUNC( )............................................................................................................................24
VALOR TRUNCADO.......................................................................................................24
ROUND( )...........................................................................................................................24
VALOR ARREDONDADO..............................................................................................24
LOG( ).................................................................................................................................24
LOGARITMO....................................................................................................................24
SIN( )...................................................................................................................................24
SENO...................................................................................................................................24
COS( )..................................................................................................................................24
COSENO.............................................................................................................................24
TAN( )..................................................................................................................................25
TANGENTE.......................................................................................................................25
As funes acima so as mais comuns e importantes para nosso desenvolvimento
lgico, entretanto, cada linguagem possui suas funes prpias. As funes podem ser
aritmticas, temporais, de texto e etc...............................................................................26
OPERADORES LGICOS..............................................................................................26
Atuam sobre expresses retornando sempre valores lgicos como Falso ou
Verdadeiro..........................................................................................................................26
E...........................................................................................................................................27
RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM VERDADEIRAS.. .27
OU........................................................................................................................................27
BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR
VERDADEIRO..................................................................................................................27
NO.....................................................................................................................................28
INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E VICE-VERSA.
..............................................................................................................................................28
TABELA VERDADE.........................................................................................................29
Lgica de Programao
A...........................................................................................................................................30
B...........................................................................................................................................30
A E B....................................................................................................................................30
A OU B................................................................................................................................30
NO (A)..............................................................................................................................30
V...........................................................................................................................................30
V...........................................................................................................................................30
V...........................................................................................................................................30
V...........................................................................................................................................30
F...........................................................................................................................................30
V...........................................................................................................................................30
F...........................................................................................................................................30
F...........................................................................................................................................30
V...........................................................................................................................................30
F...........................................................................................................................................30
F...........................................................................................................................................30
V...........................................................................................................................................30
F...........................................................................................................................................30
V...........................................................................................................................................30
V...........................................................................................................................................30
F...........................................................................................................................................31
F...........................................................................................................................................31
F...........................................................................................................................................31
F...........................................................................................................................................31
V...........................................................................................................................................31
EXPRESSES LGICAS................................................................................................32
As expresses compostas de relaes sempre retornam um valor lgico......................32
6
Lgica de Programao
Exemplos:............................................................................................................................32
2+5>4 Verdadeiro.........................................................................................................33
3<>3 Falso......................................................................................................................33
De acordo com a necessidade, as expresses podem ser unidas pelos operadores
lgicos..................................................................................................................................34
Exemplos:............................................................................................................................34
2+5>4 E 3<>3 Falso.......................................................................................................34
2+5>4 OU 3<>3 Verdadeiro.........................................................................................34
NO(3<>3) Verdadeiro.................................................................................................34
VARIVEIS.......................................................................................................................34
Variveis so endereos de memria destinados a armazenar informaes
temporariamente................................................................................................................34
* Todo Algoritmo ou programa deve possuir varivel!..................................................34
VARIVEIS DE ENTRADA E SADA...........................................................................34
Variveis de Entrada armazenam informaes fornecidas por um meio externo,
normalmente usurios ou discos.......................................................................................34
Variveis de Sada armazenam dados processados como resultados............................34
Exemplo:.............................................................................................................................34
De acordo com a figura acima A e B so Variveis de Entrada e C uma Varivel de
Sada....................................................................................................................................35
CONSTANTES...................................................................................................................35
Constantes so endereos de memria destinados a armazenar informaes fixas,
inalterveis durante a execuo do programa.................................................................35
Exemplo:.............................................................................................................................35
PI = 3.1416...........................................................................................................................35
IDENTIFICADORES........................................................................................................35
So os nomes dados a variveis, constantes e programas...............................................35
Regras Para construo de Identificadores:....................................................................35
No podem ter nomes de palavras reservadas (comandos da linguagem);..................35
7
Lgica de Programao
Lgica de Programao
ESCREVER Comando de sada que exibe uma informao na tela do monitor.. .36
IMPRIMIR Comando de sada que envia uma informao para a impressora.....36
SINAL DE ATRIBUIO................................................................................................36
Uma Varivel nunca eternamente igual a um valor, seu contedo pode ser alterado
a qualquer momento. Portanto para atribuir valores a variveis devemos usar o sinal
de :=.................................................................................................................................37
Exemplos:............................................................................................................................37
A := 2;..................................................................................................................................37
B := 3;..................................................................................................................................37
C := A + B;..........................................................................................................................37
SINAL DE IGUALDADE..................................................................................................37
As constantes so eternamente iguais a determinados valores, portanto usamos o sinal
de =...................................................................................................................................37
Exemplos:............................................................................................................................37
PI = 3.1416;.........................................................................................................................37
Empresa = Colgio de Informtica L.T.D.A.................................................................37
V = Verdadeiro...................................................................................................................37
CORPO GERAL DE UM PROGRAMA.........................................................................38
PROGRAMA <<identificador>>;....................................................................................38
CONST................................................................................................................................38
<<identificador>> = <<dado>>........................................................................................38
VAR.....................................................................................................................................38
<<identificador>> : <<tipo>>;........................................................................................38
NICIO................................................................................................................................38
{ ..........................................................................................................................................38
COMANDOS DE ENTRADA,PROCESSAMENTO E SADA ...................................38
<<comando1>>;..................................................................................................................38
<<comandoN>>..................................................................................................................38
Lgica de Programao
}............................................................................................................................................38
FIM......................................................................................................................................38
ESTRUTURAS SEQNCIAIS......................................................................................38
Como pode ser analisado no tpico anterior, todo programa possui uma estrutura
seqencial determinada por um NICIO e FIM..............................................................38
; PONTO E VRGULA ;...................................................................................................38
O sinal de ponto e vrgula ; indica a existncia de um prximo comando (passa
para o prximo)..................................................................................................................38
Na estrutura NICIO e no comando que antecede a estrutura FIM no se usa ;....38
ALGORITMOs..................................................................................................................39
PRIMEIRO ALGORITMO..............................................................................................39
Segue um Algoritmo que l o nome e as 4 notas bimestrais de um aluno. Em seguida o
Algoritmo calcula e escreve a mdia obtida.....................................................................39
PROGRAMA MEDIA_FINAL;.......................................................................................39
VAR.....................................................................................................................................39
NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: INTEIRO;.............................................39
NOME : CARACTERE [35].............................................................................................39
INICIO................................................................................................................................39
LER (NOME);...................................................................................................................39
LER (NOTA1, NOTA2, NOTA3, NOTA4);....................................................................39
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;.............................................39
ESCREVER (NOME, MEDIA).......................................................................................39
FIM......................................................................................................................................39
SEGUNDO ALGORITMO...............................................................................................39
Segue um Algoritmo que l o raio de uma circunferncia e calcula sua rea..............39
PROGRAMA AREA_CIRCUNFERENCIA;.................................................................39
CONST PI = 3.1416;..........................................................................................................39
VAR RAIO, AREA : REAL;.............................................................................................39
10
Lgica de Programao
INICIO................................................................................................................................39
LER (RAIO); {PROCESSAMENTO}.............................................................................39
AREA := PI * SQR(RAIO); {ENTRADA} ....................................................................39
ESCREVER (AREA =, AREA) {SADA}....................................................................39
FIM......................................................................................................................................39
{LINHAS DE COMENTRIO}.......................................................................................40
Podemos inserir em um Algoritmo comentrios para aumentar a compreenso do
mesmo, para isso basta que o texto fique entre Chaves {}..........................................40
Exemplo:.............................................................................................................................40
LER (RAIO); {ENTRADA}..............................................................................................40
ASPAS SIMPLES............................................................................................................40
Quando queremos exibir uma mensagem para a tela ou impressora ela deve estar
contida entre aspas simples, caso contrrio, o computador ir identificar a mensagem
como Varivel Indefinida..................................................................................................40
Exemplo:.............................................................................................................................40
ESCREVER (AREA OBTIDA =, AREA) {COMANDO DE SADA}......................40
AREA OBTIDA = X.XX {RESULTADO GERADO NA TELA}.................................40
ESTRUTURAS DE DECISO.........................................................................................40
Executa uma seqncia de comandos de acordo com o resultado de um teste............40
A estrutura de deciso pode ser Simples ou Composta, baseada em um resultado
lgico....................................................................................................................................40
Simples:...............................................................................................................................41
SE <<CONDIO>>.........................................................................................................41
ENTO <<COMANDO1>>.............................................................................................41
Composta 1:........................................................................................................................41
SE <<CONDIO>>.........................................................................................................41
ENTO <<COMANDO1>>.............................................................................................41
SENO <<COMANDO1>>.............................................................................................41
Composta 2:........................................................................................................................41
11
Lgica de Programao
SE <<CONDIO>>.........................................................................................................41
ENTO INICIO................................................................................................................41
<<COMANDO1>>;............................................................................................................41
<<COMANDON>>............................................................................................................41
FIM;..................................................................................................................................41
SENO INICIO................................................................................................................41
<<COMANDO1>>; <<COMANDON>>.........................................................................41
FIM;..................................................................................................................................41
ALGORITMO TRS.........................................................................................................41
Segue um Algoritmo que l 2 nmeros e escreve o maior..............................................41
PROGRAMA ACHA_MAIOR;.......................................................................................41
VAR A, B : INTEIRO;.......................................................................................................41
INICIO................................................................................................................................41
LER (A, B);........................................................................................................................41
SE A>B...............................................................................................................................41
ENTO ESCREVER (A)................................................................................................41
SENO ESCREVER (B).................................................................................................41
FIM......................................................................................................................................41
ALGORITMO QUATRO.................................................................................................41
Segue um Algoritmo que l o nome e as 4 notas bimestrais de um aluno. Em seguida o
Algoritmo calcula e escreve a mdia obtida pelo aluno escrevendo tambm se o aluno
foi aprovado ou reprovado................................................................................................42
Mdia para aprovao = 6.................................................................................................42
PROGRAMA MEDIA_FINAL;.......................................................................................42
VAR.....................................................................................................................................42
NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: REAL;...................................................42
NOME : CARACTERE [35].............................................................................................42
INICIO................................................................................................................................42
12
Lgica de Programao
LER (NOME);...................................................................................................................42
LER (NOTA1, NOTA2, NOTA3, NOTA4);....................................................................42
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;.............................................42
SE MEDIA>=6...................................................................................................................42
ENTO ESCREVER (APROVADO)...........................................................................42
SENO ESCREVER (REPROVADO).........................................................................42
ESCREVER (NOME, MEDIA)........................................................................................42
FIM......................................................................................................................................42
ALGORITMO CINCO......................................................................................................42
Segue um Algoritmo que l 3 nmeros e escreve o maior..............................................42
PROGRAMA ACHA_MAIOR;.......................................................................................42
VAR A, B, C : INTEIRO;..................................................................................................42
INICIO................................................................................................................................42
LER (A, B, C);...................................................................................................................42
SE (A>B) E (A>C).............................................................................................................42
ENTO ESCREVER (A)................................................................................................42
SENO SE (B>A) E (B>C).............................................................................................42
ENTO ESCREVER (B)..................................................................................................42
SENO ESCREVER (C)...................................................................................................42
FIM......................................................................................................................................42
ESTRUTURAS DE CONDIO (CASE).......................................................................42
A estrutura de condio eqivale a um ninho de SES...................................................43
Forma Geral:......................................................................................................................43
FACA CASO.......................................................................................................................43
CASO <<CONDIO1>>...............................................................................................43
<<COMANDO1>>;..........................................................................................................43
CASO <<CONDION>>..............................................................................................43
13
Lgica de Programao
<<COMANDO1>>;..........................................................................................................43
OUTROS CASOS..............................................................................................................43
<<COMANDO1>>;..........................................................................................................43
FIM DE CASO...................................................................................................................43
ALGORITMO SEIS..........................................................................................................43
Segue um Algoritmo que l 3 nmeros e escreve o maior..............................................43
PROGRAMA ACHA_MAIOR;.......................................................................................43
VAR A, B, C : INTEIRO;..................................................................................................43
INICIO................................................................................................................................43
LER (A, B, C);...................................................................................................................43
FACA CASO......................................................................................................................43
CASO (A>B) E (A>C)........................................................................................................43
ESCREVER (A);.............................................................................................................43
CASO (B>A) E (B>C)......................................................................................................43
ESCREVER (B);................................................................................................................43
OUTROS CASOS...............................................................................................................43
ESCREVER (C);................................................................................................................43
FIM DE CASO..................................................................................................................43
FIM......................................................................................................................................43
ESTRUTURA DE REPETIO DETERMINADA......................................................43
Quando uma seqncia de comandos deve ser executada repetidas vezes, tem-se uma
estrutura de repetio........................................................................................................43
A estrutura de repetio, assim como a de deciso, envolve sempre a avaliao de
uma condio......................................................................................................................43
Na repetio determinada o algoritmo apresenta previamente a quantidade de
repeties.............................................................................................................................44
Forma Geral 1:...................................................................................................................44
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE
<<VALOR FINAL>> FAA.............................................................................................44
14
Lgica de Programao
<<COMANDO1>>;...........................................................................................................44
Forma Geral 2:...................................................................................................................44
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE
<<VALOR FINAL>> FAA.............................................................................................44
NICIO...............................................................................................................................44
<<COMANDO1>>;............................................................................................................44
<<COMANDON>>............................................................................................................44
FIM;....................................................................................................................................44
A repetio por padro determina o passo do valor inicial at o valor final como
sendo 1. Determinadas linguagens possuem passo 1 ou permitem que o programador
defina o passo......................................................................................................................44
ALGORITMO SETE.........................................................................................................44
Segue um algoritmo que escreve 10 vezes a frase VASCO DA GAMA....................44
PROGRAMA REPETICAO;............................................................................................44
VAR I:INTEIRO................................................................................................................44
INICIO................................................................................................................................44
PARA I :=1 ATE 10 FACA..............................................................................................44
ESCREVER (VASCO DA GAMA).............................................................................44
FIM......................................................................................................................................44
ALGORITMO OITO.........................................................................................................44
Segue um algoritmo que escreve os 100 primeiros nmeros pares...............................45
PROGRAMA PARES;......................................................................................................45
VAR I,PAR: INTEGER;...................................................................................................45
INICIO................................................................................................................................45
PAR:=0;..............................................................................................................................45
PARA I:=1 ATE 100 FACA..............................................................................................45
INICIO..............................................................................................................................45
ESCREVER (PAR);........................................................................................................45
15
Lgica de Programao
PAR := PAR+2................................................................................................................45
FIM....................................................................................................................................45
FIM.....................................................................................................................................45
ESTRUTURA DE REPETIO INDETERMINADA COM VALIDAO INICIAL
..............................................................................................................................................45
usada para repetir N vezes uma ou mais instrues. Tendo como vantagem o fato
de no ser necessrio o conhecimento prvio do nmero de repeties........................45
Forma Geral 1:...................................................................................................................45
ENQUANTO <<CONDIO>> FACA..........................................................................45
<<COMANDO1>>;...........................................................................................................45
Forma Geral 2:...................................................................................................................45
ENQUANTO <<CONDIO>> FACA..........................................................................45
NICIO...............................................................................................................................45
<<COMANDO1>>;..........................................................................................................45
<<COMANDON>>..........................................................................................................45
FIM;....................................................................................................................................45
ALGORITMO NOVE.......................................................................................................46
Segue um algoritmo que calcule a soma dos salrios dos funcionrios de uma
empresa. O programa termina quando o usurio digitar um salrio menor que 0.....46
PROGRAMA SOMA_SALARIOS;.................................................................................46
VAR SOMA, SALARIO : REAL;....................................................................................46
INICIO................................................................................................................................46
SOMA:=O;.........................................................................................................................46
SALARIO:=1;....................................................................................................................46
ENQUANTO SALARIO>=0............................................................................................46
INICIO..............................................................................................................................46
LER (SALARIO);...........................................................................................................46
SOMA:=SOMA+SALARIO...........................................................................................46
16
Lgica de Programao
FIM;...................................................................................................................................46
ESCREVER (SOMA).......................................................................................................46
FIM......................................................................................................................................46
ESTRUTURA DE REPETIO INDETERMINADA COM VALIDAO FINAL 46
Assim como a estrutura ENQUANTO usada para repetir N vezes uma ou mais
instrues. ..........................................................................................................................46
Sua validao final fazendo com que a repetio seja executada pelo menos uma
vez........................................................................................................................................46
Forma Geral;......................................................................................................................46
REPITA...............................................................................................................................46
<<COMANDO1>>;...........................................................................................................47
<<COMANDON>>...........................................................................................................47
ATE <<CONDIO>>.....................................................................................................47
ALGORITMO DEZ...........................................................................................................47
Segue um algoritmo que calcule a soma dos salrios dos funcionrios de uma
empresa. O programa termina quando o usurio digitar um salrio menor que 0.....47
PROGRAMA SOMA_SALARIOS;.................................................................................47
VAR.....................................................................................................................................47
SOMA, SALARIO : REAL;..............................................................................................47
INICIO................................................................................................................................47
SOMA:=O;.........................................................................................................................47
REPITA..............................................................................................................................47
LER (SALARIO);............................................................................................................47
SOMA:=SOMA+SALARIO............................................................................................47
ATE SALARIO<0;............................................................................................................47
ESCREVER (SOMA).......................................................................................................47
FIM......................................................................................................................................47
EXERCCIOS....................................................................................................................48
17
Lgica de Programao
INTRODUO
para
resoluo
de
problemas
consequentemente
automatizao de tarefas.
Aprender
Lgica
essencial
para
formao
de
um
bom
De
um
modo
importncia
geral
pois
esses
ajudaro
conhecimentos
no
cotidiano,
sero
de
supra
desenvolvendo
um
raciocnio rpido.
18
Lgica de Programao
ALGORITMO
Um Algoritmo uma seqncia de instrues ordenadas de forma
lgica
para
resoluo
de
uma
determinada
tarefa
ou
problema.
ALGORITMO NO COMPUTACIONAL
Abaixo
apresentado
um
Algoritmo
no
computacional
cujo
Incio
1. Tirar o fone do gancho;
2. Ouvir o sinal de linha;
3. Introduzir o carto;
SEQUNCIAL
DESVIO
5.1 Conversar;
5.2 Desligar;
5.3 Retirar o carto;
6. Seno
6.1 Repetir;
Fim.
PROGRAMA
Um
programa
um
Algoritmo
escrito
em
uma
linguagem
computacional.
19
Lgica de Programao
LINGUAGENS DE PROGRAMAO
So Softwares que permitem o desenvolvimento de programas.
Possuem um poder de criao ilimitado, desde jogos, editores
de texto, sistemas empresariais at sistemas operacionais.
Existem vrias linguagens de programao, cada uma com suas
caractersticas prprias.
Exemplos:
Pascal
Clipper
Visual Basic
Delphi e etc.
OPERADORES ARITMTICOS
+
Adio
Subtrao
Multiplicao
Diviso
OPERADORES RELACIONAIS
>
Maior que
<
Menor que
>=
Maior ou Igual
<=
Menor ou Igual
Igual
Diferente
20
Lgica de Programao
LINEARIZAO DE EXPRESSES
Para
construo
de
Algoritmos
todas
as
expresses
importante
tambm
ressalvar
da
aritmtica
correspondentes
uso
dos
operadores
tradicional
para
computacional.
Exemplo:
2
3 + ( 5 3) + 1 =
(2/3+(5-3))+1=
Tradicional
Computacional
MODULARIZAO DE EXPRESSES
A
modularizao
diviso
da
expresso
em
partes,
usamos
somente
parnteses
para
modularizao.
Na informtica podemos ter parnteses dentro de parnteses.
Exemplos de prioridades:
(2+2)/2=2
2+2/2=3
21
Lgica de Programao
13 2
1
MOD
13 DIV 2 = 6
6
DIV
13 MOD 2 = 1
FUNES
22
Lgica de Programao
X=9
Valor Inicial X
x
x
Processamento
BIBLIOTECAS DE FUNES
Armazenam um conjunto de funes que podem ser usadas pelos
programas.
Valor Final Y
FUNES PR-DEFINIDAS
Y=3
23
Lgica de Programao
ABS( )
VALOR ABSOLUTO
SQRT( )
RAIZ QUADRADA
SQR( )
ELEVA AO QUADRADO
TRUNC( )
VALOR TRUNCADO
ROUND( )
VALOR ARREDONDADO
LOG( )
LOGARITMO
SIN( )
SENO
COS( )
COSENO
24
Lgica de Programao
TAN( )
TANGENTE
25
Lgica de Programao
funes
lgico,
prpias.
entretanto,
As
funes
cada
podem
linguagem
ser
possui
aritmticas,
OPERADORES LGICOS
Atuam sobre expresses retornando sempre valores lgicos
como Falso ou Verdadeiro.
26
Lgica de Programao
OU
27
Lgica de Programao
NO
28
Lgica de Programao
TABELA VERDADE
29
Lgica de Programao
A E B
A OU B
NO (A)
30
Lgica de Programao
31
Lgica de Programao
EXPRESSES LGICAS
As expresses compostas de relaes sempre retornam um valor
lgico.
Exemplos:
32
Lgica de Programao
2+5>4 Verdadeiro
3<>3 Falso
33
Lgica de Programao
F
E
F
2+5>4 OU 3<>3 Verdadeiro
V
V
NO(3<>3) Verdadeiro
NO
VARIVEIS
V
Variveis so endereos de memria destinados a armazenar
informaes temporariamente.
* Todo Algoritmo ou programa deve possuir varivel!
de
Sada
armazenam
dados
processados
como
resultados.
Exemplo:
A
C=A+B
34
Lgica de Programao
CONSTANTES
Constantes so endereos de memria destinados a armazenar
informaes
fixas,
inalterveis
durante
execuo
do
programa.
Exemplo:
PI = 3.1416
IDENTIFICADORES
So os nomes dados a variveis, constantes e programas.
Regras Para construo de Identificadores:
No
podem
ter
nomes
de
palavras
reservadas
(comandos da linguagem);
Devem possuir como 1 caractere uma letra ou
Underscore ( _ );
Ter como demais caracteres letras, nmeros ou
Underscore;
Ter no mximo 127 caracteres;
No possuir espaos em branco;
A escolha de letras maisculas ou minsculas
indiferente.
Exemplos:
35
Lgica de Programao
NOME
TELEFONE
IDADE_FILHO
NOTA1
SALARIO
PI
UMNOMEMUITOCOMPRIDOEDIFICILDELER
UM_NOME_MUITO_COMPRIDO_E_FACIL_DE_LER
TIPOS DE DADOS
INTEIRO
REAL
CARACTERE
CARACTERES
TORNAM
SE
REPRESENTATIVOS
PERDEM
ATRIBUIO DE VALOR.
LGICO
SINAL DE ATRIBUIO
36
Lgica de Programao
Uma
Varivel
nunca
eternamente
igual
um
valor,
seu
SINAL DE IGUALDADE
As constantes so eternamente iguais a determinados valores,
portanto usamos o sinal de =.
Exemplos:
PI = 3.1416;
Empresa = Colgio de Informtica L.T.D.A.
V = Verdadeiro
37
Lgica de Programao
<<tipo>>;
NICIO
{
COMANDOS DE ENTRADA,PROCESSAMENTO E SADA
<<comando1>>;
<<comandoN>>
}
FIM.
ESTRUTURAS SEQNCIAIS
Como
pode
ser
analisado
no
tpico
anterior,
todo
; PONTO E VRGULA ;
O sinal de ponto e vrgula ; indica a existncia de um
prximo comando (passa para o prximo).
Na estrutura NICIO e no comando que antecede a estrutura FIM
no se usa ;.
38
Lgica de Programao
ALGORITMOs
PRIMEIRO ALGORITMO
Segue um Algoritmo que l o nome e as 4 notas bimestrais
de um aluno. Em seguida o Algoritmo calcula e escreve a mdia
obtida.
PROGRAMA MEDIA_FINAL;
VAR
NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: INTEIRO;
NOME : CARACTERE [35]
INICIO
LER (NOME);
LER (NOTA1, NOTA2, NOTA3, NOTA4);
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;
ESCREVER (NOME, MEDIA)
FIM.
SEGUNDO ALGORITMO
Segue um Algoritmo que l o raio de uma circunferncia e
calcula sua rea.
PROGRAMA AREA_CIRCUNFERENCIA;
CONST PI = 3.1416;
VAR RAIO, AREA : REAL;
INICIO
LER (RAIO); {PROCESSAMENTO}
AREA := PI * SQR(RAIO); {ENTRADA}
ESCREVER (AREA =, AREA) {SADA}
FIM.
39
Lgica de Programao
{LINHAS DE COMENTRIO}
Podemos inserir em um Algoritmo comentrios para aumentar a
compreenso do mesmo, para isso basta que o texto fique entre
Chaves {}.
Exemplo:
LER (RAIO); {ENTRADA}
ASPAS SIMPLES
Quando queremos exibir uma mensagem para a tela ou impressora
ela deve estar contida entre aspas simples, caso contrrio, o
computador
ir
identificar
mensagem
como
Varivel
Indefinida.
Exemplo:
ESCREVER (AREA OBTIDA
ESTRUTURAS DE DECISO
Executa uma seqncia de comandos de acordo com o resultado
de um teste.
A estrutura de deciso pode ser Simples ou Composta, baseada
em um resultado lgico.
40
Lgica de Programao
Simples:
Composta 1:
SE <<CONDIO>>
SE <<CONDIO>>
ENTO <<COMANDO1>>
ENTO <<COMANDO1>>
SENO <<COMANDO1>>
Composta 2:
SE <<CONDIO>>
ENTO INICIO
<<COMANDO1>>;
<<COMANDON>>
FIM;
SENO INICIO
<<COMANDO1>>; <<COMANDON>>
FIM;
ALGORITMO TRS
Segue um Algoritmo que l 2 nmeros e escreve o maior.
PROGRAMA ACHA_MAIOR;
VAR A, B : INTEIRO;
INICIO
LER (A, B);
SE A>B
ENTO ESCREVER (A)
SENO ESCREVER (B)
FIM.
ALGORITMO QUATRO
41
Lgica de Programao
ALGORITMO CINCO
Segue um Algoritmo que l 3 nmeros e escreve o maior.
PROGRAMA ACHA_MAIOR;
VAR A, B, C : INTEIRO;
INICIO
LER (A, B, C);
SE (A>B) E (A>C)
ENTO ESCREVER (A)
SENO SE (B>A) E (B>C)
ENTO ESCREVER (B)
SENO ESCREVER (C)
FIM.
Lgica de Programao
ALGORITMO SEIS
Segue um Algoritmo que l 3 nmeros e escreve o maior.
PROGRAMA ACHA_MAIOR;
VAR A, B, C : INTEIRO;
INICIO
LER (A, B, C);
FACA CASO
CASO (A>B) E (A>C)
ESCREVER (A);
CASO (B>A) E (B>C)
ESCREVER (B);
OUTROS CASOS
ESCREVER (C);
FIM DE CASO
FIM.
estrutura
de
repetio,
assim
como
de
deciso,
Lgica de Programao
Na
repetio
determinada
algoritmo
apresenta
ALGORITMO SETE
Segue um algoritmo que escreve 10 vezes a frase VASCO DA
GAMA
PROGRAMA REPETICAO;
VARIVEL INCRIMENTADA DE 1 EM 1
VAR I:INTEIRO
INICIO
PARA I :=1 ATE 10 FACA
ALGORITMO OITO
44
Lgica de Programao
Segue
um
algoritmo
que
escreve
os
100
primeiros
nmeros
pares.
PROGRAMA PARES;
VAR I,PAR: INTEGER;
INICIO
PAR:=0;
PARA I:=1 ATE 100 FACA
INICIO
ESCREVER (PAR);
PAR := PAR+2
FIM
FIM.
VALIDAO INICIAL
Forma Geral 2:
ENQUANTO <<CONDIO>> FACA
NICIO
<<COMANDO1>>;
<<COMANDON>>
FIM;
45
Lgica de Programao
ALGORITMO NOVE
Segue
um
algoritmo
que
calcule
soma
dos
salrios
dos
46
Lgica de Programao
<<COMANDO1>>;
<<COMANDON>>
ATE <<CONDIO>>
ALGORITMO DEZ
Segue
um
algoritmo
que
calcule
soma
dos
salrios
dos
PROGRAMA SOMA_SALARIOS;
VAR
SOMA, SALARIO : REAL;
INICIO
SOMA:=O;
REPITA
LER (SALARIO);
SOMA:=SOMA+SALARIO
ATE SALARIO<0;
ESCREVER (SOMA)
FIM.
47
Lgica de Programao
EXERCCIOS
1)O QUE UM ALGORITMO?
2)O QUE UM PROGRAMA?
3)CRIE UM ALGORITMO NO COMPUTACIONAL, QUE TROQUE UM PNEU DE
CARRO.
4)O QUE UMA LINGUAGEM DE PROGRAMAO?
5)LINEARIZE AS EXPRESSES ABAIXO:
5
+ 7 * (8 5) =
8
[ 25 * 3 +(7 4)]
B
V
F
V
F
A ou B
A e B
no A
uma
48
Lgica de Programao
49