Escolar Documentos
Profissional Documentos
Cultura Documentos
W W W. D O M I N A N D OT I .CO M . B R W W W. D O M I N A N D OT I .CO M . B R
Agenda
Tipos de linguagens:
Lógicas
Funcional
Procedurais (Estruturadas)
Orientadas a Objetos
Tipos de programação:
Linear
Estruturada
Orientada a Objetos
Professor Marcelo Pacote - @professorpacote 3 W W W. D O M I N A N D OT I .CO M . B R
Linguagens de Programação
Modularização
Independência Funcional
Uso de procedimentos ou funções
Elementares (primitivos):
Inteiro
Real (Ponto Flutuante)
Literal (Caractere)
Lógico (Booleano)
Derivados (construídos):
String
Registro (tipo de dados do usuário)
-8 - 1000
-5 - 1011
-3 - 1101
-1 - 1111
0 000 0000
1 001 0001
2 010 0010
3 011 0011
4 100 0100
5 101 0101
6 110 0110
7 111 0111
Caractere: representação
mais comum é a tabela
ASCII (outro exemplo
utilizado é o Unicode)
Modularização (subrotina)
Recebe argumentos de entrada
Não possui argumentos de saída
Não pode ser usado em uma expressão no lugar de uma
variável
Modularização
Recebe argumentos de entrada
Retorna argumento de saída (valor)
Pode ser usado em uma expressão no lugar de uma variável
Ex.: Fibonacci
int fibonacci(int x) {
if (x == 0) return 0; // teste de saída
if (x == 1) return 1; // teste de saída
return (fibonacci(x-1) + fibonacci(x-2)); // passo recursivo
}
...
fibonacci(10);
...
// 1ª chamada (externa): x -> 10
// 2ª chamada (x-1): x -> 9
// 3ª chamada (x-1-1): x -> 8
...
// Yª chamada (x-1-1-...): x -> 1: retorna 1
Vantagens:
Código mais compactos, mais legíveis e mais fáceis de
serem compreendidos.
Desvantagens:
Mais lento que algoritmos iterativos
Utiliza mais memória
Não pode ser utilizado com alocação estática (valores de
cada chamada são perdidos)
Parâmetros:
Real: aquele que é passado como argumento numa função ou
procedimento. Ex: int x = 3; int quadrado = pow(x,2)
Formal: o que é utilizado dentro da função ou procedimento. Pode
ser o valor ou o endereço do parâmetro real dependendo do tipo de
passagem
Exemplo:
int soma(int x, int y);
...
int a = 1; int b = 2;
soma(a,b); // Quais são os parâmetros formais e reais
W W W. D O M I N A N D OT I .CO M . B R W W W. D O M I N A N D OT I .CO M . B R
Exercício [01] (ATRFB/2012/ESAF)
Considere o
trecho de
código que
corresponde ao
método
principal de
uma classe em
linguagem Java.
[01] b
[02] e
[03] a
[04] c
[05] e
[06] d
[07] d