SlideShare une entreprise Scribd logo
1  sur  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
( ) =+





−+ 135
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
61
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
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
E
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
752
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
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
VARIÁVEL IMPLEMENTADA DE 1 EM 1
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
Algoritmos
Programas Equivalentes
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
Algoritmospascal (1)
Algoritmospascal (1)

Contenu connexe

Tendances

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 QUEDMA SILVA
 
Enciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-Store
Enciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-StoreEnciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-Store
Enciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-StoreIOB News
 
Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...
Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...
Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...IOB News
 
Código do Trabalho
Código do TrabalhoCódigo do Trabalho
Código do Trabalhoabarros
 
PPP EC10 / TAG 2017
PPP EC10 / TAG 2017PPP EC10 / TAG 2017
PPP EC10 / TAG 2017QUEDMA SILVA
 
Enciclopédia de Lançamentos Contábeis - 5ª edição
Enciclopédia de Lançamentos Contábeis - 5ª ediçãoEnciclopédia de Lançamentos Contábeis - 5ª edição
Enciclopédia de Lançamentos Contábeis - 5ª ediçãoIOB News
 
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 QUEDMA SILVA
 
Guia Prático do Contabilista 2ª ed. | IOB e-Store
Guia Prático do Contabilista 2ª ed. | IOB e-StoreGuia Prático do Contabilista 2ª ed. | IOB e-Store
Guia Prático do Contabilista 2ª ed. | IOB e-StoreIOB News
 
Livro de exercicios_9ed
Livro de exercicios_9edLivro de exercicios_9ed
Livro de exercicios_9edElaine Costa
 
Guia de lançamentos contabeis
Guia de lançamentos contabeisGuia de lançamentos contabeis
Guia de lançamentos contabeissimuladocontabil
 
Apostila bancodobrasil-2015-conhecimentosbancarios-edgarabreu
Apostila bancodobrasil-2015-conhecimentosbancarios-edgarabreuApostila bancodobrasil-2015-conhecimentosbancarios-edgarabreu
Apostila bancodobrasil-2015-conhecimentosbancarios-edgarabreuKacio Albuquerque De Moura
 
Apostila tre.rs2014 informatica_sergio_spolador
Apostila tre.rs2014 informatica_sergio_spoladorApostila tre.rs2014 informatica_sergio_spolador
Apostila tre.rs2014 informatica_sergio_spoladorFernando Macedo
 
Relatorio final simulacao empresarial universidade eduardo mondlane
Relatorio final simulacao empresarial universidade eduardo mondlaneRelatorio final simulacao empresarial universidade eduardo mondlane
Relatorio final simulacao empresarial universidade eduardo mondlaneIsmael Miambo
 
Determinantes da decisão de financiamento empresarial
Determinantes da decisão de financiamento empresarialDeterminantes da decisão de financiamento empresarial
Determinantes da decisão de financiamento empresarialUniversidade Pedagogica
 

Tendances (19)

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
 
Enciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-Store
Enciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-StoreEnciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-Store
Enciclopédia IOB de Lançamentos Contábeis - 2ª Ed. - IOB e-Store
 
Apostila direito comercial
Apostila direito comercialApostila direito comercial
Apostila direito comercial
 
PPP EC10 2014
PPP EC10 2014PPP EC10 2014
PPP EC10 2014
 
Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...
Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...
Modelos De Contabilidade - Resumo das Regras Contábeis Internacionais - IOB e...
 
Código do Trabalho
Código do TrabalhoCódigo do Trabalho
Código do Trabalho
 
PPP EC10 / TAG 2017
PPP EC10 / TAG 2017PPP EC10 / TAG 2017
PPP EC10 / TAG 2017
 
2011 demonstracoes contabeis[1]
2011 demonstracoes contabeis[1]2011 demonstracoes contabeis[1]
2011 demonstracoes contabeis[1]
 
Enciclopédia de Lançamentos Contábeis - 5ª edição
Enciclopédia de Lançamentos Contábeis - 5ª ediçãoEnciclopédia de Lançamentos Contábeis - 5ª edição
Enciclopédia de Lançamentos Contábeis - 5ª edição
 
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
 
Guia Prático do Contabilista 2ª ed. | IOB e-Store
Guia Prático do Contabilista 2ª ed. | IOB e-StoreGuia Prático do Contabilista 2ª ed. | IOB e-Store
Guia Prático do Contabilista 2ª ed. | IOB e-Store
 
Livro de exercicios_9ed
Livro de exercicios_9edLivro de exercicios_9ed
Livro de exercicios_9ed
 
Guia de lançamentos contabeis
Guia de lançamentos contabeisGuia de lançamentos contabeis
Guia de lançamentos contabeis
 
Apostila bancodobrasil-2015-conhecimentosbancarios-edgarabreu
Apostila bancodobrasil-2015-conhecimentosbancarios-edgarabreuApostila bancodobrasil-2015-conhecimentosbancarios-edgarabreu
Apostila bancodobrasil-2015-conhecimentosbancarios-edgarabreu
 
Apostila dacon
Apostila daconApostila dacon
Apostila dacon
 
Saber Sobre o Saber Treinar - Índice 2013
Saber Sobre o Saber Treinar - Índice 2013Saber Sobre o Saber Treinar - Índice 2013
Saber Sobre o Saber Treinar - Índice 2013
 
Apostila tre.rs2014 informatica_sergio_spolador
Apostila tre.rs2014 informatica_sergio_spoladorApostila tre.rs2014 informatica_sergio_spolador
Apostila tre.rs2014 informatica_sergio_spolador
 
Relatorio final simulacao empresarial universidade eduardo mondlane
Relatorio final simulacao empresarial universidade eduardo mondlaneRelatorio final simulacao empresarial universidade eduardo mondlane
Relatorio final simulacao empresarial universidade eduardo mondlane
 
Determinantes da decisão de financiamento empresarial
Determinantes da decisão de financiamento empresarialDeterminantes da decisão de financiamento empresarial
Determinantes da decisão de financiamento empresarial
 

Similaire à Algoritmospascal (1)

1.Cenarios Distribuicao1
1.Cenarios Distribuicao11.Cenarios Distribuicao1
1.Cenarios Distribuicao1Fabiano Vargas
 
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...IOB News
 
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...IOB News
 
Caldeiras - Estudante Do Curso Inspetor De Equipamentos
Caldeiras  - Estudante Do Curso Inspetor De EquipamentosCaldeiras  - Estudante Do Curso Inspetor De Equipamentos
Caldeiras - Estudante Do Curso Inspetor De EquipamentosMário Sérgio Mello
 
Apostila Php
Apostila PhpApostila Php
Apostila Phpjkolive
 
Caderno de direito constitucional ii
Caderno de direito constitucional iiCaderno de direito constitucional ii
Caderno de direito constitucional iiEsdrasArthurPessoa
 
Apostila zw cad 2009
Apostila zw cad 2009Apostila zw cad 2009
Apostila zw cad 2009cesinhacolaco
 
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-StoreIOB News
 
FCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-Store
FCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-StoreFCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-Store
FCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-StoreIOB News
 
Agoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascalAgoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascaljucasalao
 
3867 criando macros vba excel
3867 criando macros vba excel3867 criando macros vba excel
3867 criando macros vba excelnicomedesdamiao
 
Criando macros vba excel 2003
Criando macros vba excel 2003Criando macros vba excel 2003
Criando macros vba excel 2003Wanderson Mariano
 
Regimento - UENP
Regimento - UENPRegimento - UENP
Regimento - UENPdaomuenp
 

Similaire à Algoritmospascal (1) (20)

Algoritmospascal
AlgoritmospascalAlgoritmospascal
Algoritmospascal
 
Sumário
SumárioSumário
Sumário
 
1.Cenarios Distribuicao1
1.Cenarios Distribuicao11.Cenarios Distribuicao1
1.Cenarios Distribuicao1
 
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 3ª Edição - ...
 
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...
Manual Prático de Obrigações Acessórias junto ao Fisco Federal – 4ª Edição - ...
 
Caldeiras - Estudante Do Curso Inspetor De Equipamentos
Caldeiras  - Estudante Do Curso Inspetor De EquipamentosCaldeiras  - Estudante Do Curso Inspetor De Equipamentos
Caldeiras - Estudante Do Curso Inspetor De Equipamentos
 
Apostila Php
Apostila PhpApostila Php
Apostila Php
 
Caderno de direito constitucional ii
Caderno de direito constitucional iiCaderno de direito constitucional ii
Caderno de direito constitucional ii
 
Php apostila - vol 01
Php   apostila - vol 01Php   apostila - vol 01
Php apostila - vol 01
 
O Código do trabalho
O Código do trabalhoO Código do trabalho
O Código do trabalho
 
Apostila zw cad 2009
Apostila zw cad 2009Apostila zw cad 2009
Apostila zw cad 2009
 
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
 
FCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-Store
FCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-StoreFCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-Store
FCONT 2013 (Controle Fiscal Contábil de Transição) - IOB e-Store
 
Agoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascalAgoritmo e l gica de programa--o - apostila pascal
Agoritmo e l gica de programa--o - apostila pascal
 
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
 
Regimento - UENP
Regimento - UENPRegimento - UENP
Regimento - UENP
 
Apostila Itil
Apostila ItilApostila Itil
Apostila Itil
 
Apostila itil
Apostila itilApostila itil
Apostila itil
 
Apostila php
Apostila phpApostila php
Apostila php
 

Plus de Evonaldo Gonçalves Vanny

Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...
Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...
Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...Evonaldo Gonçalves Vanny
 
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...Evonaldo Gonçalves Vanny
 
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...Evonaldo Gonçalves Vanny
 
Cozinha brasil 250 receitas economicas e nutritivas
Cozinha brasil   250 receitas economicas e nutritivasCozinha brasil   250 receitas economicas e nutritivas
Cozinha brasil 250 receitas economicas e nutritivasEvonaldo Gonçalves Vanny
 

Plus de Evonaldo Gonçalves Vanny (20)

Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...
Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...
Diagnóstico sócio demográfico de angola numa perspectiva de integração entre ...
 
Depressão economica ou grande depressão
Depressão economica ou grande depressãoDepressão economica ou grande depressão
Depressão economica ou grande depressão
 
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
 
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
Dedicamos este trabalho aos nossos pais e não esquecendo naturalmente a parti...
 
Dados fiscais fnac nova fnac pro
Dados fiscais fnac nova fnac proDados fiscais fnac nova fnac pro
Dados fiscais fnac nova fnac pro
 
Dados do acanpamento
Dados do acanpamentoDados do acanpamento
Dados do acanpamento
 
Da fonética até à sintaxe1
Da fonética até à sintaxe1Da fonética até à sintaxe1
Da fonética até à sintaxe1
 
Curriculum vitae ramires
Curriculum vitae   ramiresCurriculum vitae   ramires
Curriculum vitae ramires
 
Curriculum jaime (01)
Curriculum jaime (01)Curriculum jaime (01)
Curriculum jaime (01)
 
Curriculo pronto-10
Curriculo pronto-10Curriculo pronto-10
Curriculo pronto-10
 
Curriculo pronto-9
Curriculo pronto-9Curriculo pronto-9
Curriculo pronto-9
 
Curriculo pronto-8
Curriculo pronto-8Curriculo pronto-8
Curriculo pronto-8
 
Curriculo pronto-7
Curriculo pronto-7Curriculo pronto-7
Curriculo pronto-7
 
Curriculo pronto-6
Curriculo pronto-6Curriculo pronto-6
Curriculo pronto-6
 
Curriculo pronto-4
Curriculo pronto-4Curriculo pronto-4
Curriculo pronto-4
 
Curriculo pronto-3
Curriculo pronto-3Curriculo pronto-3
Curriculo pronto-3
 
Curriculo pronto-2
Curriculo pronto-2Curriculo pronto-2
Curriculo pronto-2
 
Curriculo pronto-1
Curriculo pronto-1Curriculo pronto-1
Curriculo pronto-1
 
Cozinha brasil 250 receitas economicas e nutritivas
Cozinha brasil   250 receitas economicas e nutritivasCozinha brasil   250 receitas economicas e nutritivas
Cozinha brasil 250 receitas economicas e nutritivas
 
Corpo do trabalho kangwe
Corpo do trabalho kangweCorpo do trabalho kangwe
Corpo do trabalho kangwe
 

Algoritmospascal (1)

  • 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 ( ) =+      −+ 135 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 61 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 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 E 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 752
  • 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 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 VARIÁVEL IMPLEMENTADA DE 1 EM 1
  • 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
  • 58. Algoritmos Programas Equivalentes 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