SlideShare uma empresa Scribd logo
1 de 60
SUMÁRIO 
INTRODUÇÃO...............................................................................................................................................20 
INTRODUÇÃO...............................................................................................................................................20 
O OBJETIVO PRINCIPAL DA LÓGICA DE PROGRAMAÇÃO É DEMONSTRAR TÉCNICAS 
PARA RESOLUÇÃO DE PROBLEMAS E CONSEQUENTEMENTE AUTOMATIZAÇÃO DE 
TAREFAS.........................................................................................................................................................20 
O APRENDIZADO DA LÓGICA É ESSENCIAL PARA FORMAÇÃO DE UM BOM 
PROGRAMADOR, SERVINDO COMO BASE PARA O APRENDIZADO DE TODAS AS 
LINGUAGENS DE PROGRAMAÇÃO, ESTRUTURADAS OU NÃO....................................................20 
ALGORITMO.................................................................................................................................................21 
ALGORITMO.................................................................................................................................................21 
UM ALGORITMO É UMA SEQÜÊNCIA DE INSTRUÇÕES ORDENADAS DE FORMA LÓGICA 
PARA A RESOLUÇÃO DE UMA DETERMINADA TAREFA OU PROBLEMA.................................21 
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> 
FAÇA................................................................................................................................................................23 
ÍNICIO.............................................................................................................................................................23 
<<COMANDO1>>;.........................................................................................................................................23 
<<COMANDON>>..........................................................................................................................................23 
FIM;.................................................................................................................................................................23 
ALGORITMO NÃO COMPUTACIONAL..................................................................................................24 
ALGORITMO NÃO COMPUTACIONAL..................................................................................................24 
ABAIXO É APRESENTADO UM ALGORITMO NÃO COMPUTACIONAL CUJO OBJETIVO É 
USAR UM TELEFONE PÚBLICO...............................................................................................................24 
INÍCIO..............................................................................................................................................................24 
1.TIRAR O FONE DO GANCHO;................................................................................................................24 
2.OUVIR O SINAL DE LINHA;....................................................................................................................24 
3.INTRODUZIR O CARTÃO;......................................................................................................................24 
4.TECLAR O NÚMERO DESEJADO;.........................................................................................................24 
5.SE DER O SINAL DE CHAMAR...............................................................................................................24 
5.1 CONVERSAR;...........................................................................................................................................24 
5.2 DESLIGAR;...............................................................................................................................................24 
5.3 RETIRAR O CARTÃO;...........................................................................................................................24
Algoritmos 
6. SENÃO.........................................................................................................................................................24 
6.1 REPETIR;.................................................................................................................................................24 
FIM...................................................................................................................................................................24 
PROGRAMA...................................................................................................................................................24 
PROGRAMA...................................................................................................................................................24 
UM PROGRAMA É UM ALGORITMO ESCRITO EM UMA LINGUAGEM COMPUTACIONAL. 
...........................................................................................................................................................................24 
LINGUAGENS DE PROGRAMAÇÃO........................................................................................................25 
LINGUAGENS DE PROGRAMAÇÃO........................................................................................................25 
SÃO SOFTWARES QUE PERMITEM O DESENVOLVIMENTO DE PROGRAMAS. POSSUEM 
UM PODER DE CRIAÇÃO ILIMITADO, DESDE JOGOS, EDITORES DE TEXTO, SISTEMAS 
EMPRESARIAIS ATÉ SISTEMAS OPERACIONAIS..............................................................................25 
EXISTEM VÁRIAS LINGUAGENS DE PROGRAMAÇÃO, CADA UMA COM SUAS 
CARACTERÍSTICAS PRÓPRIAS...............................................................................................................25 
EXEMPLOS:..................................................................................................................................................25 
PASCAL...........................................................................................................................................................25 
CLIPPER..........................................................................................................................................................25 
C........................................................................................................................................................................25 
VISUAL BASIC...............................................................................................................................................25 
DELPHI E ETC. .............................................................................................................................................25 
TÉCNICAS ATUAIS DE PROGRAMAÇÃO..............................................................................................26 
TÉCNICAS ATUAIS DE PROGRAMAÇÃO..............................................................................................26 
PROGRAMAÇÃO SEQÜENCIAL...............................................................................................................26 
PROGRAMAÇÃO ESTRUTURADA...........................................................................................................26 
PROGRAMAÇÃO ORIENTADA A EVENTOS E OBJETOS..................................................................26 
ALGORITMOS EM “PORTUGOL”............................................................................................................26 
ALGORITMOS EM “PORTUGOL”............................................................................................................26 
DURANTE NOSSO CURSO IREMOS APRENDER A DESENVOLVER NOSSOS ALGORITMOS 
EM UMA PSEUDO-LINGUAGEM CONHECIDA COMO “PORTUGOL” OU PORTUGUÊS 
ESTRUTURADO.............................................................................................................................................26 
“PORTUGOL” É DERIVADO DA AGLUTINAÇÃO DE PORTUGUÊS + ALGOL. ALGOL É O 
NOME DE UMA LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA USADA NO FINAL DA 
DÉCADA DE 50...............................................................................................................................................26 
OPERADORES ARITMÉTICOS..................................................................................................................26 
2
Algoritmos 
OPERADORES ARITMÉTICOS..................................................................................................................26 
+  ADIÇÃO..................................................................................................................................................26 
-  SUBTRAÇÃO..........................................................................................................................................26 
*  MULTIPLICAÇÃO................................................................................................................................26 
/  DIVISÃO...................................................................................................................................................26 
OPERADORES RELACIONAIS..................................................................................................................27 
OPERADORES RELACIONAIS..................................................................................................................27 
>  MAIOR QUE...........................................................................................................................................27 
<  MENOR QUE..........................................................................................................................................27 
>=  MAIOR OU IGUAL.............................................................................................................................27 
<=  MENOR OU IGUAL............................................................................................................................27 
=  IGUAL......................................................................................................................................................27 
<>  DIFERENTE.........................................................................................................................................27 
LINEARIZAÇÃO DE EXPRESSÕES..........................................................................................................27 
LINEARIZAÇÃO DE EXPRESSÕES..........................................................................................................27 
PARA A CONSTRUÇÃO DE ALGORITMOS TODAS AS EXPRESSÕES ARITMÉTICAS DEVEM 
SER LINEARIZADAS, OU SEJA, COLOCADAS EM LINHAS..............................................................27 
É IMPORTANTE TAMBÉM RESSALVAR O USO DOS OPERADORES CORRESPONDENTES 
DA ARITMÉTICA TRADICIONAL PARA A COMPUTACIONAL......................................................27 
EXEMPLO:......................................................................................................................................................27 
MODULARIZAÇÃO DE EXPRESSÕES.....................................................................................................28 
MODULARIZAÇÃO DE EXPRESSÕES.....................................................................................................28 
A MODULARIZAÇÃO É A DIVISÃO DA EXPRESSÃO EM PARTES, PROPORCIONANDO 
MAIOR COMPREENSÃO E DEFININDO PRIORIDADES PARA RESOLUÇÃO DA MESMA......28 
COMO PODE SER OBSERVADO NO EXEMPLO ANTERIOR, EM EXPRESSÕES 
COMPUTACIONAIS USAMOS SOMENTE PARÊNTESES “( )” PARA MODULARIZAÇÃO........28 
NA INFORMÁTICA PODEMOS TER PARÊNTESES DENTRO DE PARÊNTESES.........................28 
EXEMPLOS DE PRIORIDADES:................................................................................................................28 
(2+2)/2=2...........................................................................................................................................................28 
2+2/2=3.............................................................................................................................................................28 
OPERADORES ESPECIAIS (MOD E DIV)................................................................................................28 
3
Algoritmos 
OPERADORES ESPECIAIS (MOD E DIV)................................................................................................28 
MOD  RETORNA O RESTO DA DIVISÃO ENTRE 2 NÚMEROS INTEIROS................................28 
DIV  RETORNA O VALOR INTEIRO QUE RESULTA DA DIVISÃO ENTRE 2 NÚMEROS 
INTEIROS........................................................................................................................................................28 
EXEMPLO:......................................................................................................................................................29 
FUNÇÕES........................................................................................................................................................29 
FUNÇÕES........................................................................................................................................................29 
UMA FUNÇÃO É UM INSTRUMENTO (SUB–ALGORITMO) QUE TEM COMO OBJETIVO 
RETORNAR UM VALOR OU UMA INFORMAÇÃO..............................................................................29 
A CHAMADA DE UMA FUNÇÃO É FEITA ATRAVÉS DA CITAÇÃO DO SEU NOME SEGUIDO 
OPCIONALMENTE DE SEU ARGUMENTO INICIAL ENTRE PARÊNTESES.................................29 
AS FUNÇÕES PODEM SER PREDEFINIDAS PELA LINGUAGEM OU CRIADAS PELO 
PROGRAMADOR DE ACORDO COM O SEU INTERESSE..................................................................29 
EXEMPLOS:...................................................................................................................................................29 
BIBLIOTECAS DE FUNÇÕES.....................................................................................................................30 
BIBLIOTECAS DE FUNÇÕES.....................................................................................................................30 
ARMAZENAM UM CONJUNTO DE FUNÇÕES QUE PODEM SER USADAS PELOS 
PROGRAMAS.................................................................................................................................................30 
FUNÇÕES PRÉ-DEFINIDAS........................................................................................................................30 
FUNÇÕES PRÉ-DEFINIDAS........................................................................................................................30 
ABS( )................................................................................................................................................................30 
VALOR ABSOLUTO......................................................................................................................................30 
SQRT( ).............................................................................................................................................................30 
RAIZ QUADRADA.........................................................................................................................................30 
SQR( )...............................................................................................................................................................30 
ELEVA AO QUADRADO .............................................................................................................................30 
TRUNC( ).........................................................................................................................................................30 
VALOR TRUNCADO.....................................................................................................................................30 
ROUND( ).........................................................................................................................................................30 
VALOR ARREDONDADO............................................................................................................................30 
LOG( )...............................................................................................................................................................30 
LOGARITMO.................................................................................................................................................30 
4
Algoritmos 
SIN( ).................................................................................................................................................................30 
SENO................................................................................................................................................................30 
COS( )...............................................................................................................................................................30 
COSENO..........................................................................................................................................................30 
TAN( )...............................................................................................................................................................30 
TANGENTE.....................................................................................................................................................30 
AS FUNÇÕES ACIMA SÃO AS MAIS COMUNS E IMPORTANTES PARA NOSSO 
DESENVOLVIMENTO LÓGICO, ENTRETANTO, CADA LINGUAGEM POSSUI SUAS 
FUNÇÕES PRÓPIAS. AS FUNÇÕES PODEM SER ARITMÉTICAS, TEMPORAIS, DE TEXTO E 
ETC...................................................................................................................................................................31 
OPERADORES LÓGICOS............................................................................................................................31 
OPERADORES LÓGICOS............................................................................................................................31 
ATUAM SOBRE EXPRESSÕES RETORNANDO SEMPRE VALORES LÓGICOS COMO FALSO 
OU VERDADEIRO.........................................................................................................................................31 
E.........................................................................................................................................................................31 
RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM VERDADEIRAS................................31 
OU.....................................................................................................................................................................31 
BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR VERDADEIRO....................31 
NÃO..................................................................................................................................................................31 
INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E VICE-VERSA..........................31 
TABELA VERDADE......................................................................................................................................31 
TABELA VERDADE......................................................................................................................................31 
A........................................................................................................................................................................31 
B.........................................................................................................................................................................31 
A E B.................................................................................................................................................................31 
A OU B..............................................................................................................................................................31 
NÃO (A)............................................................................................................................................................31 
V........................................................................................................................................................................31 
V........................................................................................................................................................................31 
V........................................................................................................................................................................31 
V........................................................................................................................................................................31 
5
Algoritmos 
F.........................................................................................................................................................................31 
V........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
V........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
V........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
V........................................................................................................................................................................31 
V........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
F.........................................................................................................................................................................31 
V........................................................................................................................................................................31 
EXPRESSÕES LÓGICAS..............................................................................................................................32 
EXPRESSÕES LÓGICAS..............................................................................................................................32 
AS EXPRESSÕES COMPOSTAS DE RELAÇÕES SEMPRE RETORNAM UM VALOR LÓGICO. 
...........................................................................................................................................................................32 
EXEMPLOS:...................................................................................................................................................32 
2+5>4  VERDADEIRO...............................................................................................................................33 
3<>3  FALSO...............................................................................................................................................33 
DE ACORDO COM A NECESSIDADE, AS EXPRESSÕES PODEM SER UNIDAS PELOS 
OPERADORES LÓGICOS............................................................................................................................34 
EXEMPLOS:...................................................................................................................................................34 
2+5>4 E 3<>3  FALSO................................................................................................................................34 
2+5>4 OU 3<>3  VERDADEIRO..............................................................................................................34 
NÃO(3<>3) VERDADEIRO......................................................................................................................34 
VARIÁVEIS.....................................................................................................................................................34 
6
Algoritmos 
VARIÁVEIS.....................................................................................................................................................34 
VARIÁVEIS SÃO ENDEREÇOS DE MEMÓRIA DESTINADOS A ARMAZENAR INFORMAÇÕES 
TEMPORARIAMENTE.................................................................................................................................34 
* TODO ALGORITMO OU PROGRAMA DEVE POSSUIR VARIÁVEL!............................................34 
VARIÁVEIS DE ENTRADA E SAÍDA........................................................................................................35 
VARIÁVEIS DE ENTRADA E SAÍDA........................................................................................................35 
VARIÁVEIS DE ENTRADA ARMAZENAM INFORMAÇÕES FORNECIDAS POR UM MEIO 
EXTERNO, NORMALMENTE USUÁRIOS OU DISCOS........................................................................35 
VARIÁVEIS DE SAÍDA ARMAZENAM DADOS PROCESSADOS COMO RESULTADOS.............35 
EXEMPLO:......................................................................................................................................................35 
DE ACORDO COM A FIGURA ACIMA A E B SÃO VARIÁVEIS DE ENTRADA E C É UMA 
VARIÁVEL DE SAÍDA..................................................................................................................................35 
CONSTANTES................................................................................................................................................37 
CONSTANTES................................................................................................................................................37 
CONSTANTES SÃO ENDEREÇOS DE MEMÓRIA DESTINADOS A ARMAZENAR 
INFORMAÇÕES FIXAS, INALTERÁVEIS DURANTE A EXECUÇÃO DO PROGRAMA...............37 
EXEMPLO:......................................................................................................................................................37 
PI = 3.1416........................................................................................................................................................37 
IDENTIFICADORES.....................................................................................................................................37 
IDENTIFICADORES.....................................................................................................................................37 
SÃO OS NOMES DADOS A VARIÁVEIS, CONSTANTES E PROGRAMAS.......................................37 
REGRAS PARA CONSTRUÇÃO DE IDENTIFICADORES:..................................................................37 
NÃO PODEM TER NOMES DE PALAVRAS RESERVADAS (COMANDOS DA LINGUAGEM);. .37 
DEVEM POSSUIR COMO 1º CARACTERE UMA LETRA OU UNDERSCORE ( _ );.......................37 
TER COMO DEMAIS CARACTERES LETRAS, NÚMEROS OU UNDERSCORE;...........................37 
TER NO MÁXIMO 127 CARACTERES;....................................................................................................37 
NÃO POSSUIR ESPAÇOS EM BRANCO;.................................................................................................37 
A ESCOLHA DE LETRAS MAIÚSCULAS OU MINÚSCULAS É INDIFERENTE.............................37 
EXEMPLOS:...................................................................................................................................................38 
NOME...............................................................................................................................................................38 
TELEFONE.....................................................................................................................................................38 
7
Algoritmos 
IDADE_FILHO...............................................................................................................................................38 
NOTA1..............................................................................................................................................................38 
SALARIO.........................................................................................................................................................38 
PI.......................................................................................................................................................................38 
UMNOMEMUITOCOMPRIDOEDIFICILDELER...................................................................................38 
UM_NOME_MUITO_COMPRIDO_E_FACIL_DE_LER.........................................................................38 
TIPOS DE DADOS..........................................................................................................................................39 
TIPOS DE DADOS..........................................................................................................................................39 
TODAS AS VARIÁVEIS DEVEM ASSUMIR UM DETERMINADO TIPO DE INFORMAÇÃO......39 
O TIPO DE DADO PODE SER:....................................................................................................................39 
PRIMITIVO  PRÉ-DEFINIDO PELA LINGUAGEM;..........................................................................39 
SUB-FAIXA  É UMA PARTE DE UM TIPO JÁ EXISTENTE;...........................................................39 
ESCALAR  DEFINIDOS PELO PROGRAMADOR..............................................................................39 
EXEMPLOS:...................................................................................................................................................39 
A : INTEIRO....................................................................................................................................................39 
TIPO NOTA=[1..10] DE INTEIRO...............................................................................................................39 
TIPO SEMANA = (SEGUNDA-FEIRA, TERÇA-FEIRA, QUARTA-FEIRA, QUINTA-FEIRA, 
SEXTA-FEIRA, SÁBADO, DOMINGO)......................................................................................................39 
TIPOS PRIMITIVOS DE DADOS................................................................................................................39 
TIPOS PRIMITIVOS DE DADOS................................................................................................................39 
INTEIRO..........................................................................................................................................................40 
ADMITE SOMENTE NÚMEROS INTEIROS. GERALMENTE É UTILIZADO PARA 
REPRESENTAR UMA CONTAGEM (QUANTIDADE)...........................................................................40 
REAL................................................................................................................................................................40 
ADMITE NÚMEROS REAIS (COM OU SEM CASAS DECIMAIS). GERALMENTE É UTILIZADO 
PARA REPRESENTAR UMA MEDIÇÃO..................................................................................................40 
CARACTERE..................................................................................................................................................40 
ADMITE CARACTERES ALFANUMÉRICOS. OS NÚMEROS QUANDO DECLARADOS COMO 
CARACTERES TORNAM SE REPRESENTATIVOS E PERDEM A ATRIBUIÇÃO DE VALOR.. .40 
LÓGICO...........................................................................................................................................................40 
ADMITE SOMENTE VALORES LÓGICOS(VERDADEIRO/FALSO).................................................40 
8
Algoritmos 
COMANDOS DE I/O (INPUT/OUTPUT)....................................................................................................40 
COMANDOS DE I/O (INPUT/OUTPUT)....................................................................................................40 
LER  COMANDO DE ENTRADA QUE PERMITE A LEITURA DE VARIÁVEIS DE ENTRADA. 
...........................................................................................................................................................................40 
ESCREVER  COMANDO DE SAÍDA QUE EXIBE UMA INFORMAÇÃO NA TELA DO 
MONITOR.......................................................................................................................................................40 
IMPRIMIR  COMANDO DE SAÍDA QUE ENVIA UMA INFORMAÇÃO PARA A 
IMPRESSORA.................................................................................................................................................40 
SINAL DE ATRIBUIÇÃO.............................................................................................................................41 
SINAL DE ATRIBUIÇÃO.............................................................................................................................41 
UMA VARIÁVEL NUNCA É ETERNAMENTE IGUAL A UM VALOR, SEU CONTEÚDO PODE 
SER ALTERADO A QUALQUER MOMENTO. PORTANTO PARA ATRIBUIR VALORES A 
VARIÁVEIS DEVEMOS USAR O SINAL DE “:=”...................................................................................41 
EXEMPLOS:...................................................................................................................................................41 
A := 2;...............................................................................................................................................................41 
B := 3;................................................................................................................................................................41 
C := A + B;........................................................................................................................................................41 
SINAL DE IGUALDADE...............................................................................................................................41 
SINAL DE IGUALDADE...............................................................................................................................41 
AS CONSTANTES SÃO ETERNAMENTE IGUAIS A DETERMINADOS VALORES, PORTANTO 
USAMOS O SINAL DE “=”...........................................................................................................................41 
EXEMPLOS:...................................................................................................................................................41 
PI = 3.1416;.......................................................................................................................................................41 
EMPRESA = ‘COLÉGIO DE INFORMÁTICA L.T.D.A.’........................................................................41 
V = VERDADEIRO.........................................................................................................................................41 
CORPO GERAL DE UM PROGRAMA......................................................................................................42 
CORPO GERAL DE UM PROGRAMA......................................................................................................42 
PROGRAMA <<IDENTIFICADOR>>;.......................................................................................................42 
CONST.............................................................................................................................................................42 
<<IDENTIFICADOR>> = <<DADO>>.......................................................................................................42 
VAR...................................................................................................................................................................42 
<<IDENTIFICADOR>> : <<TIPO>>;........................................................................................................42 
9
Algoritmos 
ÍNICIO..............................................................................................................................................................42 
{ ........................................................................................................................................................................42 
COMANDOS DE ENTRADA,PROCESSAMENTO E SAÍDA .................................................................42 
<<COMANDO1>>;.........................................................................................................................................42 
<<COMANDON>>..........................................................................................................................................42 
}..........................................................................................................................................................................42 
FIM...................................................................................................................................................................42 
ESTRUTURAS SEQÜÊNCIAIS....................................................................................................................42 
ESTRUTURAS SEQÜÊNCIAIS....................................................................................................................42 
COMO PODE SER ANALISADO NO TÓPICO ANTERIOR, TODO PROGRAMA POSSUI UMA 
ESTRUTURA SEQÜENCIAL DETERMINADA POR UM ÍNICIO E FIM...........................................42 
..........................................................................................................................................................................42 
; PONTO E VÍRGULA ;.................................................................................................................................43 
; PONTO E VÍRGULA ;.................................................................................................................................43 
O SINAL DE PONTO E VÍRGULA “;” INDICA A EXISTÊNCIA DE UM PRÓXIMO COMANDO 
(PASSA PARA O PRÓXIMO).......................................................................................................................43 
NA ESTRUTURA ÍNICIO E NO COMANDO QUE ANTECEDE A ESTRUTURA FIM NÃO SE USA 
“;”......................................................................................................................................................................43 
PRIMEIRO ALGORITMO............................................................................................................................43 
PRIMEIRO ALGORITMO............................................................................................................................43 
SEGUE UM ALGORITMO QUE LÊ O NOME E AS 4 NOTAS BIMESTRAIS DE UM ALUNO. EM 
SEGUIDA O ALGORITMO CALCULA E ESCREVE A MÉDIA OBTIDA..........................................43 
PROGRAMA MEDIA_FINAL;.....................................................................................................................43 
VAR...................................................................................................................................................................43 
NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: INTEIRO;..........................................................................43 
NOME : CARACTERE [35]..........................................................................................................................43 
INICIO..............................................................................................................................................................43 
LER (NOME);.................................................................................................................................................43 
LER (NOTA1, NOTA2, NOTA3, NOTA4);..................................................................................................43 
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;...........................................................................43 
ESCREVER (NOME, MEDIA).....................................................................................................................43 
10
Algoritmos 
FIM...................................................................................................................................................................43 
SEGUNDO ALGORITMO.............................................................................................................................44 
SEGUNDO ALGORITMO.............................................................................................................................44 
SEGUE UM ALGORITMO QUE LÊ O RAIO DE UMA CIRCUNFERÊNCIA E CALCULA SUA 
ÁREA................................................................................................................................................................44 
PROGRAMA AREA_CIRCUNFERENCIA;...............................................................................................44 
CONST PI = 3.1416;........................................................................................................................................44 
VAR RAIO, AREA : REAL;..........................................................................................................................44 
INICIO..............................................................................................................................................................44 
LER (RAIO); {PROCESSAMENTO}..........................................................................................................44 
AREA := PI * SQR(RAIO); {ENTRADA} ..................................................................................................44 
ESCREVER (‘AREA =’, AREA) {SAÍDA}..................................................................................................44 
FIM...................................................................................................................................................................44 
{LINHAS DE COMENTÁRIO}.....................................................................................................................44 
{LINHAS DE COMENTÁRIO}.....................................................................................................................44 
PODEMOS INSERIR EM UM ALGORITMO COMENTÁRIOS PARA AUMENTAR A 
COMPREENSÃO DO MESMO, PARA ISSO BASTA QUE O TEXTO FIQUE ENTRE CHAVES 
“{}”....................................................................................................................................................................44 
EXEMPLO:......................................................................................................................................................44 
LER (RAIO); {ENTRADA}............................................................................................................................44 
‘ASPAS SIMPLES’.........................................................................................................................................45 
‘ASPAS SIMPLES’.........................................................................................................................................45 
QUANDO QUEREMOS EXIBIR UMA MENSAGEM PARA A TELA OU IMPRESSORA ELA 
DEVE ESTAR CONTIDA ENTRE ASPAS SIMPLES, CASO CONTRÁRIO, O COMPUTADOR IRÁ 
IDENTIFICAR A MENSAGEM COMO VARIÁVEL INDEFINIDA......................................................45 
EXEMPLO:......................................................................................................................................................45 
ESCREVER (‘AREA OBTIDA =’, AREA) {COMANDO DE SAÍDA}....................................................45 
AREA OBTIDA = X.XX {RESULTADO GERADO NA TELA}...............................................................45 
ESTRUTURAS DE DECISÃO.......................................................................................................................45 
ESTRUTURAS DE DECISÃO.......................................................................................................................45 
EXECUTA UMA SEQÜÊNCIA DE COMANDOS DE ACORDO COM O RESULTADO DE UM 
TESTE..............................................................................................................................................................45 
11
Algoritmos 
A ESTRUTURA DE DECISÃO PODE SER SIMPLES OU COMPOSTA, BASEADA EM UM 
RESULTADO LÓGICO.................................................................................................................................45 
SIMPLES:........................................................................................................................................................46 
SE <<CONDIÇÃO>>......................................................................................................................................46 
ENTÃO <<COMANDO1>>..........................................................................................................................46 
COMPOSTA 1:................................................................................................................................................46 
SE <<CONDIÇÃO>>......................................................................................................................................46 
ENTÃO <<COMANDO1>>..........................................................................................................................46 
SENÃO <<COMANDO1>>...........................................................................................................................46 
COMPOSTA 2:................................................................................................................................................47 
SE <<CONDIÇÃO>>......................................................................................................................................47 
ENTÃO INICIO.............................................................................................................................................47 
<<COMANDO1>>;.........................................................................................................................................47 
<<COMANDON>>..........................................................................................................................................47 
FIM;...............................................................................................................................................................47 
SENÃO INICIO..............................................................................................................................................47 
<<COMANDO1>>; <<COMANDON>>.......................................................................................................47 
FIM;...............................................................................................................................................................47 
ALGORITMO TRÊS......................................................................................................................................47 
ALGORITMO TRÊS......................................................................................................................................47 
SEGUE UM ALGORITMO QUE LÊ 2 NÚMEROS E ESCREVE O MAIOR........................................47 
PROGRAMA ACHA_MAIOR;.....................................................................................................................47 
VAR A, B : INTEIRO;....................................................................................................................................47 
INICIO..............................................................................................................................................................47 
LER (A, B);.....................................................................................................................................................47 
SE A>B.............................................................................................................................................................47 
ENTÃO ESCREVER (A)..............................................................................................................................47 
SENÃO ESCREVER (B)..............................................................................................................................47 
FIM...................................................................................................................................................................48 
ALGORITMO QUATRO...............................................................................................................................48 
12
Algoritmos 
ALGORITMO QUATRO...............................................................................................................................48 
SEGUE UM ALGORITMO QUE LÊ O NOME E AS 4 NOTAS BIMESTRAIS DE UM ALUNO. EM 
SEGUIDA O ALGORITMO CALCULA E ESCREVE A MÉDIA OBTIDA PELO ALUNO 
ESCREVENDO TAMBÉM SE O ALUNO FOI APROVADO OU REPROVADO.................................48 
MÉDIA PARA APROVAÇÃO = 6................................................................................................................48 
PROGRAMA MEDIA_FINAL;.....................................................................................................................48 
VAR...................................................................................................................................................................48 
NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: REAL;................................................................................48 
NOME : CARACTERE [35]..........................................................................................................................48 
INICIO..............................................................................................................................................................48 
LER (NOME);.................................................................................................................................................48 
LER (NOTA1, NOTA2, NOTA3, NOTA4);..................................................................................................48 
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;...........................................................................48 
SE MEDIA>=6................................................................................................................................................48 
ENTÃO ESCREVER (‘APROVADO’).........................................................................................................48 
SENÃO ESCREVER (‘REPROVADO’).......................................................................................................48 
ESCREVER (NOME, MEDIA)......................................................................................................................48 
FIM...................................................................................................................................................................48 
NINHOS DE SE...............................................................................................................................................49 
NINHOS DE SE...............................................................................................................................................49 
USADOS PARA TOMADAS DE DECISÕES PARA MAIS DE 2 OPÇÕES...........................................49 
FORMA GERAL:............................................................................................................................................49 
SE <<CONDIÇÃO>>......................................................................................................................................49 
ENTÃO <<COMANDO1>>..........................................................................................................................49 
SENÃO SE <<CONDIÇÃO>>......................................................................................................................49 
ENTÃO <<COMANDO1>>........................................................................................................................49 
SENÃO <<COMANDO1>>.........................................................................................................................49 
ALGORITMO CINCO...................................................................................................................................49 
ALGORITMO CINCO...................................................................................................................................49 
SEGUE UM ALGORITMO QUE LÊ 3 NÚMEROS E ESCREVE O MAIOR........................................49 
13
Algoritmos 
PROGRAMA ACHA_MAIOR;.....................................................................................................................49 
VAR A, B, C : INTEIRO;...............................................................................................................................49 
INICIO..............................................................................................................................................................49 
LER (A, B, C);.................................................................................................................................................49 
SE (A>B) E (A>C)..........................................................................................................................................49 
ENTÃO ESCREVER (A)..............................................................................................................................49 
SENÃO SE (B>A) E (B>C)...........................................................................................................................49 
ENTÃO ESCREVER (B)................................................................................................................................50 
SENÃO ESCREVER (C)................................................................................................................................50 
FIM...................................................................................................................................................................50 
ESTRUTURAS DE CONDIÇÃO...................................................................................................................50 
ESTRUTURAS DE CONDIÇÃO...................................................................................................................50 
A ESTRUTURA DE CONDIÇÃO EQÜIVALE A UM NINHO DE SE’S................................................50 
FORMA GERAL:............................................................................................................................................50 
FACA CASO....................................................................................................................................................50 
CASO <<CONDIÇÃO1>>.............................................................................................................................50 
<<COMANDO1>>;.......................................................................................................................................50 
CASO <<CONDIÇÃON>>............................................................................................................................50 
<<COMANDO1>>;.......................................................................................................................................50 
OUTROS CASOS...........................................................................................................................................50 
<<COMANDO1>>;.......................................................................................................................................50 
FIM DE CASO.................................................................................................................................................50 
ALGORITMO SEIS........................................................................................................................................50 
ALGORITMO SEIS........................................................................................................................................50 
SEGUE UM ALGORITMO QUE LÊ 3 NÚMEROS E ESCREVE O MAIOR........................................50 
PROGRAMA ACHA_MAIOR;.....................................................................................................................50 
VAR A, B, C : INTEIRO;...............................................................................................................................51 
INICIO..............................................................................................................................................................51 
LER (A, B, C);.................................................................................................................................................51 
14
Algoritmos 
FACA CASO...................................................................................................................................................51 
CASO (A>B) E (A>C).....................................................................................................................................51 
ESCREVER (A);...........................................................................................................................................51 
CASO (B>A) E (B>C)...................................................................................................................................51 
ESCREVER (B);..............................................................................................................................................51 
OUTROS CASOS............................................................................................................................................51 
ESCREVER (C);..............................................................................................................................................51 
FIM DE CASO................................................................................................................................................51 
FIM...................................................................................................................................................................51 
ESTRUTURA DE REPETIÇÃO DETERMINADA....................................................................................51 
ESTRUTURA DE REPETIÇÃO DETERMINADA....................................................................................51 
QUANDO UMA SEQÜÊNCIA DE COMANDOS DEVE SER EXECUTADA REPETIDAS VEZES, 
TEM-SE UMA ESTRUTURA DE REPETIÇÃO........................................................................................51 
A ESTRUTURA DE REPETIÇÃO, ASSIM COMO A DE DECISÃO, ENVOLVE SEMPRE A 
AVALIAÇÃO DE UMA CONDIÇÃO..........................................................................................................51 
NA REPETIÇÃO DETERMINADA O ALGORITMO APRESENTA PREVIAMENTE A 
QUANTIDADE DE REPETIÇÕES...............................................................................................................51 
FORMA GERAL 1:.........................................................................................................................................51 
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> 
FAÇA................................................................................................................................................................52 
<<COMANDO1>>;........................................................................................................................................52 
FORMA GERAL 2:.........................................................................................................................................52 
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> 
FAÇA................................................................................................................................................................52 
ÍNICIO.............................................................................................................................................................52 
<<COMANDO1>>;.........................................................................................................................................52 
<<COMANDON>>..........................................................................................................................................52 
FIM;.................................................................................................................................................................52 
A REPETIÇÃO POR PADRÃO 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...................................................................52 
ALGORITMO SETE......................................................................................................................................52 
ALGORITMO SETE......................................................................................................................................52 
15
Algoritmos 
SEGUE UM ALGORITMO QUE ESCREVE 10 VEZES A FRASE “VASCO DA GAMA”.................52 
PROGRAMA REPETICAO;.........................................................................................................................53 
VAR I:INTEIRO.............................................................................................................................................53 
INICIO..............................................................................................................................................................53 
PARA I :=1 ATE 10 FACA............................................................................................................................53 
ESCREVER (‘VASCO DA GAMA’)...........................................................................................................53 
FIM...................................................................................................................................................................53 
ALGORITMO OITO......................................................................................................................................53 
ALGORITMO OITO......................................................................................................................................53 
SEGUE UM ALGORITMO QUE ESCREVE OS 100 PRIMEIROS NÚMEROS PARES.....................53 
PROGRAMA PARES;....................................................................................................................................53 
VAR I,PAR: INTEGER;.................................................................................................................................53 
INICIO..............................................................................................................................................................53 
PAR:=0;...........................................................................................................................................................53 
PARA I:=1 ATE 100 FACA............................................................................................................................53 
INICIO............................................................................................................................................................53 
ESCREVER (PAR);.....................................................................................................................................53 
PAR := PAR+2..............................................................................................................................................53 
FIM.................................................................................................................................................................53 
FIM..................................................................................................................................................................53 
ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO INICIAL..........................54 
ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO INICIAL..........................54 
É USADA PARA REPETIR N VEZES UMA OU MAIS INSTRUÇÕES. TENDO COMO 
VANTAGEM O FATO DE NÃO SER NECESSÁRIO O CONHECIMENTO PRÉVIO DO NÚMERO 
DE REPETIÇÕES...........................................................................................................................................54 
FORMA GERAL 1:.........................................................................................................................................54 
ENQUANTO <<CONDIÇÃO>> FACA........................................................................................................54 
<<COMANDO1>>;........................................................................................................................................54 
FORMA GERAL 2:.........................................................................................................................................54 
ENQUANTO <<CONDIÇÃO>> FACA........................................................................................................54 
16
Algoritmos 
ÍNICIO.............................................................................................................................................................54 
<<COMANDO1>>;.......................................................................................................................................54 
<<COMANDON>>........................................................................................................................................54 
FIM;.................................................................................................................................................................54 
ALGORITMO NOVE.....................................................................................................................................54 
ALGORITMO NOVE.....................................................................................................................................54 
SEGUE UM ALGORITMO QUE CALCULE A SOMA DOS SALÁRIOS DOS FUNCIONÁRIOS DE 
UMA EMPRESA. O PROGRAMA TERMINA QUANDO O USUÁRIO DIGITAR UM SALÁRIO 
MENOR QUE 0...............................................................................................................................................54 
PROGRAMA SOMA_SALARIOS;..............................................................................................................54 
VAR SOMA, SALARIO : REAL;..................................................................................................................55 
INICIO..............................................................................................................................................................55 
SOMA:=O;......................................................................................................................................................55 
SALARIO:=1;.................................................................................................................................................55 
ENQUANTO SALARIO>=0.........................................................................................................................55 
INICIO............................................................................................................................................................55 
LER (SALARIO);.........................................................................................................................................55 
SOMA:=SOMA+SALARIO........................................................................................................................55 
FIM;................................................................................................................................................................55 
ESCREVER (SOMA).....................................................................................................................................55 
FIM...................................................................................................................................................................55 
ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO FINAL.............................55 
ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO FINAL.............................55 
ASSIM COMO A ESTRUTURA ENQUANTO É USADA PARA REPETIR N VEZES UMA OU 
MAIS INSTRUÇÕES. ....................................................................................................................................55 
SUA VALIDAÇÃO É FINAL FAZENDO COM QUE A REPETIÇÃO SEJA EXECUTADA PELO 
MENOS UMA VEZ.........................................................................................................................................55 
FORMA GERAL;............................................................................................................................................56 
REPITA............................................................................................................................................................56 
<<COMANDO1>>;........................................................................................................................................56 
<<COMANDON>>.........................................................................................................................................56 
17
Algoritmos 
ATE <<CONDIÇÃO>>...................................................................................................................................56 
ALGORITMO DEZ........................................................................................................................................56 
ALGORITMO DEZ........................................................................................................................................56 
SEGUE UM ALGORITMO QUE CALCULE A SOMA DOS SALÁRIOS DOS FUNCIONÁRIOS DE 
UMA EMPRESA. O PROGRAMA TERMINA QUANDO O USUÁRIO DIGITAR UM SALÁRIO 
MENOR QUE 0...............................................................................................................................................56 
PROGRAMA SOMA_SALARIOS;..............................................................................................................56 
VAR...................................................................................................................................................................56 
SOMA, SALARIO : REAL;...........................................................................................................................56 
INICIO..............................................................................................................................................................56 
SOMA:=O;......................................................................................................................................................56 
REPITA...........................................................................................................................................................56 
LER (SALARIO);..........................................................................................................................................56 
SOMA:=SOMA+SALARIO.........................................................................................................................56 
ATE SALARIO<0;.........................................................................................................................................56 
ESCREVER (SOMA).....................................................................................................................................57 
FIM...................................................................................................................................................................57 
ALGORITMO ONZE.....................................................................................................................................57 
ALGORITMO ONZE.....................................................................................................................................57 
SEGUE UM ALGORITMO QUE ESCREVE OS 100 PRIMEIROS NÚMEROS PARES.....................57 
PROGRAMA PARES_2;................................................................................................................................57 
VAR I, PAR, CONTADOR : INTEIRO;......................................................................................................57 
INICIO..............................................................................................................................................................57 
CONTADOR := 0;..........................................................................................................................................57 
PAR := 0;..........................................................................................................................................................57 
REPITA............................................................................................................................................................57 
ESCREVER (PAR);......................................................................................................................................57 
PAR := PAR+2;..............................................................................................................................................57 
CONTADOR := CONTADOR+1;...............................................................................................................57 
ATE CONTADOR=100.................................................................................................................................57 
18
Algoritmos 
FIM...................................................................................................................................................................57 
PROGRAMAS EQUIVALENTES................................................................................................................58 
PROGRAMAS EQUIVALENTES................................................................................................................58 
O ALGORITMO ONZE PODERIA TER SIDO CRIADO COM QUALQUER ESTRUTURA DE 
REPETIÇÃO. PORTANTO PODEMOS TER ALGORITMOS QUE SÃO ESCRITOS DE 
MANEIRAS DIFERENTES, MAS, FUNCIONAM REALIZANDO O MESMO OBJETIVO..............58 
EXERCÍCIOS..................................................................................................................................................59 
EXERCÍCIOS..................................................................................................................................................59 
1)O QUE É UM ALGORITMO?...................................................................................................................59 
2)O QUE É UM PROGRAMA?.....................................................................................................................59 
3)CRIE UM ALGORITMO NÃO COMPUTACIONAL, QUE TROQUE UM PNEU DE CARRO.....59 
4)O QUE É UMA LINGUAGEM DE PROGRAMAÇÃO?........................................................................59 
5)LINEARIZE AS EXPRESSÕES ABAIXO:..............................................................................................59 
19
Algoritmos 
INTRODUÇÃO 
O objetivo principal da Lógica de Programação é 
demonstrar técnicas para resolução de problemas e 
consequentemente automatização de tarefas. 
O aprendizado da Lógica é essencial para formação de um 
bom programador, servindo como base para o aprendizado de 
todas as linguagens de programação, estruturadas ou não. 
20
Algoritmos 
ALGORITMO 
Um Algoritmo é uma seqüência de instruções ordenadas de 
forma lógica para a resolução de uma determinada tarefa ou 
problema. 
Conceitos 
Procedimento - é uma receita ou roteiro para executar alguma tarefa. Constitui-se 
de etapas, passos, comandos ou instruções que são executadas 
seqüencialmente. 
Algoritmo - é um procedimento que é executado em um tempo finito. É um 
conjunto finito de regras, bem definidas, para a solução de um problema em um 
tempo finito. 
Características dos algoritmos 
- Execução de algoritmos 
De cima para baixo, seqüencialmente, a menos que esta ordem seja 
explicitamente alterada. 
- Entradas 
Aos valores recebidos por um algoritmo dá-se o nome de entradas. No exemplo 
1, o passo 1 constitui uma entrada. 
- Saídas 
Todo algoritmo possui pelo menos um resultado. Os resultados fornecidos por 
um algoritmo recebem o nome de saídas. 
- Definição dos passos 
E importante que num algoritmo cada passo esteja precisamente definido não 
deixando nenhuma margem a ambigüidades. 
- Efetividade 
Todas as operações especificadas no algoritmo devem ser suficientemente 
básicas para que possam ser, pelo menos em princípio, executadas de maneira 
exata e num tempo finito. 
Formas de representação de algoritmos 
21
Algoritmos 
Os algoritmos podem ser 
escritos em linguagem comum, 
em linguagem gráfica 
(fluxogramas ou diagramas de 
blocos) ou ainda em linguagem 
de programação como BASIC, 
FORTRAN, COBOL, etc.. 
CLASSIFICAÇÃO E APRESENTAÇÃO DE ALGORITMOS NUMÉRICOS 
Os algoritmos podem ser classificados em: 
- não numéricos 
- numéricos 
Ou ainda podem ser classificados em: 
- puramente seqüenciais 
- com seleção 
- com repetição 
Algoritmos puramente seqüenciais 
Todo o algoritmo puramente seqüencial tem exatamente a seguinte estrutura: 
- Ler valores 
- Efetuar cálculos 
- Escrever resultados 
- Parar 
22
Algoritmos 
ler A, B, C 
MEDIA = A + B + C / 3 
escrever MEDIA 
parar 
Algoritmos com seleção e/ou decisão 
ESTRUTURAS DE DECISÃO 
Executa uma seqüência de comandos de acordo com o resultado de um teste. 
A estrutura de decisão pode ser Simples ou Composta, baseada em um resultado lógico. 
Simples: 
SE <<CONDIÇÃO>> 
ENTÃO <<COMANDO1>> 
Composta 1: 
SE <<CONDIÇÃO>> 
ENTÃO <<COMANDO1>> 
SENÃO <<COMANDO1>> 
Composta 2: 
SE <<CONDIÇÃO>> 
ENTÃO INICIO 
<<COMANDO1>>; 
<<COMANDON>> 
FIM; 
SENÃO INICIO 
<<COMANDO1>>; <<COMANDON>> 
FIM; 
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE 
<<VALOR FINAL>> FAÇA 
ÍNICIO 
<<COMANDO1>>; 
<<COMANDON>> 
FIM; 
23
Algoritmos 
ALGORITMO NÃO COMPUTACIONAL 
Abaixo é apresentado um Algoritmo não computacional cujo 
objetivo é usar um telefone público. 
Início 
1. Tirar o fone do gancho; 
2. Ouvir o sinal de linha; 
3. Introduzir o cartão; 
4. Teclar o número desejado; 
5. Se der o sinal de chamar 
5.1 Conversar; 
5.2 Desligar; 
5.3 Retirar o cartão; 
6. Senão 
6.1 Repetir; 
Fim. 
PROGRAMA 
Um programa é um Algoritmo escrito em uma linguagem 
computacional. 
24 
SEQUÊNCIAL 
DESVIO
Algoritmos 
LINGUAGENS DE PROGRAMAÇÃO 
São Softwares que permitem o desenvolvimento de 
programas. Possuem um poder de criação ilimitado, desde 
jogos, editores de texto, sistemas empresariais até sistemas 
operacionais. 
Existem várias linguagens de programação, cada uma com 
suas características próprias. 
Exemplos: 
· Pascal 
· Clipper 
· C 
· Visual Basic 
· Delphi e etc. 
25
Algoritmos 
TÉCNICAS ATUAIS DE PROGRAMAÇÃO 
· Programação Seqüencial 
· Programação Estruturada 
· Programação Orientada a Eventos e Objetos 
ALGORITMOS EM “PORTUGOL” 
Durante nosso curso iremos aprender a desenvolver nossos 
Algoritmos em uma pseudo-linguagem conhecida como “Portugol” 
ou Português Estruturado. 
“Portugol” é derivado da aglutinação de Português + 
Algol. Algol é o nome de uma linguagem de programação 
estruturada usada no final da década de 50. 
OPERADORES ARITMÉTICOS 
+  Adição 
-  Subtração 
*  Multiplicação 
/  Divisão 
26
Algoritmos 
OPERADORES RELACIONAIS 
>  Maior que 
<  Menor que 
>=  Maior ou Igual 
<=  Menor ou Igual 
=  Igual 
<>  Diferente 
LINEARIZAÇÃO DE EXPRESSÕES 
Para a construção de Algoritmos todas as expressões 
aritméticas devem ser linearizadas, ou seja, colocadas em 
linhas. 
É importante também ressalvar o uso dos operadores 
correspondentes da aritmética tradicional para a 
computacional. 
Exemplo: 
27 
é + 5 -3 ù 
1 
3 
( ) = + úû 
êë 
2 (2/3+(5-3))+1= 
Tradicional Computacional
Algoritmos 
MODULARIZAÇÃO DE EXPRESSÕES 
A modularização é a divisão da expressão em partes, 
proporcionando maior compreensão e definindo prioridades para 
resolução da mesma. 
Como pode ser observado no exemplo anterior, em 
expressões computacionais usamos somente parênteses “( )” 
para modularização. 
Na informática podemos ter parênteses dentro de 
parênteses. 
Exemplos de prioridades: 
(2+2)/2=2 
2+2/2=3 
OPERADORES ESPECIAIS (MOD e DIV) 
MOD  Retorna o resto da divisão entre 2 números 
inteiros. 
DIV  Retorna o valor inteiro que resulta da divisão 
entre 2 números inteiros. 
28
Algoritmos 
Exemplo: 
FUNÇÕES 
Uma função é um instrumento (Sub–algoritmo) que tem como 
objetivo retornar um valor ou uma informação. 
A chamada de uma função é feita através da citação do 
seu nome seguido opcionalmente de seu argumento inicial entre 
parênteses. 
As funções podem ser predefinidas pela linguagem ou 
criadas pelo programador de acordo com o seu interesse. 
Exemplos: 
29 
13 2 
1 6 
MOD DIV 
13 DIV 2 = 6 
13 MOD 2 = 1 
Valor Inicial X 
Processamento 
X=9 
x
Algoritmos 
BIBLIOTECAS DE FUNÇÕES 
Armazenam um conjunto de funções que podem ser usadas 
pelos programas. 
FUNÇÕES PRÉ-DEFINIDAS 
ABS( ) VALOR ABSOLUTO 
SQRT( ) RAIZ QUADRADA 
SQR( ) ELEVA AO QUADRADO 
TRUNC( ) VALOR TRUNCADO 
ROUND( ) VALOR ARREDONDADO 
LOG( ) LOGARITMO 
SIN( ) SENO 
COS( ) COSENO 
TAN( ) TANGENTE 
30 
Valor Final Y Y=3
Algoritmos 
As funções acima são as mais comuns e importantes para 
nosso desenvolvimento lógico, entretanto, cada linguagem 
possui suas funções própias. As funções podem ser 
aritméticas, temporais, de texto e etc. 
OPERADORES LÓGICOS 
Atuam sobre expressões retornando sempre valores lógicos 
como Falso ou Verdadeiro. 
E RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM 
VERDADEIRAS. 
OU BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR 
VERDADEIRO. 
NÃO INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E 
VICE-VERSA. 
TABELA VERDADE 
A B A E B A OU B NÃO (A) 
V V V V F 
V F F V F 
F V F V V 
F F F F V 
31
Algoritmos 
EXPRESSÕES LÓGICAS 
As expressões compostas de relações sempre retornam um 
valor lógico. 
Exemplos: 
32
Algoritmos 
2+5>4  Verdadeiro 3<>3  Falso 
33
Algoritmos 
De acordo com a necessidade, as expressões podem ser 
unidas pelos operadores lógicos. 
Exemplos: 
2+5>4 E 3<>3  Falso 
E 
2+5>4 OU 3<>3  Verdadeiro 
NÃO(3<>3) Verdadeiro 
VARIÁVEIS 
Variáveis são endereços de memória destinados a 
armazenar informações temporariamente. 
* Todo Algoritmo ou programa deve possuir variável! 
34 
V F 
F 
V 
V 
V 
NÃO
Algoritmos 
VARIÁVEIS DE ENTRADA E SAÍDA 
Variáveis de Entrada armazenam informações fornecidas 
por um meio externo, normalmente usuários ou discos. 
Variáveis de Saída armazenam dados processados como 
resultados. 
Exemplo: 
De acordo com a figura acima A e B são Variáveis de 
Entrada e C é uma Variável de Saída. 
Variável Contador 
Uma contagem em um algoritmo é feita por uma variável chamada Contador. 
Uma variável contador é uma variável que recebe um valor inicial (geralmente zero) e é incrementada em 
algum outro passo do algoritmo, de um valor constante. 
Exemplo: 
1. CONT = 0 
2. -------- 
3. -------- 
4. CONT = CONT + 1 
No passo 1 inicializou-se a variável CONT. 
No passo 4, a variável CONT recebeu um incremento (1, no caso) de forma que ela passa a armazenar a 
soma do valor anterior (0) com o incremento (1). Assim, toda a vez que este passo (4) for executado, a 
variável CONT armazenará um valor igual a soma do valor anterior com o incremento. 
Utilizando a variável contador o algoritmo para calcular a média de cada um dos 30 alunos toma a seguinte 
forma: 
Este é um exemplo de algoritmo com repetição porque tem alguns de seus passos com execução repetida 
(passos 2 até 6). 
Variável Acumulador 
35 
A B C=A+B 
2 5 7
Algoritmos 
Suponha-se o seguinte problema: 
Calcular a média geral de uma prova de vestibular a qual compareceram 2640 alunos. 
Neste caso aparece a necessidade de se acumular (somar) as notas dos 2640 alunos, para depois dividir 
esta soma pelo número de alunos que compareceram a prova. 
Uma variável acumulador é uma variável que recebe um valor inicial (geralmente 0) e é incrementada em 
algum outro passo do algoritmo, de um valor variável. 
Exemplo: 
1. ACUM = 0 
2. -------- 
3. -------- 
4. ACUM = ACUM + VAR 
No passo 1 inicializou-se a variável ACUM. 
No passo 4, somou-se ao valor que estava na variável ACUM o valor que estava na variável VAR, e o 
resultado guardou-se (arnazenou-se) na variável ACUM, que assim passa a ter um novo valor. 
Utilizando-se a váriável acumulador, o algoritmo para cálculo da média da prova de vestibular toma a 
seguinte forma: 
36
Algoritmos 
CONSTANTES 
Constantes são endereços de memória destinados a 
armazenar informações fixas, inalteráveis durante a execução 
do programa. 
Exemplo: 
PI = 3.1416 
IDENTIFICADORES 
São os nomes dados a variáveis, constantes e programas. 
Regras Para construção de Identificadores: 
· Não podem ter nomes de palavras reservadas (comandos 
da linguagem); 
· Devem possuir como 1º caractere uma letra ou 
Underscore ( _ ); 
· Ter como demais caracteres letras, números ou 
Underscore; 
· Ter no máximo 127 caracteres; 
· Não possuir espaços em branco; 
· A escolha de letras maiúsculas ou minúsculas é 
indiferente. 
37
Algoritmos 
Exemplos: 
NOME TELEFONE IDADE_FILHO 
NOTA1 SALARIO PI 
UMNOMEMUITOCOMPRIDOEDIFICILDELER 
UM_NOME_MUITO_COMPRIDO_E_FACIL_DE_LER 
38
Algoritmos 
TIPOS DE DADOS 
Todas as Variáveis devem assumir um determinado tipo de 
informação. 
O tipo de dado pode ser: 
· Primitivo  Pré-definido pela linguagem; 
· Sub-Faixa  É uma parte de um tipo já existente; 
· Escalar  Definidos pelo programador. 
Exemplos: 
A : INTEIRO 
TIPO NOTA=[1..10] DE INTEIRO 
TIPO SEMANA = (Segunda-feira, Terça-feira, Quarta-feira, 
Quinta-feira, Sexta-feira, Sábado, Domingo) 
TIPOS PRIMITIVOS DE DADOS 
39 
PRIMITIVO 
SUB - FAIXA 
ESCALAR
Algoritmos 
INTEIRO ADMITE SOMENTE NÚMEROS INTEIROS. GERALMENTE É 
UTILIZADO PARA REPRESENTAR UMA CONTAGEM 
(QUANTIDADE). 
REAL ADMITE NÚMEROS REAIS (COM OU SEM CASAS DECIMAIS). 
GERALMENTE É UTILIZADO PARA REPRESENTAR UMA MEDIÇÃO. 
CARACTERE ADMITE CARACTERES ALFANUMÉRICOS. OS NÚMEROS QUANDO 
DECLARADOS COMO CARACTERES TORNAM SE REPRESENTATIVOS 
E PERDEM A ATRIBUIÇÃO DE VALOR. 
LÓGICO ADMITE SOMENTE VALORES LÓGICOS(VERDADEIRO/FALSO). 
COMANDOS DE I/O (INPUT/OUTPUT) 
LER  Comando de entrada que permite a leitura de 
Variáveis de Entrada. 
ESCREVER  Comando de saída que exibe uma informação na 
tela do monitor. 
IMPRIMIR  Comando de saída que envia uma informação 
para a impressora. 
40
Algoritmos 
SINAL DE ATRIBUIÇÃO 
Uma Variável nunca é eternamente igual a um valor, seu 
conteúdo pode ser alterado a qualquer momento. Portanto para 
atribuir valores a variáveis devemos usar o sinal de “:=”. 
Exemplos: 
A := 2; 
B := 3; 
C := A + B; 
SINAL DE IGUALDADE 
As constantes são eternamente iguais a determinados 
valores, portanto usamos o sinal de “=”. 
Exemplos: 
PI = 3.1416; 
Empresa = ‘Colégio de Informática L.T.D.A.’ 
V = Verdadeiro 
41
Algoritmos 
CORPO GERAL DE UM PROGRAMA 
PROGRAMA <<identificador>>; 
CONST 
<<identificador>> = <<dado>> 
VAR 
<<identificador>> : <<tipo>>; 
ÍNICIO 
{ 
COMANDOS DE ENTRADA,PROCESSAMENTO E SAÍDA 
<<comando1>>; 
<<comandoN>> 
} 
FIM. 
ESTRUTURAS SEQÜÊNCIAIS 
Como pode ser analisado no tópico anterior, todo 
programa possui uma estrutura seqüencial determinada por um 
ÍNICIO e FIM. 
42
Algoritmos 
; PONTO E VÍRGULA ; 
O sinal de ponto e vírgula “;” indica a existência de um 
próximo comando (passa para o próximo). 
Na estrutura ÍNICIO e no comando que antecede a 
estrutura FIM não se usa “;”. 
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 média 
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. 
43
Algoritmos 
SEGUNDO ALGORITMO 
Segue um Algoritmo que lê o raio de uma circunferência 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) {SAÍDA} 
FIM. 
{LINHAS DE COMENTÁRIO} 
Podemos inserir em um Algoritmo comentários para 
aumentar a compreensão do mesmo, para isso basta que o texto 
fique entre Chaves “{}”. 
Exemplo: 
LER (RAIO); {ENTRADA} 
44
Algoritmos 
‘ ASPAS SIMPLES ’ 
Quando queremos exibir uma mensagem para a tela ou 
impressora ela deve estar contida entre aspas simples, caso 
contrário, o computador irá identificar a mensagem como 
Variável Indefinida. 
Exemplo: 
ESCREVER (‘AREA OBTIDA =’, AREA) {COMANDO DE SAÍDA} 
AREA OBTIDA = X.XX {RESULTADO GERADO NA TELA} 
ESTRUTURAS DE DECISÃO 
Executa uma seqüência de comandos de acordo com o 
resultado de um teste. 
A estrutura de decisão pode ser Simples ou Composta, 
baseada em um resultado lógico. 
45
Algoritmos 
Simples: 
SE <<CONDIÇÃO>> 
ENTÃO <<COMANDO1>> 
Composta 1: 
SE <<CONDIÇÃO>> 
ENTÃO <<COMANDO1>> 
SENÃO <<COMANDO1>> 
46
Algoritmos 
Composta 2: 
SE <<CONDIÇÃO>> 
ENTÃO INICIO 
<<COMANDO1>>; 
<<COMANDON>> 
FIM; 
SENÃO INICIO 
<<COMANDO1>>; <<COMANDON>> 
FIM; 
ALGORITMO TRÊS 
Segue um Algoritmo que lê 2 números e escreve o maior. 
PROGRAMA ACHA_MAIOR; 
VAR A, B : INTEIRO; 
INICIO 
LER (A, B); 
SE A>B 
ENTÃO ESCREVER (A) 
SENÃO ESCREVER (B) 
47
Algoritmos 
FIM. 
ALGORITMO QUATRO 
Segue um Algoritmo que lê o nome e as 4 notas bimestrais 
de um aluno. Em seguida o Algoritmo calcula e escreve a média 
obtida pelo aluno escrevendo também se o aluno foi aprovado 
ou reprovado. 
Média para aprovação = 6 
PROGRAMA MEDIA_FINAL; 
VAR 
NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: REAL; 
NOME : CARACTERE [35] 
INICIO 
LER (NOME); 
LER (NOTA1, NOTA2, NOTA3, NOTA4); 
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4; 
SE MEDIA>=6 
ENTÃO ESCREVER (‘APROVADO’) 
SENÃO ESCREVER (‘REPROVADO’) 
ESCREVER (NOME, MEDIA) 
FIM. 
48
Algoritmos 
NINHOS DE SE 
Usados para tomadas de decisões para mais de 2 opções. 
Forma Geral: 
SE <<CONDIÇÃO>> 
ENTÃO <<COMANDO1>> 
SENÃO SE <<CONDIÇÃO>> 
ENTÃO <<COMANDO1>> 
SENÃO <<COMANDO1>> 
ALGORITMO CINCO 
Segue um Algoritmo que lê 3 números e escreve o maior. 
PROGRAMA ACHA_MAIOR; 
VAR A, B, C : INTEIRO; 
INICIO 
LER (A, B, C); 
SE (A>B) E (A>C) 
ENTÃO ESCREVER (A) 
SENÃO SE (B>A) E (B>C) 
49
Algoritmos 
ENTÃO ESCREVER (B) 
SENÃO ESCREVER (C) 
FIM. 
ESTRUTURAS DE CONDIÇÃO 
A estrutura de condição eqüivale a um ninho de SE’S. 
Forma Geral: 
FACA CASO 
CASO <<CONDIÇÃO1>> 
<<COMANDO1>>; 
CASO <<CONDIÇÃON>> 
<<COMANDO1>>; 
OUTROS CASOS 
<<COMANDO1>>; 
FIM DE CASO 
ALGORITMO SEIS 
Segue um Algoritmo que lê 3 números e escreve o maior. 
PROGRAMA ACHA_MAIOR; 
50
Algoritmos 
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 REPETIÇÃO DETERMINADA 
Quando uma seqüência de comandos deve ser executada 
repetidas vezes, tem-se uma estrutura de repetição. 
A estrutura de repetição, assim como a de decisão, 
envolve sempre a avaliação de uma condição. 
Na repetição determinada o algoritmo apresenta 
previamente a quantidade de repetições. 
Forma Geral 1: 
51
Algoritmos 
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE 
<<VALOR FINAL>> FAÇA 
<<COMANDO1>>; 
Forma Geral 2: 
PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE 
<<VALOR FINAL>> FAÇA 
ÍNICIO 
<<COMANDO1>>; 
<<COMANDON>> 
FIM; 
A repetição por padrão 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. 
ALGORITMO SETE 
Segue um algoritmo que escreve 10 vezes a frase “VASCO 
DA GAMA” 
52
Algoritmos 
PROGRAMA REPETICAO; 
VAR I:INTEIRO 
INICIO 
PARA I :=1 ATE 10 FACA 
VARIÁVEL IMPLEMENTADA DE 1 EM 1 
ESCREVER (‘VASCO DA GAMA’) 
FIM. 
ALGORITMO OITO 
Segue um algoritmo que escreve os 100 primeiros números 
pares. 
PROGRAMA PARES; 
VAR I,PAR: INTEGER; 
INICIO 
PAR:=0; 
PARA I:=1 ATE 100 FACA 
INICIO 
ESCREVER (PAR); 
PAR := PAR+2 
FIM 
FIM. 
53
Algoritmos 
ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO 
INICIAL 
É usada para repetir N vezes uma ou mais instruções. 
Tendo como vantagem o fato de não ser necessário o 
conhecimento prévio do número de repetições. 
Forma Geral 1: 
ENQUANTO <<CONDIÇÃO>> FACA 
<<COMANDO1>>; 
Forma Geral 2: 
ENQUANTO <<CONDIÇÃO>> FACA 
ÍNICIO 
<<COMANDO1>>; 
<<COMANDON>> 
FIM; 
ALGORITMO NOVE 
Segue um algoritmo que calcule a soma dos salários dos 
funcionários de uma empresa. O programa termina quando o 
usuário digitar um salário menor que 0. 
PROGRAMA SOMA_SALARIOS; 
54 
VALIDAÇÃO INICIAL
Algoritmos 
VAR SOMA, SALARIO : REAL; 
INICIO 
SOMA:=O; 
SALARIO:=1; 
ENQUANTO SALARIO>=0 
INICIO 
LER (SALARIO); 
SOMA:=SOMA+SALARIO 
FIM; 
ESCREVER (SOMA) 
FIM. 
ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO 
FINAL 
Assim como a estrutura ENQUANTO É usada para repetir N 
vezes uma ou mais instruções. 
Sua validação é final fazendo com que a repetição seja 
executada pelo menos uma vez. 
55 
TODAS AS VARIÁVEIS QUE ACUMULAM VALORES DEVEM 
RECEBER UM VALOR INICIAL.
Algoritmos 
Forma Geral; 
REPITA 
<<COMANDO1>>; 
<<COMANDON>> 
ATE <<CONDIÇÃO>> 
ALGORITMO DEZ 
Segue um algoritmo que calcule a soma dos salários dos 
funcionários de uma empresa. O programa termina quando o 
usuário digitar um salário menor que 0. 
PROGRAMA SOMA_SALARIOS; 
VAR 
SOMA, SALARIO : REAL; 
INICIO 
SOMA:=O; 
REPITA 
LER (SALARIO); 
SOMA:=SOMA+SALARIO 
ATE SALARIO<0; 
56
Algoritmos 
ESCREVER (SOMA) 
FIM. 
ALGORITMO ONZE 
Segue um algoritmo que escreve os 100 primeiros números 
pares. 
PROGRAMA PARES_2; 
VAR I, PAR, CONTADOR : INTEIRO; 
INICIO 
CONTADOR := 0; 
PAR := 0; 
REPITA 
ESCREVER (PAR); 
PAR := PAR+2; 
CONTADOR := CONTADOR+1; 
ATE CONTADOR=100 
FIM. 
57
Algoritmospascal
Algoritmospascal
Algoritmospascal

Mais conteúdo relacionado

Mais procurados

Ciesa.tecnologia design moda.projeto político pedagógico.2010
Ciesa.tecnologia design moda.projeto político pedagógico.2010Ciesa.tecnologia design moda.projeto político pedagógico.2010
Ciesa.tecnologia design moda.projeto político pedagógico.2010
PORANJE
 
Caderno didatico pascal
Caderno didatico pascalCaderno didatico pascal
Caderno didatico pascal
Alvaro Melo
 
Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...
Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...
Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...
IOB News
 

Mais procurados (16)

Portugala kurso
Portugala kursoPortugala kurso
Portugala kurso
 
Ciesa.tecnologia design moda.projeto político pedagógico.2010
Ciesa.tecnologia design moda.projeto político pedagógico.2010Ciesa.tecnologia design moda.projeto político pedagógico.2010
Ciesa.tecnologia design moda.projeto político pedagógico.2010
 
Implantação de um Sistema de Gestão ERPFLEX WEB
Implantação de um Sistema de Gestão ERPFLEX WEBImplantação de um Sistema de Gestão ERPFLEX WEB
Implantação de um Sistema de Gestão ERPFLEX WEB
 
tecnologia da informação
tecnologia da informaçãotecnologia da informação
tecnologia da informação
 
Código do Trabalho
Código do TrabalhoCódigo do Trabalho
Código do Trabalho
 
Caderno didatico pascal
Caderno didatico pascalCaderno didatico pascal
Caderno didatico pascal
 
Apostila tre.rs2014 informatica_sergio_spolador
Apostila tre.rs2014 informatica_sergio_spoladorApostila tre.rs2014 informatica_sergio_spolador
Apostila tre.rs2014 informatica_sergio_spolador
 
Comsol 2008
Comsol 2008Comsol 2008
Comsol 2008
 
Apostila programação visual usando java e netbeans
Apostila programação visual usando java e netbeansApostila programação visual usando java e netbeans
Apostila programação visual usando java e netbeans
 
Vindula smart enterprise edition
Vindula smart enterprise editionVindula smart enterprise edition
Vindula smart enterprise edition
 
Obrigações Trabalhistas e Previdenciárias na Contratação de Serviços – 9ª edição
Obrigações Trabalhistas e Previdenciárias na Contratação de Serviços – 9ª ediçãoObrigações Trabalhistas e Previdenciárias na Contratação de Serviços – 9ª edição
Obrigações Trabalhistas e Previdenciárias na Contratação de Serviços – 9ª edição
 
Audit dgtc-rel031-2012-2s
Audit dgtc-rel031-2012-2sAudit dgtc-rel031-2012-2s
Audit dgtc-rel031-2012-2s
 
Guia track macker
Guia track mackerGuia track macker
Guia track macker
 
Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...
Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...
Obrigações e Trabalhistas e Previdenciárias na Contratação de Serviços - 8ª e...
 
Apostila php
Apostila phpApostila php
Apostila php
 
Nr20 intermediario final
Nr20 intermediario finalNr20 intermediario final
Nr20 intermediario final
 

Semelhante a Algoritmospascal

Apostila Php
Apostila PhpApostila Php
Apostila Php
jkolive
 
Criando macros vba excel 2003
Criando macros vba excel 2003Criando macros vba excel 2003
Criando macros vba excel 2003
Wanderson Mariano
 
Apostila zw cad 2009
Apostila zw cad 2009Apostila zw cad 2009
Apostila zw cad 2009
cesinhacolaco
 
Manual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-Store
Manual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-StoreManual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-Store
Manual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-Store
IOB News
 
Windows movie maker
Windows movie makerWindows movie maker
Windows movie maker
emefdonaleo
 
Windows Movie Maker
Windows Movie MakerWindows Movie Maker
Windows Movie Maker
guest7d3e6f
 

Semelhante a Algoritmospascal (20)

Algoritmospascal
AlgoritmospascalAlgoritmospascal
Algoritmospascal
 
2011 demonstracoes contabeis[1]
2011 demonstracoes contabeis[1]2011 demonstracoes contabeis[1]
2011 demonstracoes contabeis[1]
 
Apostila Php
Apostila PhpApostila Php
Apostila Php
 
3867 criando macros vba excel
3867 criando macros vba excel3867 criando macros vba excel
3867 criando macros vba excel
 
Criando macros vba excel 2003
Criando macros vba excel 2003Criando macros vba excel 2003
Criando macros vba excel 2003
 
Apostila zw cad 2009
Apostila zw cad 2009Apostila zw cad 2009
Apostila zw cad 2009
 
Apostila Itil
Apostila ItilApostila Itil
Apostila Itil
 
TDD na Prática
TDD na PráticaTDD na Prática
TDD na Prática
 
Apostila itil
Apostila itilApostila itil
Apostila itil
 
Caderno de direito constitucional ii
Caderno de direito constitucional iiCaderno de direito constitucional ii
Caderno de direito constitucional ii
 
Projeto Político Pedagógico EC10 2016
Projeto Político Pedagógico EC10 2016 Projeto Político Pedagógico EC10 2016
Projeto Político Pedagógico EC10 2016
 
Apostila itil
Apostila itilApostila itil
Apostila itil
 
Apostila Itil
Apostila ItilApostila Itil
Apostila Itil
 
1.Cenarios Distribuicao1
1.Cenarios Distribuicao11.Cenarios Distribuicao1
1.Cenarios Distribuicao1
 
Manual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-Store
Manual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-StoreManual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-Store
Manual Prático das Obrigações Acessórias Junto ao Fisco Federal - IOB e-Store
 
Apostila tp
Apostila tpApostila tp
Apostila tp
 
Teste
TesteTeste
Teste
 
ajuda
ajudaajuda
ajuda
 
Windows movie maker
Windows movie makerWindows movie maker
Windows movie maker
 
Windows Movie Maker
Windows Movie MakerWindows Movie Maker
Windows Movie Maker
 

Algoritmospascal

  • 1. SUMÁRIO INTRODUÇÃO...............................................................................................................................................20 INTRODUÇÃO...............................................................................................................................................20 O OBJETIVO PRINCIPAL DA LÓGICA DE PROGRAMAÇÃO É DEMONSTRAR TÉCNICAS PARA RESOLUÇÃO DE PROBLEMAS E CONSEQUENTEMENTE AUTOMATIZAÇÃO DE TAREFAS.........................................................................................................................................................20 O APRENDIZADO DA LÓGICA É ESSENCIAL PARA FORMAÇÃO DE UM BOM PROGRAMADOR, SERVINDO COMO BASE PARA O APRENDIZADO DE TODAS AS LINGUAGENS DE PROGRAMAÇÃO, ESTRUTURADAS OU NÃO....................................................20 ALGORITMO.................................................................................................................................................21 ALGORITMO.................................................................................................................................................21 UM ALGORITMO É UMA SEQÜÊNCIA DE INSTRUÇÕES ORDENADAS DE FORMA LÓGICA PARA A RESOLUÇÃO DE UMA DETERMINADA TAREFA OU PROBLEMA.................................21 PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> FAÇA................................................................................................................................................................23 ÍNICIO.............................................................................................................................................................23 <<COMANDO1>>;.........................................................................................................................................23 <<COMANDON>>..........................................................................................................................................23 FIM;.................................................................................................................................................................23 ALGORITMO NÃO COMPUTACIONAL..................................................................................................24 ALGORITMO NÃO COMPUTACIONAL..................................................................................................24 ABAIXO É APRESENTADO UM ALGORITMO NÃO COMPUTACIONAL CUJO OBJETIVO É USAR UM TELEFONE PÚBLICO...............................................................................................................24 INÍCIO..............................................................................................................................................................24 1.TIRAR O FONE DO GANCHO;................................................................................................................24 2.OUVIR O SINAL DE LINHA;....................................................................................................................24 3.INTRODUZIR O CARTÃO;......................................................................................................................24 4.TECLAR O NÚMERO DESEJADO;.........................................................................................................24 5.SE DER O SINAL DE CHAMAR...............................................................................................................24 5.1 CONVERSAR;...........................................................................................................................................24 5.2 DESLIGAR;...............................................................................................................................................24 5.3 RETIRAR O CARTÃO;...........................................................................................................................24
  • 2. Algoritmos 6. SENÃO.........................................................................................................................................................24 6.1 REPETIR;.................................................................................................................................................24 FIM...................................................................................................................................................................24 PROGRAMA...................................................................................................................................................24 PROGRAMA...................................................................................................................................................24 UM PROGRAMA É UM ALGORITMO ESCRITO EM UMA LINGUAGEM COMPUTACIONAL. ...........................................................................................................................................................................24 LINGUAGENS DE PROGRAMAÇÃO........................................................................................................25 LINGUAGENS DE PROGRAMAÇÃO........................................................................................................25 SÃO SOFTWARES QUE PERMITEM O DESENVOLVIMENTO DE PROGRAMAS. POSSUEM UM PODER DE CRIAÇÃO ILIMITADO, DESDE JOGOS, EDITORES DE TEXTO, SISTEMAS EMPRESARIAIS ATÉ SISTEMAS OPERACIONAIS..............................................................................25 EXISTEM VÁRIAS LINGUAGENS DE PROGRAMAÇÃO, CADA UMA COM SUAS CARACTERÍSTICAS PRÓPRIAS...............................................................................................................25 EXEMPLOS:..................................................................................................................................................25 PASCAL...........................................................................................................................................................25 CLIPPER..........................................................................................................................................................25 C........................................................................................................................................................................25 VISUAL BASIC...............................................................................................................................................25 DELPHI E ETC. .............................................................................................................................................25 TÉCNICAS ATUAIS DE PROGRAMAÇÃO..............................................................................................26 TÉCNICAS ATUAIS DE PROGRAMAÇÃO..............................................................................................26 PROGRAMAÇÃO SEQÜENCIAL...............................................................................................................26 PROGRAMAÇÃO ESTRUTURADA...........................................................................................................26 PROGRAMAÇÃO ORIENTADA A EVENTOS E OBJETOS..................................................................26 ALGORITMOS EM “PORTUGOL”............................................................................................................26 ALGORITMOS EM “PORTUGOL”............................................................................................................26 DURANTE NOSSO CURSO IREMOS APRENDER A DESENVOLVER NOSSOS ALGORITMOS EM UMA PSEUDO-LINGUAGEM CONHECIDA COMO “PORTUGOL” OU PORTUGUÊS ESTRUTURADO.............................................................................................................................................26 “PORTUGOL” É DERIVADO DA AGLUTINAÇÃO DE PORTUGUÊS + ALGOL. ALGOL É O NOME DE UMA LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA USADA NO FINAL DA DÉCADA DE 50...............................................................................................................................................26 OPERADORES ARITMÉTICOS..................................................................................................................26 2
  • 3. Algoritmos OPERADORES ARITMÉTICOS..................................................................................................................26 +  ADIÇÃO..................................................................................................................................................26 -  SUBTRAÇÃO..........................................................................................................................................26 *  MULTIPLICAÇÃO................................................................................................................................26 /  DIVISÃO...................................................................................................................................................26 OPERADORES RELACIONAIS..................................................................................................................27 OPERADORES RELACIONAIS..................................................................................................................27 >  MAIOR QUE...........................................................................................................................................27 <  MENOR QUE..........................................................................................................................................27 >=  MAIOR OU IGUAL.............................................................................................................................27 <=  MENOR OU IGUAL............................................................................................................................27 =  IGUAL......................................................................................................................................................27 <>  DIFERENTE.........................................................................................................................................27 LINEARIZAÇÃO DE EXPRESSÕES..........................................................................................................27 LINEARIZAÇÃO DE EXPRESSÕES..........................................................................................................27 PARA A CONSTRUÇÃO DE ALGORITMOS TODAS AS EXPRESSÕES ARITMÉTICAS DEVEM SER LINEARIZADAS, OU SEJA, COLOCADAS EM LINHAS..............................................................27 É IMPORTANTE TAMBÉM RESSALVAR O USO DOS OPERADORES CORRESPONDENTES DA ARITMÉTICA TRADICIONAL PARA A COMPUTACIONAL......................................................27 EXEMPLO:......................................................................................................................................................27 MODULARIZAÇÃO DE EXPRESSÕES.....................................................................................................28 MODULARIZAÇÃO DE EXPRESSÕES.....................................................................................................28 A MODULARIZAÇÃO É A DIVISÃO DA EXPRESSÃO EM PARTES, PROPORCIONANDO MAIOR COMPREENSÃO E DEFININDO PRIORIDADES PARA RESOLUÇÃO DA MESMA......28 COMO PODE SER OBSERVADO NO EXEMPLO ANTERIOR, EM EXPRESSÕES COMPUTACIONAIS USAMOS SOMENTE PARÊNTESES “( )” PARA MODULARIZAÇÃO........28 NA INFORMÁTICA PODEMOS TER PARÊNTESES DENTRO DE PARÊNTESES.........................28 EXEMPLOS DE PRIORIDADES:................................................................................................................28 (2+2)/2=2...........................................................................................................................................................28 2+2/2=3.............................................................................................................................................................28 OPERADORES ESPECIAIS (MOD E DIV)................................................................................................28 3
  • 4. Algoritmos OPERADORES ESPECIAIS (MOD E DIV)................................................................................................28 MOD  RETORNA O RESTO DA DIVISÃO ENTRE 2 NÚMEROS INTEIROS................................28 DIV  RETORNA O VALOR INTEIRO QUE RESULTA DA DIVISÃO ENTRE 2 NÚMEROS INTEIROS........................................................................................................................................................28 EXEMPLO:......................................................................................................................................................29 FUNÇÕES........................................................................................................................................................29 FUNÇÕES........................................................................................................................................................29 UMA FUNÇÃO É UM INSTRUMENTO (SUB–ALGORITMO) QUE TEM COMO OBJETIVO RETORNAR UM VALOR OU UMA INFORMAÇÃO..............................................................................29 A CHAMADA DE UMA FUNÇÃO É FEITA ATRAVÉS DA CITAÇÃO DO SEU NOME SEGUIDO OPCIONALMENTE DE SEU ARGUMENTO INICIAL ENTRE PARÊNTESES.................................29 AS FUNÇÕES PODEM SER PREDEFINIDAS PELA LINGUAGEM OU CRIADAS PELO PROGRAMADOR DE ACORDO COM O SEU INTERESSE..................................................................29 EXEMPLOS:...................................................................................................................................................29 BIBLIOTECAS DE FUNÇÕES.....................................................................................................................30 BIBLIOTECAS DE FUNÇÕES.....................................................................................................................30 ARMAZENAM UM CONJUNTO DE FUNÇÕES QUE PODEM SER USADAS PELOS PROGRAMAS.................................................................................................................................................30 FUNÇÕES PRÉ-DEFINIDAS........................................................................................................................30 FUNÇÕES PRÉ-DEFINIDAS........................................................................................................................30 ABS( )................................................................................................................................................................30 VALOR ABSOLUTO......................................................................................................................................30 SQRT( ).............................................................................................................................................................30 RAIZ QUADRADA.........................................................................................................................................30 SQR( )...............................................................................................................................................................30 ELEVA AO QUADRADO .............................................................................................................................30 TRUNC( ).........................................................................................................................................................30 VALOR TRUNCADO.....................................................................................................................................30 ROUND( ).........................................................................................................................................................30 VALOR ARREDONDADO............................................................................................................................30 LOG( )...............................................................................................................................................................30 LOGARITMO.................................................................................................................................................30 4
  • 5. Algoritmos SIN( ).................................................................................................................................................................30 SENO................................................................................................................................................................30 COS( )...............................................................................................................................................................30 COSENO..........................................................................................................................................................30 TAN( )...............................................................................................................................................................30 TANGENTE.....................................................................................................................................................30 AS FUNÇÕES ACIMA SÃO AS MAIS COMUNS E IMPORTANTES PARA NOSSO DESENVOLVIMENTO LÓGICO, ENTRETANTO, CADA LINGUAGEM POSSUI SUAS FUNÇÕES PRÓPIAS. AS FUNÇÕES PODEM SER ARITMÉTICAS, TEMPORAIS, DE TEXTO E ETC...................................................................................................................................................................31 OPERADORES LÓGICOS............................................................................................................................31 OPERADORES LÓGICOS............................................................................................................................31 ATUAM SOBRE EXPRESSÕES RETORNANDO SEMPRE VALORES LÓGICOS COMO FALSO OU VERDADEIRO.........................................................................................................................................31 E.........................................................................................................................................................................31 RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM VERDADEIRAS................................31 OU.....................................................................................................................................................................31 BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR VERDADEIRO....................31 NÃO..................................................................................................................................................................31 INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E VICE-VERSA..........................31 TABELA VERDADE......................................................................................................................................31 TABELA VERDADE......................................................................................................................................31 A........................................................................................................................................................................31 B.........................................................................................................................................................................31 A E B.................................................................................................................................................................31 A OU B..............................................................................................................................................................31 NÃO (A)............................................................................................................................................................31 V........................................................................................................................................................................31 V........................................................................................................................................................................31 V........................................................................................................................................................................31 V........................................................................................................................................................................31 5
  • 6. Algoritmos F.........................................................................................................................................................................31 V........................................................................................................................................................................31 F.........................................................................................................................................................................31 F.........................................................................................................................................................................31 V........................................................................................................................................................................31 F.........................................................................................................................................................................31 F.........................................................................................................................................................................31 V........................................................................................................................................................................31 F.........................................................................................................................................................................31 V........................................................................................................................................................................31 V........................................................................................................................................................................31 F.........................................................................................................................................................................31 F.........................................................................................................................................................................31 F.........................................................................................................................................................................31 F.........................................................................................................................................................................31 V........................................................................................................................................................................31 EXPRESSÕES LÓGICAS..............................................................................................................................32 EXPRESSÕES LÓGICAS..............................................................................................................................32 AS EXPRESSÕES COMPOSTAS DE RELAÇÕES SEMPRE RETORNAM UM VALOR LÓGICO. ...........................................................................................................................................................................32 EXEMPLOS:...................................................................................................................................................32 2+5>4  VERDADEIRO...............................................................................................................................33 3<>3  FALSO...............................................................................................................................................33 DE ACORDO COM A NECESSIDADE, AS EXPRESSÕES PODEM SER UNIDAS PELOS OPERADORES LÓGICOS............................................................................................................................34 EXEMPLOS:...................................................................................................................................................34 2+5>4 E 3<>3  FALSO................................................................................................................................34 2+5>4 OU 3<>3  VERDADEIRO..............................................................................................................34 NÃO(3<>3) VERDADEIRO......................................................................................................................34 VARIÁVEIS.....................................................................................................................................................34 6
  • 7. Algoritmos VARIÁVEIS.....................................................................................................................................................34 VARIÁVEIS SÃO ENDEREÇOS DE MEMÓRIA DESTINADOS A ARMAZENAR INFORMAÇÕES TEMPORARIAMENTE.................................................................................................................................34 * TODO ALGORITMO OU PROGRAMA DEVE POSSUIR VARIÁVEL!............................................34 VARIÁVEIS DE ENTRADA E SAÍDA........................................................................................................35 VARIÁVEIS DE ENTRADA E SAÍDA........................................................................................................35 VARIÁVEIS DE ENTRADA ARMAZENAM INFORMAÇÕES FORNECIDAS POR UM MEIO EXTERNO, NORMALMENTE USUÁRIOS OU DISCOS........................................................................35 VARIÁVEIS DE SAÍDA ARMAZENAM DADOS PROCESSADOS COMO RESULTADOS.............35 EXEMPLO:......................................................................................................................................................35 DE ACORDO COM A FIGURA ACIMA A E B SÃO VARIÁVEIS DE ENTRADA E C É UMA VARIÁVEL DE SAÍDA..................................................................................................................................35 CONSTANTES................................................................................................................................................37 CONSTANTES................................................................................................................................................37 CONSTANTES SÃO ENDEREÇOS DE MEMÓRIA DESTINADOS A ARMAZENAR INFORMAÇÕES FIXAS, INALTERÁVEIS DURANTE A EXECUÇÃO DO PROGRAMA...............37 EXEMPLO:......................................................................................................................................................37 PI = 3.1416........................................................................................................................................................37 IDENTIFICADORES.....................................................................................................................................37 IDENTIFICADORES.....................................................................................................................................37 SÃO OS NOMES DADOS A VARIÁVEIS, CONSTANTES E PROGRAMAS.......................................37 REGRAS PARA CONSTRUÇÃO DE IDENTIFICADORES:..................................................................37 NÃO PODEM TER NOMES DE PALAVRAS RESERVADAS (COMANDOS DA LINGUAGEM);. .37 DEVEM POSSUIR COMO 1º CARACTERE UMA LETRA OU UNDERSCORE ( _ );.......................37 TER COMO DEMAIS CARACTERES LETRAS, NÚMEROS OU UNDERSCORE;...........................37 TER NO MÁXIMO 127 CARACTERES;....................................................................................................37 NÃO POSSUIR ESPAÇOS EM BRANCO;.................................................................................................37 A ESCOLHA DE LETRAS MAIÚSCULAS OU MINÚSCULAS É INDIFERENTE.............................37 EXEMPLOS:...................................................................................................................................................38 NOME...............................................................................................................................................................38 TELEFONE.....................................................................................................................................................38 7
  • 8. Algoritmos IDADE_FILHO...............................................................................................................................................38 NOTA1..............................................................................................................................................................38 SALARIO.........................................................................................................................................................38 PI.......................................................................................................................................................................38 UMNOMEMUITOCOMPRIDOEDIFICILDELER...................................................................................38 UM_NOME_MUITO_COMPRIDO_E_FACIL_DE_LER.........................................................................38 TIPOS DE DADOS..........................................................................................................................................39 TIPOS DE DADOS..........................................................................................................................................39 TODAS AS VARIÁVEIS DEVEM ASSUMIR UM DETERMINADO TIPO DE INFORMAÇÃO......39 O TIPO DE DADO PODE SER:....................................................................................................................39 PRIMITIVO  PRÉ-DEFINIDO PELA LINGUAGEM;..........................................................................39 SUB-FAIXA  É UMA PARTE DE UM TIPO JÁ EXISTENTE;...........................................................39 ESCALAR  DEFINIDOS PELO PROGRAMADOR..............................................................................39 EXEMPLOS:...................................................................................................................................................39 A : INTEIRO....................................................................................................................................................39 TIPO NOTA=[1..10] DE INTEIRO...............................................................................................................39 TIPO SEMANA = (SEGUNDA-FEIRA, TERÇA-FEIRA, QUARTA-FEIRA, QUINTA-FEIRA, SEXTA-FEIRA, SÁBADO, DOMINGO)......................................................................................................39 TIPOS PRIMITIVOS DE DADOS................................................................................................................39 TIPOS PRIMITIVOS DE DADOS................................................................................................................39 INTEIRO..........................................................................................................................................................40 ADMITE SOMENTE NÚMEROS INTEIROS. GERALMENTE É UTILIZADO PARA REPRESENTAR UMA CONTAGEM (QUANTIDADE)...........................................................................40 REAL................................................................................................................................................................40 ADMITE NÚMEROS REAIS (COM OU SEM CASAS DECIMAIS). GERALMENTE É UTILIZADO PARA REPRESENTAR UMA MEDIÇÃO..................................................................................................40 CARACTERE..................................................................................................................................................40 ADMITE CARACTERES ALFANUMÉRICOS. OS NÚMEROS QUANDO DECLARADOS COMO CARACTERES TORNAM SE REPRESENTATIVOS E PERDEM A ATRIBUIÇÃO DE VALOR.. .40 LÓGICO...........................................................................................................................................................40 ADMITE SOMENTE VALORES LÓGICOS(VERDADEIRO/FALSO).................................................40 8
  • 9. Algoritmos COMANDOS DE I/O (INPUT/OUTPUT)....................................................................................................40 COMANDOS DE I/O (INPUT/OUTPUT)....................................................................................................40 LER  COMANDO DE ENTRADA QUE PERMITE A LEITURA DE VARIÁVEIS DE ENTRADA. ...........................................................................................................................................................................40 ESCREVER  COMANDO DE SAÍDA QUE EXIBE UMA INFORMAÇÃO NA TELA DO MONITOR.......................................................................................................................................................40 IMPRIMIR  COMANDO DE SAÍDA QUE ENVIA UMA INFORMAÇÃO PARA A IMPRESSORA.................................................................................................................................................40 SINAL DE ATRIBUIÇÃO.............................................................................................................................41 SINAL DE ATRIBUIÇÃO.............................................................................................................................41 UMA VARIÁVEL NUNCA É ETERNAMENTE IGUAL A UM VALOR, SEU CONTEÚDO PODE SER ALTERADO A QUALQUER MOMENTO. PORTANTO PARA ATRIBUIR VALORES A VARIÁVEIS DEVEMOS USAR O SINAL DE “:=”...................................................................................41 EXEMPLOS:...................................................................................................................................................41 A := 2;...............................................................................................................................................................41 B := 3;................................................................................................................................................................41 C := A + B;........................................................................................................................................................41 SINAL DE IGUALDADE...............................................................................................................................41 SINAL DE IGUALDADE...............................................................................................................................41 AS CONSTANTES SÃO ETERNAMENTE IGUAIS A DETERMINADOS VALORES, PORTANTO USAMOS O SINAL DE “=”...........................................................................................................................41 EXEMPLOS:...................................................................................................................................................41 PI = 3.1416;.......................................................................................................................................................41 EMPRESA = ‘COLÉGIO DE INFORMÁTICA L.T.D.A.’........................................................................41 V = VERDADEIRO.........................................................................................................................................41 CORPO GERAL DE UM PROGRAMA......................................................................................................42 CORPO GERAL DE UM PROGRAMA......................................................................................................42 PROGRAMA <<IDENTIFICADOR>>;.......................................................................................................42 CONST.............................................................................................................................................................42 <<IDENTIFICADOR>> = <<DADO>>.......................................................................................................42 VAR...................................................................................................................................................................42 <<IDENTIFICADOR>> : <<TIPO>>;........................................................................................................42 9
  • 10. Algoritmos ÍNICIO..............................................................................................................................................................42 { ........................................................................................................................................................................42 COMANDOS DE ENTRADA,PROCESSAMENTO E SAÍDA .................................................................42 <<COMANDO1>>;.........................................................................................................................................42 <<COMANDON>>..........................................................................................................................................42 }..........................................................................................................................................................................42 FIM...................................................................................................................................................................42 ESTRUTURAS SEQÜÊNCIAIS....................................................................................................................42 ESTRUTURAS SEQÜÊNCIAIS....................................................................................................................42 COMO PODE SER ANALISADO NO TÓPICO ANTERIOR, TODO PROGRAMA POSSUI UMA ESTRUTURA SEQÜENCIAL DETERMINADA POR UM ÍNICIO E FIM...........................................42 ..........................................................................................................................................................................42 ; PONTO E VÍRGULA ;.................................................................................................................................43 ; PONTO E VÍRGULA ;.................................................................................................................................43 O SINAL DE PONTO E VÍRGULA “;” INDICA A EXISTÊNCIA DE UM PRÓXIMO COMANDO (PASSA PARA O PRÓXIMO).......................................................................................................................43 NA ESTRUTURA ÍNICIO E NO COMANDO QUE ANTECEDE A ESTRUTURA FIM NÃO SE USA “;”......................................................................................................................................................................43 PRIMEIRO ALGORITMO............................................................................................................................43 PRIMEIRO ALGORITMO............................................................................................................................43 SEGUE UM ALGORITMO QUE LÊ O NOME E AS 4 NOTAS BIMESTRAIS DE UM ALUNO. EM SEGUIDA O ALGORITMO CALCULA E ESCREVE A MÉDIA OBTIDA..........................................43 PROGRAMA MEDIA_FINAL;.....................................................................................................................43 VAR...................................................................................................................................................................43 NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: INTEIRO;..........................................................................43 NOME : CARACTERE [35]..........................................................................................................................43 INICIO..............................................................................................................................................................43 LER (NOME);.................................................................................................................................................43 LER (NOTA1, NOTA2, NOTA3, NOTA4);..................................................................................................43 MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;...........................................................................43 ESCREVER (NOME, MEDIA).....................................................................................................................43 10
  • 11. Algoritmos FIM...................................................................................................................................................................43 SEGUNDO ALGORITMO.............................................................................................................................44 SEGUNDO ALGORITMO.............................................................................................................................44 SEGUE UM ALGORITMO QUE LÊ O RAIO DE UMA CIRCUNFERÊNCIA E CALCULA SUA ÁREA................................................................................................................................................................44 PROGRAMA AREA_CIRCUNFERENCIA;...............................................................................................44 CONST PI = 3.1416;........................................................................................................................................44 VAR RAIO, AREA : REAL;..........................................................................................................................44 INICIO..............................................................................................................................................................44 LER (RAIO); {PROCESSAMENTO}..........................................................................................................44 AREA := PI * SQR(RAIO); {ENTRADA} ..................................................................................................44 ESCREVER (‘AREA =’, AREA) {SAÍDA}..................................................................................................44 FIM...................................................................................................................................................................44 {LINHAS DE COMENTÁRIO}.....................................................................................................................44 {LINHAS DE COMENTÁRIO}.....................................................................................................................44 PODEMOS INSERIR EM UM ALGORITMO COMENTÁRIOS PARA AUMENTAR A COMPREENSÃO DO MESMO, PARA ISSO BASTA QUE O TEXTO FIQUE ENTRE CHAVES “{}”....................................................................................................................................................................44 EXEMPLO:......................................................................................................................................................44 LER (RAIO); {ENTRADA}............................................................................................................................44 ‘ASPAS SIMPLES’.........................................................................................................................................45 ‘ASPAS SIMPLES’.........................................................................................................................................45 QUANDO QUEREMOS EXIBIR UMA MENSAGEM PARA A TELA OU IMPRESSORA ELA DEVE ESTAR CONTIDA ENTRE ASPAS SIMPLES, CASO CONTRÁRIO, O COMPUTADOR IRÁ IDENTIFICAR A MENSAGEM COMO VARIÁVEL INDEFINIDA......................................................45 EXEMPLO:......................................................................................................................................................45 ESCREVER (‘AREA OBTIDA =’, AREA) {COMANDO DE SAÍDA}....................................................45 AREA OBTIDA = X.XX {RESULTADO GERADO NA TELA}...............................................................45 ESTRUTURAS DE DECISÃO.......................................................................................................................45 ESTRUTURAS DE DECISÃO.......................................................................................................................45 EXECUTA UMA SEQÜÊNCIA DE COMANDOS DE ACORDO COM O RESULTADO DE UM TESTE..............................................................................................................................................................45 11
  • 12. Algoritmos A ESTRUTURA DE DECISÃO PODE SER SIMPLES OU COMPOSTA, BASEADA EM UM RESULTADO LÓGICO.................................................................................................................................45 SIMPLES:........................................................................................................................................................46 SE <<CONDIÇÃO>>......................................................................................................................................46 ENTÃO <<COMANDO1>>..........................................................................................................................46 COMPOSTA 1:................................................................................................................................................46 SE <<CONDIÇÃO>>......................................................................................................................................46 ENTÃO <<COMANDO1>>..........................................................................................................................46 SENÃO <<COMANDO1>>...........................................................................................................................46 COMPOSTA 2:................................................................................................................................................47 SE <<CONDIÇÃO>>......................................................................................................................................47 ENTÃO INICIO.............................................................................................................................................47 <<COMANDO1>>;.........................................................................................................................................47 <<COMANDON>>..........................................................................................................................................47 FIM;...............................................................................................................................................................47 SENÃO INICIO..............................................................................................................................................47 <<COMANDO1>>; <<COMANDON>>.......................................................................................................47 FIM;...............................................................................................................................................................47 ALGORITMO TRÊS......................................................................................................................................47 ALGORITMO TRÊS......................................................................................................................................47 SEGUE UM ALGORITMO QUE LÊ 2 NÚMEROS E ESCREVE O MAIOR........................................47 PROGRAMA ACHA_MAIOR;.....................................................................................................................47 VAR A, B : INTEIRO;....................................................................................................................................47 INICIO..............................................................................................................................................................47 LER (A, B);.....................................................................................................................................................47 SE A>B.............................................................................................................................................................47 ENTÃO ESCREVER (A)..............................................................................................................................47 SENÃO ESCREVER (B)..............................................................................................................................47 FIM...................................................................................................................................................................48 ALGORITMO QUATRO...............................................................................................................................48 12
  • 13. Algoritmos ALGORITMO QUATRO...............................................................................................................................48 SEGUE UM ALGORITMO QUE LÊ O NOME E AS 4 NOTAS BIMESTRAIS DE UM ALUNO. EM SEGUIDA O ALGORITMO CALCULA E ESCREVE A MÉDIA OBTIDA PELO ALUNO ESCREVENDO TAMBÉM SE O ALUNO FOI APROVADO OU REPROVADO.................................48 MÉDIA PARA APROVAÇÃO = 6................................................................................................................48 PROGRAMA MEDIA_FINAL;.....................................................................................................................48 VAR...................................................................................................................................................................48 NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: REAL;................................................................................48 NOME : CARACTERE [35]..........................................................................................................................48 INICIO..............................................................................................................................................................48 LER (NOME);.................................................................................................................................................48 LER (NOTA1, NOTA2, NOTA3, NOTA4);..................................................................................................48 MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;...........................................................................48 SE MEDIA>=6................................................................................................................................................48 ENTÃO ESCREVER (‘APROVADO’).........................................................................................................48 SENÃO ESCREVER (‘REPROVADO’).......................................................................................................48 ESCREVER (NOME, MEDIA)......................................................................................................................48 FIM...................................................................................................................................................................48 NINHOS DE SE...............................................................................................................................................49 NINHOS DE SE...............................................................................................................................................49 USADOS PARA TOMADAS DE DECISÕES PARA MAIS DE 2 OPÇÕES...........................................49 FORMA GERAL:............................................................................................................................................49 SE <<CONDIÇÃO>>......................................................................................................................................49 ENTÃO <<COMANDO1>>..........................................................................................................................49 SENÃO SE <<CONDIÇÃO>>......................................................................................................................49 ENTÃO <<COMANDO1>>........................................................................................................................49 SENÃO <<COMANDO1>>.........................................................................................................................49 ALGORITMO CINCO...................................................................................................................................49 ALGORITMO CINCO...................................................................................................................................49 SEGUE UM ALGORITMO QUE LÊ 3 NÚMEROS E ESCREVE O MAIOR........................................49 13
  • 14. Algoritmos PROGRAMA ACHA_MAIOR;.....................................................................................................................49 VAR A, B, C : INTEIRO;...............................................................................................................................49 INICIO..............................................................................................................................................................49 LER (A, B, C);.................................................................................................................................................49 SE (A>B) E (A>C)..........................................................................................................................................49 ENTÃO ESCREVER (A)..............................................................................................................................49 SENÃO SE (B>A) E (B>C)...........................................................................................................................49 ENTÃO ESCREVER (B)................................................................................................................................50 SENÃO ESCREVER (C)................................................................................................................................50 FIM...................................................................................................................................................................50 ESTRUTURAS DE CONDIÇÃO...................................................................................................................50 ESTRUTURAS DE CONDIÇÃO...................................................................................................................50 A ESTRUTURA DE CONDIÇÃO EQÜIVALE A UM NINHO DE SE’S................................................50 FORMA GERAL:............................................................................................................................................50 FACA CASO....................................................................................................................................................50 CASO <<CONDIÇÃO1>>.............................................................................................................................50 <<COMANDO1>>;.......................................................................................................................................50 CASO <<CONDIÇÃON>>............................................................................................................................50 <<COMANDO1>>;.......................................................................................................................................50 OUTROS CASOS...........................................................................................................................................50 <<COMANDO1>>;.......................................................................................................................................50 FIM DE CASO.................................................................................................................................................50 ALGORITMO SEIS........................................................................................................................................50 ALGORITMO SEIS........................................................................................................................................50 SEGUE UM ALGORITMO QUE LÊ 3 NÚMEROS E ESCREVE O MAIOR........................................50 PROGRAMA ACHA_MAIOR;.....................................................................................................................50 VAR A, B, C : INTEIRO;...............................................................................................................................51 INICIO..............................................................................................................................................................51 LER (A, B, C);.................................................................................................................................................51 14
  • 15. Algoritmos FACA CASO...................................................................................................................................................51 CASO (A>B) E (A>C).....................................................................................................................................51 ESCREVER (A);...........................................................................................................................................51 CASO (B>A) E (B>C)...................................................................................................................................51 ESCREVER (B);..............................................................................................................................................51 OUTROS CASOS............................................................................................................................................51 ESCREVER (C);..............................................................................................................................................51 FIM DE CASO................................................................................................................................................51 FIM...................................................................................................................................................................51 ESTRUTURA DE REPETIÇÃO DETERMINADA....................................................................................51 ESTRUTURA DE REPETIÇÃO DETERMINADA....................................................................................51 QUANDO UMA SEQÜÊNCIA DE COMANDOS DEVE SER EXECUTADA REPETIDAS VEZES, TEM-SE UMA ESTRUTURA DE REPETIÇÃO........................................................................................51 A ESTRUTURA DE REPETIÇÃO, ASSIM COMO A DE DECISÃO, ENVOLVE SEMPRE A AVALIAÇÃO DE UMA CONDIÇÃO..........................................................................................................51 NA REPETIÇÃO DETERMINADA O ALGORITMO APRESENTA PREVIAMENTE A QUANTIDADE DE REPETIÇÕES...............................................................................................................51 FORMA GERAL 1:.........................................................................................................................................51 PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> FAÇA................................................................................................................................................................52 <<COMANDO1>>;........................................................................................................................................52 FORMA GERAL 2:.........................................................................................................................................52 PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> FAÇA................................................................................................................................................................52 ÍNICIO.............................................................................................................................................................52 <<COMANDO1>>;.........................................................................................................................................52 <<COMANDON>>..........................................................................................................................................52 FIM;.................................................................................................................................................................52 A REPETIÇÃO POR PADRÃO 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...................................................................52 ALGORITMO SETE......................................................................................................................................52 ALGORITMO SETE......................................................................................................................................52 15
  • 16. Algoritmos SEGUE UM ALGORITMO QUE ESCREVE 10 VEZES A FRASE “VASCO DA GAMA”.................52 PROGRAMA REPETICAO;.........................................................................................................................53 VAR I:INTEIRO.............................................................................................................................................53 INICIO..............................................................................................................................................................53 PARA I :=1 ATE 10 FACA............................................................................................................................53 ESCREVER (‘VASCO DA GAMA’)...........................................................................................................53 FIM...................................................................................................................................................................53 ALGORITMO OITO......................................................................................................................................53 ALGORITMO OITO......................................................................................................................................53 SEGUE UM ALGORITMO QUE ESCREVE OS 100 PRIMEIROS NÚMEROS PARES.....................53 PROGRAMA PARES;....................................................................................................................................53 VAR I,PAR: INTEGER;.................................................................................................................................53 INICIO..............................................................................................................................................................53 PAR:=0;...........................................................................................................................................................53 PARA I:=1 ATE 100 FACA............................................................................................................................53 INICIO............................................................................................................................................................53 ESCREVER (PAR);.....................................................................................................................................53 PAR := PAR+2..............................................................................................................................................53 FIM.................................................................................................................................................................53 FIM..................................................................................................................................................................53 ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO INICIAL..........................54 ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO INICIAL..........................54 É USADA PARA REPETIR N VEZES UMA OU MAIS INSTRUÇÕES. TENDO COMO VANTAGEM O FATO DE NÃO SER NECESSÁRIO O CONHECIMENTO PRÉVIO DO NÚMERO DE REPETIÇÕES...........................................................................................................................................54 FORMA GERAL 1:.........................................................................................................................................54 ENQUANTO <<CONDIÇÃO>> FACA........................................................................................................54 <<COMANDO1>>;........................................................................................................................................54 FORMA GERAL 2:.........................................................................................................................................54 ENQUANTO <<CONDIÇÃO>> FACA........................................................................................................54 16
  • 17. Algoritmos ÍNICIO.............................................................................................................................................................54 <<COMANDO1>>;.......................................................................................................................................54 <<COMANDON>>........................................................................................................................................54 FIM;.................................................................................................................................................................54 ALGORITMO NOVE.....................................................................................................................................54 ALGORITMO NOVE.....................................................................................................................................54 SEGUE UM ALGORITMO QUE CALCULE A SOMA DOS SALÁRIOS DOS FUNCIONÁRIOS DE UMA EMPRESA. O PROGRAMA TERMINA QUANDO O USUÁRIO DIGITAR UM SALÁRIO MENOR QUE 0...............................................................................................................................................54 PROGRAMA SOMA_SALARIOS;..............................................................................................................54 VAR SOMA, SALARIO : REAL;..................................................................................................................55 INICIO..............................................................................................................................................................55 SOMA:=O;......................................................................................................................................................55 SALARIO:=1;.................................................................................................................................................55 ENQUANTO SALARIO>=0.........................................................................................................................55 INICIO............................................................................................................................................................55 LER (SALARIO);.........................................................................................................................................55 SOMA:=SOMA+SALARIO........................................................................................................................55 FIM;................................................................................................................................................................55 ESCREVER (SOMA).....................................................................................................................................55 FIM...................................................................................................................................................................55 ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO FINAL.............................55 ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO FINAL.............................55 ASSIM COMO A ESTRUTURA ENQUANTO É USADA PARA REPETIR N VEZES UMA OU MAIS INSTRUÇÕES. ....................................................................................................................................55 SUA VALIDAÇÃO É FINAL FAZENDO COM QUE A REPETIÇÃO SEJA EXECUTADA PELO MENOS UMA VEZ.........................................................................................................................................55 FORMA GERAL;............................................................................................................................................56 REPITA............................................................................................................................................................56 <<COMANDO1>>;........................................................................................................................................56 <<COMANDON>>.........................................................................................................................................56 17
  • 18. Algoritmos ATE <<CONDIÇÃO>>...................................................................................................................................56 ALGORITMO DEZ........................................................................................................................................56 ALGORITMO DEZ........................................................................................................................................56 SEGUE UM ALGORITMO QUE CALCULE A SOMA DOS SALÁRIOS DOS FUNCIONÁRIOS DE UMA EMPRESA. O PROGRAMA TERMINA QUANDO O USUÁRIO DIGITAR UM SALÁRIO MENOR QUE 0...............................................................................................................................................56 PROGRAMA SOMA_SALARIOS;..............................................................................................................56 VAR...................................................................................................................................................................56 SOMA, SALARIO : REAL;...........................................................................................................................56 INICIO..............................................................................................................................................................56 SOMA:=O;......................................................................................................................................................56 REPITA...........................................................................................................................................................56 LER (SALARIO);..........................................................................................................................................56 SOMA:=SOMA+SALARIO.........................................................................................................................56 ATE SALARIO<0;.........................................................................................................................................56 ESCREVER (SOMA).....................................................................................................................................57 FIM...................................................................................................................................................................57 ALGORITMO ONZE.....................................................................................................................................57 ALGORITMO ONZE.....................................................................................................................................57 SEGUE UM ALGORITMO QUE ESCREVE OS 100 PRIMEIROS NÚMEROS PARES.....................57 PROGRAMA PARES_2;................................................................................................................................57 VAR I, PAR, CONTADOR : INTEIRO;......................................................................................................57 INICIO..............................................................................................................................................................57 CONTADOR := 0;..........................................................................................................................................57 PAR := 0;..........................................................................................................................................................57 REPITA............................................................................................................................................................57 ESCREVER (PAR);......................................................................................................................................57 PAR := PAR+2;..............................................................................................................................................57 CONTADOR := CONTADOR+1;...............................................................................................................57 ATE CONTADOR=100.................................................................................................................................57 18
  • 19. Algoritmos FIM...................................................................................................................................................................57 PROGRAMAS EQUIVALENTES................................................................................................................58 PROGRAMAS EQUIVALENTES................................................................................................................58 O ALGORITMO ONZE PODERIA TER SIDO CRIADO COM QUALQUER ESTRUTURA DE REPETIÇÃO. PORTANTO PODEMOS TER ALGORITMOS QUE SÃO ESCRITOS DE MANEIRAS DIFERENTES, MAS, FUNCIONAM REALIZANDO O MESMO OBJETIVO..............58 EXERCÍCIOS..................................................................................................................................................59 EXERCÍCIOS..................................................................................................................................................59 1)O QUE É UM ALGORITMO?...................................................................................................................59 2)O QUE É UM PROGRAMA?.....................................................................................................................59 3)CRIE UM ALGORITMO NÃO COMPUTACIONAL, QUE TROQUE UM PNEU DE CARRO.....59 4)O QUE É UMA LINGUAGEM DE PROGRAMAÇÃO?........................................................................59 5)LINEARIZE AS EXPRESSÕES ABAIXO:..............................................................................................59 19
  • 20. Algoritmos INTRODUÇÃO O objetivo principal da Lógica de Programação é demonstrar técnicas para resolução de problemas e consequentemente automatização de tarefas. O aprendizado da Lógica é essencial para formação de um bom programador, servindo como base para o aprendizado de todas as linguagens de programação, estruturadas ou não. 20
  • 21. Algoritmos ALGORITMO Um Algoritmo é uma seqüência de instruções ordenadas de forma lógica para a resolução de uma determinada tarefa ou problema. Conceitos Procedimento - é uma receita ou roteiro para executar alguma tarefa. Constitui-se de etapas, passos, comandos ou instruções que são executadas seqüencialmente. Algoritmo - é um procedimento que é executado em um tempo finito. É um conjunto finito de regras, bem definidas, para a solução de um problema em um tempo finito. Características dos algoritmos - Execução de algoritmos De cima para baixo, seqüencialmente, a menos que esta ordem seja explicitamente alterada. - Entradas Aos valores recebidos por um algoritmo dá-se o nome de entradas. No exemplo 1, o passo 1 constitui uma entrada. - Saídas Todo algoritmo possui pelo menos um resultado. Os resultados fornecidos por um algoritmo recebem o nome de saídas. - Definição dos passos E importante que num algoritmo cada passo esteja precisamente definido não deixando nenhuma margem a ambigüidades. - Efetividade Todas as operações especificadas no algoritmo devem ser suficientemente básicas para que possam ser, pelo menos em princípio, executadas de maneira exata e num tempo finito. Formas de representação de algoritmos 21
  • 22. Algoritmos Os algoritmos podem ser escritos em linguagem comum, em linguagem gráfica (fluxogramas ou diagramas de blocos) ou ainda em linguagem de programação como BASIC, FORTRAN, COBOL, etc.. CLASSIFICAÇÃO E APRESENTAÇÃO DE ALGORITMOS NUMÉRICOS Os algoritmos podem ser classificados em: - não numéricos - numéricos Ou ainda podem ser classificados em: - puramente seqüenciais - com seleção - com repetição Algoritmos puramente seqüenciais Todo o algoritmo puramente seqüencial tem exatamente a seguinte estrutura: - Ler valores - Efetuar cálculos - Escrever resultados - Parar 22
  • 23. Algoritmos ler A, B, C MEDIA = A + B + C / 3 escrever MEDIA parar Algoritmos com seleção e/ou decisão ESTRUTURAS DE DECISÃO Executa uma seqüência de comandos de acordo com o resultado de um teste. A estrutura de decisão pode ser Simples ou Composta, baseada em um resultado lógico. Simples: SE <<CONDIÇÃO>> ENTÃO <<COMANDO1>> Composta 1: SE <<CONDIÇÃO>> ENTÃO <<COMANDO1>> SENÃO <<COMANDO1>> Composta 2: SE <<CONDIÇÃO>> ENTÃO INICIO <<COMANDO1>>; <<COMANDON>> FIM; SENÃO INICIO <<COMANDO1>>; <<COMANDON>> FIM; PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> FAÇA ÍNICIO <<COMANDO1>>; <<COMANDON>> FIM; 23
  • 24. Algoritmos ALGORITMO NÃO COMPUTACIONAL Abaixo é apresentado um Algoritmo não computacional cujo objetivo é usar um telefone público. Início 1. Tirar o fone do gancho; 2. Ouvir o sinal de linha; 3. Introduzir o cartão; 4. Teclar o número desejado; 5. Se der o sinal de chamar 5.1 Conversar; 5.2 Desligar; 5.3 Retirar o cartão; 6. Senão 6.1 Repetir; Fim. PROGRAMA Um programa é um Algoritmo escrito em uma linguagem computacional. 24 SEQUÊNCIAL DESVIO
  • 25. Algoritmos LINGUAGENS DE PROGRAMAÇÃO São Softwares que permitem o desenvolvimento de programas. Possuem um poder de criação ilimitado, desde jogos, editores de texto, sistemas empresariais até sistemas operacionais. Existem várias linguagens de programação, cada uma com suas características próprias. Exemplos: · Pascal · Clipper · C · Visual Basic · Delphi e etc. 25
  • 26. Algoritmos TÉCNICAS ATUAIS DE PROGRAMAÇÃO · Programação Seqüencial · Programação Estruturada · Programação Orientada a Eventos e Objetos ALGORITMOS EM “PORTUGOL” Durante nosso curso iremos aprender a desenvolver nossos Algoritmos em uma pseudo-linguagem conhecida como “Portugol” ou Português Estruturado. “Portugol” é derivado da aglutinação de Português + Algol. Algol é o nome de uma linguagem de programação estruturada usada no final da década de 50. OPERADORES ARITMÉTICOS +  Adição -  Subtração *  Multiplicação /  Divisão 26
  • 27. Algoritmos OPERADORES RELACIONAIS >  Maior que <  Menor que >=  Maior ou Igual <=  Menor ou Igual =  Igual <>  Diferente LINEARIZAÇÃO DE EXPRESSÕES Para a construção de Algoritmos todas as expressões aritméticas devem ser linearizadas, ou seja, colocadas em linhas. É importante também ressalvar o uso dos operadores correspondentes da aritmética tradicional para a computacional. Exemplo: 27 é + 5 -3 ù 1 3 ( ) = + úû êë 2 (2/3+(5-3))+1= Tradicional Computacional
  • 28. Algoritmos MODULARIZAÇÃO DE EXPRESSÕES A modularização é a divisão da expressão em partes, proporcionando maior compreensão e definindo prioridades para resolução da mesma. Como pode ser observado no exemplo anterior, em expressões computacionais usamos somente parênteses “( )” para modularização. Na informática podemos ter parênteses dentro de parênteses. Exemplos de prioridades: (2+2)/2=2 2+2/2=3 OPERADORES ESPECIAIS (MOD e DIV) MOD  Retorna o resto da divisão entre 2 números inteiros. DIV  Retorna o valor inteiro que resulta da divisão entre 2 números inteiros. 28
  • 29. Algoritmos Exemplo: FUNÇÕES Uma função é um instrumento (Sub–algoritmo) que tem como objetivo retornar um valor ou uma informação. A chamada de uma função é feita através da citação do seu nome seguido opcionalmente de seu argumento inicial entre parênteses. As funções podem ser predefinidas pela linguagem ou criadas pelo programador de acordo com o seu interesse. Exemplos: 29 13 2 1 6 MOD DIV 13 DIV 2 = 6 13 MOD 2 = 1 Valor Inicial X Processamento X=9 x
  • 30. Algoritmos BIBLIOTECAS DE FUNÇÕES Armazenam um conjunto de funções que podem ser usadas pelos programas. FUNÇÕES PRÉ-DEFINIDAS ABS( ) VALOR ABSOLUTO SQRT( ) RAIZ QUADRADA SQR( ) ELEVA AO QUADRADO TRUNC( ) VALOR TRUNCADO ROUND( ) VALOR ARREDONDADO LOG( ) LOGARITMO SIN( ) SENO COS( ) COSENO TAN( ) TANGENTE 30 Valor Final Y Y=3
  • 31. Algoritmos As funções acima são as mais comuns e importantes para nosso desenvolvimento lógico, entretanto, cada linguagem possui suas funções própias. As funções podem ser aritméticas, temporais, de texto e etc. OPERADORES LÓGICOS Atuam sobre expressões retornando sempre valores lógicos como Falso ou Verdadeiro. E RETORNA VERDADEIRO SE AMBAS AS PARTES FOREM VERDADEIRAS. OU BASTA QUE UMA PARTE SEJA VERDADEIRA PARA RETORNAR VERDADEIRO. NÃO INVERTE O ESTADO, DE VERDADEIRO PASSA PARA FALSO E VICE-VERSA. TABELA VERDADE A B A E B A OU B NÃO (A) V V V V F V F F V F F V F V V F F F F V 31
  • 32. Algoritmos EXPRESSÕES LÓGICAS As expressões compostas de relações sempre retornam um valor lógico. Exemplos: 32
  • 33. Algoritmos 2+5>4  Verdadeiro 3<>3  Falso 33
  • 34. Algoritmos De acordo com a necessidade, as expressões podem ser unidas pelos operadores lógicos. Exemplos: 2+5>4 E 3<>3  Falso E 2+5>4 OU 3<>3  Verdadeiro NÃO(3<>3) Verdadeiro VARIÁVEIS Variáveis são endereços de memória destinados a armazenar informações temporariamente. * Todo Algoritmo ou programa deve possuir variável! 34 V F F V V V NÃO
  • 35. Algoritmos VARIÁVEIS DE ENTRADA E SAÍDA Variáveis de Entrada armazenam informações fornecidas por um meio externo, normalmente usuários ou discos. Variáveis de Saída armazenam dados processados como resultados. Exemplo: De acordo com a figura acima A e B são Variáveis de Entrada e C é uma Variável de Saída. Variável Contador Uma contagem em um algoritmo é feita por uma variável chamada Contador. Uma variável contador é uma variável que recebe um valor inicial (geralmente zero) e é incrementada em algum outro passo do algoritmo, de um valor constante. Exemplo: 1. CONT = 0 2. -------- 3. -------- 4. CONT = CONT + 1 No passo 1 inicializou-se a variável CONT. No passo 4, a variável CONT recebeu um incremento (1, no caso) de forma que ela passa a armazenar a soma do valor anterior (0) com o incremento (1). Assim, toda a vez que este passo (4) for executado, a variável CONT armazenará um valor igual a soma do valor anterior com o incremento. Utilizando a variável contador o algoritmo para calcular a média de cada um dos 30 alunos toma a seguinte forma: Este é um exemplo de algoritmo com repetição porque tem alguns de seus passos com execução repetida (passos 2 até 6). Variável Acumulador 35 A B C=A+B 2 5 7
  • 36. Algoritmos Suponha-se o seguinte problema: Calcular a média geral de uma prova de vestibular a qual compareceram 2640 alunos. Neste caso aparece a necessidade de se acumular (somar) as notas dos 2640 alunos, para depois dividir esta soma pelo número de alunos que compareceram a prova. Uma variável acumulador é uma variável que recebe um valor inicial (geralmente 0) e é incrementada em algum outro passo do algoritmo, de um valor variável. Exemplo: 1. ACUM = 0 2. -------- 3. -------- 4. ACUM = ACUM + VAR No passo 1 inicializou-se a variável ACUM. No passo 4, somou-se ao valor que estava na variável ACUM o valor que estava na variável VAR, e o resultado guardou-se (arnazenou-se) na variável ACUM, que assim passa a ter um novo valor. Utilizando-se a váriável acumulador, o algoritmo para cálculo da média da prova de vestibular toma a seguinte forma: 36
  • 37. Algoritmos CONSTANTES Constantes são endereços de memória destinados a armazenar informações fixas, inalteráveis durante a execução do programa. Exemplo: PI = 3.1416 IDENTIFICADORES São os nomes dados a variáveis, constantes e programas. Regras Para construção de Identificadores: · Não podem ter nomes de palavras reservadas (comandos da linguagem); · Devem possuir como 1º caractere uma letra ou Underscore ( _ ); · Ter como demais caracteres letras, números ou Underscore; · Ter no máximo 127 caracteres; · Não possuir espaços em branco; · A escolha de letras maiúsculas ou minúsculas é indiferente. 37
  • 38. Algoritmos Exemplos: NOME TELEFONE IDADE_FILHO NOTA1 SALARIO PI UMNOMEMUITOCOMPRIDOEDIFICILDELER UM_NOME_MUITO_COMPRIDO_E_FACIL_DE_LER 38
  • 39. Algoritmos TIPOS DE DADOS Todas as Variáveis devem assumir um determinado tipo de informação. O tipo de dado pode ser: · Primitivo  Pré-definido pela linguagem; · Sub-Faixa  É uma parte de um tipo já existente; · Escalar  Definidos pelo programador. Exemplos: A : INTEIRO TIPO NOTA=[1..10] DE INTEIRO TIPO SEMANA = (Segunda-feira, Terça-feira, Quarta-feira, Quinta-feira, Sexta-feira, Sábado, Domingo) TIPOS PRIMITIVOS DE DADOS 39 PRIMITIVO SUB - FAIXA ESCALAR
  • 40. Algoritmos INTEIRO ADMITE SOMENTE NÚMEROS INTEIROS. GERALMENTE É UTILIZADO PARA REPRESENTAR UMA CONTAGEM (QUANTIDADE). REAL ADMITE NÚMEROS REAIS (COM OU SEM CASAS DECIMAIS). GERALMENTE É UTILIZADO PARA REPRESENTAR UMA MEDIÇÃO. CARACTERE ADMITE CARACTERES ALFANUMÉRICOS. OS NÚMEROS QUANDO DECLARADOS COMO CARACTERES TORNAM SE REPRESENTATIVOS E PERDEM A ATRIBUIÇÃO DE VALOR. LÓGICO ADMITE SOMENTE VALORES LÓGICOS(VERDADEIRO/FALSO). COMANDOS DE I/O (INPUT/OUTPUT) LER  Comando de entrada que permite a leitura de Variáveis de Entrada. ESCREVER  Comando de saída que exibe uma informação na tela do monitor. IMPRIMIR  Comando de saída que envia uma informação para a impressora. 40
  • 41. Algoritmos SINAL DE ATRIBUIÇÃO Uma Variável nunca é eternamente igual a um valor, seu conteúdo pode ser alterado a qualquer momento. Portanto para atribuir valores a variáveis devemos usar o sinal de “:=”. Exemplos: A := 2; B := 3; C := A + B; SINAL DE IGUALDADE As constantes são eternamente iguais a determinados valores, portanto usamos o sinal de “=”. Exemplos: PI = 3.1416; Empresa = ‘Colégio de Informática L.T.D.A.’ V = Verdadeiro 41
  • 42. Algoritmos CORPO GERAL DE UM PROGRAMA PROGRAMA <<identificador>>; CONST <<identificador>> = <<dado>> VAR <<identificador>> : <<tipo>>; ÍNICIO { COMANDOS DE ENTRADA,PROCESSAMENTO E SAÍDA <<comando1>>; <<comandoN>> } FIM. ESTRUTURAS SEQÜÊNCIAIS Como pode ser analisado no tópico anterior, todo programa possui uma estrutura seqüencial determinada por um ÍNICIO e FIM. 42
  • 43. Algoritmos ; PONTO E VÍRGULA ; O sinal de ponto e vírgula “;” indica a existência de um próximo comando (passa para o próximo). Na estrutura ÍNICIO e no comando que antecede a estrutura FIM não se usa “;”. 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 média 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. 43
  • 44. Algoritmos SEGUNDO ALGORITMO Segue um Algoritmo que lê o raio de uma circunferência 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) {SAÍDA} FIM. {LINHAS DE COMENTÁRIO} Podemos inserir em um Algoritmo comentários para aumentar a compreensão do mesmo, para isso basta que o texto fique entre Chaves “{}”. Exemplo: LER (RAIO); {ENTRADA} 44
  • 45. Algoritmos ‘ ASPAS SIMPLES ’ Quando queremos exibir uma mensagem para a tela ou impressora ela deve estar contida entre aspas simples, caso contrário, o computador irá identificar a mensagem como Variável Indefinida. Exemplo: ESCREVER (‘AREA OBTIDA =’, AREA) {COMANDO DE SAÍDA} AREA OBTIDA = X.XX {RESULTADO GERADO NA TELA} ESTRUTURAS DE DECISÃO Executa uma seqüência de comandos de acordo com o resultado de um teste. A estrutura de decisão pode ser Simples ou Composta, baseada em um resultado lógico. 45
  • 46. Algoritmos Simples: SE <<CONDIÇÃO>> ENTÃO <<COMANDO1>> Composta 1: SE <<CONDIÇÃO>> ENTÃO <<COMANDO1>> SENÃO <<COMANDO1>> 46
  • 47. Algoritmos Composta 2: SE <<CONDIÇÃO>> ENTÃO INICIO <<COMANDO1>>; <<COMANDON>> FIM; SENÃO INICIO <<COMANDO1>>; <<COMANDON>> FIM; ALGORITMO TRÊS Segue um Algoritmo que lê 2 números e escreve o maior. PROGRAMA ACHA_MAIOR; VAR A, B : INTEIRO; INICIO LER (A, B); SE A>B ENTÃO ESCREVER (A) SENÃO ESCREVER (B) 47
  • 48. Algoritmos FIM. ALGORITMO QUATRO Segue um Algoritmo que lê o nome e as 4 notas bimestrais de um aluno. Em seguida o Algoritmo calcula e escreve a média obtida pelo aluno escrevendo também se o aluno foi aprovado ou reprovado. Média para aprovação = 6 PROGRAMA MEDIA_FINAL; VAR NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: REAL; NOME : CARACTERE [35] INICIO LER (NOME); LER (NOTA1, NOTA2, NOTA3, NOTA4); MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4; SE MEDIA>=6 ENTÃO ESCREVER (‘APROVADO’) SENÃO ESCREVER (‘REPROVADO’) ESCREVER (NOME, MEDIA) FIM. 48
  • 49. Algoritmos NINHOS DE SE Usados para tomadas de decisões para mais de 2 opções. Forma Geral: SE <<CONDIÇÃO>> ENTÃO <<COMANDO1>> SENÃO SE <<CONDIÇÃO>> ENTÃO <<COMANDO1>> SENÃO <<COMANDO1>> ALGORITMO CINCO Segue um Algoritmo que lê 3 números e escreve o maior. PROGRAMA ACHA_MAIOR; VAR A, B, C : INTEIRO; INICIO LER (A, B, C); SE (A>B) E (A>C) ENTÃO ESCREVER (A) SENÃO SE (B>A) E (B>C) 49
  • 50. Algoritmos ENTÃO ESCREVER (B) SENÃO ESCREVER (C) FIM. ESTRUTURAS DE CONDIÇÃO A estrutura de condição eqüivale a um ninho de SE’S. Forma Geral: FACA CASO CASO <<CONDIÇÃO1>> <<COMANDO1>>; CASO <<CONDIÇÃON>> <<COMANDO1>>; OUTROS CASOS <<COMANDO1>>; FIM DE CASO ALGORITMO SEIS Segue um Algoritmo que lê 3 números e escreve o maior. PROGRAMA ACHA_MAIOR; 50
  • 51. Algoritmos 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 REPETIÇÃO DETERMINADA Quando uma seqüência de comandos deve ser executada repetidas vezes, tem-se uma estrutura de repetição. A estrutura de repetição, assim como a de decisão, envolve sempre a avaliação de uma condição. Na repetição determinada o algoritmo apresenta previamente a quantidade de repetições. Forma Geral 1: 51
  • 52. Algoritmos PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> FAÇA <<COMANDO1>>; Forma Geral 2: PARA <<VARIAVEL DE TIPO INTEIRO>>:=<<VALOR INICIAL>> ATE <<VALOR FINAL>> FAÇA ÍNICIO <<COMANDO1>>; <<COMANDON>> FIM; A repetição por padrão 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. ALGORITMO SETE Segue um algoritmo que escreve 10 vezes a frase “VASCO DA GAMA” 52
  • 53. Algoritmos PROGRAMA REPETICAO; VAR I:INTEIRO INICIO PARA I :=1 ATE 10 FACA VARIÁVEL IMPLEMENTADA DE 1 EM 1 ESCREVER (‘VASCO DA GAMA’) FIM. ALGORITMO OITO Segue um algoritmo que escreve os 100 primeiros números pares. PROGRAMA PARES; VAR I,PAR: INTEGER; INICIO PAR:=0; PARA I:=1 ATE 100 FACA INICIO ESCREVER (PAR); PAR := PAR+2 FIM FIM. 53
  • 54. Algoritmos ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO INICIAL É usada para repetir N vezes uma ou mais instruções. Tendo como vantagem o fato de não ser necessário o conhecimento prévio do número de repetições. Forma Geral 1: ENQUANTO <<CONDIÇÃO>> FACA <<COMANDO1>>; Forma Geral 2: ENQUANTO <<CONDIÇÃO>> FACA ÍNICIO <<COMANDO1>>; <<COMANDON>> FIM; ALGORITMO NOVE Segue um algoritmo que calcule a soma dos salários dos funcionários de uma empresa. O programa termina quando o usuário digitar um salário menor que 0. PROGRAMA SOMA_SALARIOS; 54 VALIDAÇÃO INICIAL
  • 55. Algoritmos VAR SOMA, SALARIO : REAL; INICIO SOMA:=O; SALARIO:=1; ENQUANTO SALARIO>=0 INICIO LER (SALARIO); SOMA:=SOMA+SALARIO FIM; ESCREVER (SOMA) FIM. ESTRUTURA DE REPETIÇÃO INDETERMINADA COM VALIDAÇÃO FINAL Assim como a estrutura ENQUANTO É usada para repetir N vezes uma ou mais instruções. Sua validação é final fazendo com que a repetição seja executada pelo menos uma vez. 55 TODAS AS VARIÁVEIS QUE ACUMULAM VALORES DEVEM RECEBER UM VALOR INICIAL.
  • 56. Algoritmos Forma Geral; REPITA <<COMANDO1>>; <<COMANDON>> ATE <<CONDIÇÃO>> ALGORITMO DEZ Segue um algoritmo que calcule a soma dos salários dos funcionários de uma empresa. O programa termina quando o usuário digitar um salário menor que 0. PROGRAMA SOMA_SALARIOS; VAR SOMA, SALARIO : REAL; INICIO SOMA:=O; REPITA LER (SALARIO); SOMA:=SOMA+SALARIO ATE SALARIO<0; 56
  • 57. Algoritmos ESCREVER (SOMA) FIM. ALGORITMO ONZE Segue um algoritmo que escreve os 100 primeiros números pares. PROGRAMA PARES_2; VAR I, PAR, CONTADOR : INTEIRO; INICIO CONTADOR := 0; PAR := 0; REPITA ESCREVER (PAR); PAR := PAR+2; CONTADOR := CONTADOR+1; ATE CONTADOR=100 FIM. 57