conceitos básicos de modularizaçãoprofessor.ufabc.edu.br/~jesus.mena/courses/pi-2q-2018/pi... ·...
TRANSCRIPT
1
Conceitos básicos de modularização
Prof. Jesús P. Mena-ChalcoCMCC/UFABC
Q2/2018
Processamento da Informação
2
Precedência entre operadores
3
Ordem nas operações
1+2-3*4/2
(1+2)-3*(4/2)
2*3+12/3
4
Ordem nas operações
1+2-3*4/2 = -3
(1+2)-3*(4/2) = -3
2*3+12/3 = 10
5
Ordem nas operações
2+3*(4-5)
(2+3)*4-5
6
Ordem nas operações
2+3*(4-5) = -1
(2+3)*4-5 = 15
7
Ordem nas operações
Em português: a vírgula é muito importante
VAMOS PERDER, NADA FOI RESOLVIDO.
VAMOS PERDER NADA, FOI RESOLVIDO.
8
Ordem nas operações
Na matemática, os parênteses destacam a prioridade de cálculo: as contas dentro de parênteses são resolvidas primeiro.
(2+3)*4-5 = 15
9
Ordem entre operadores
x = 2*(3+12)/5-5
x = 1
Maior prioridade
Menor prioridade
e-d
10
Exercício
Escreva a seguinte equação usando operadores binários:
11
Exercício
Escreva a seguinte equação usando operadores binarios:
12
Exercício
???
Escreva a seguinte equação usando operadores binarios:
13
Exercício
???
Escreva a seguinte equação usando operadores binarios:
Divisão inteira
Exemplo de módulos (componentes) para Arduino:- Entrada.- Saída.
Motivação
15
Módulos / Funções / Métodos
16
Módulos / Funções / Métodos
À medida que os problemas vão se tornando mais complexos, os programas (solução) tendem a ficar mais extensos.
Modularizar permite “quebrar” o problema em subproblemas.
17
Exemplo de função / método
18
Exemplo de função / método
19
Exemplo de função / método
20
Exemplo de função / método
21
Exemplo de função / método
A linha que define a função/método é conhecida como
assinatura
22
Exemplo de função / método
caixa_pretax x³
Tipo de dado inteiro
Tipo de dado inteiro
23
Exemplo de função / método
24
Exemplo de função / método
caixa_preta3
5
25
Exemplo de função / método
caixa_preta
26
Leitura de 3 números (sem função)
27
Leitura de 3 números (com função)
28
29
Leitura de 3 números (com função)
30
Funções matemáticas especiais em Java
31
Volume de um cilindro
Crie uma função, em Java, que calcule o volume de um cilindro com raio r e altura h.
Assinatura:
32
Volume de um cilindro
33
Volume de um cilindro
34
Área de um cilindro
36
Fibonacci
37
Números de Fibonacci
Os números de Fibonacci foram propostos por Leonardo di Pisa (Fibonacci), em 1202, como uma solução para o problema de determinaro tamanho da população de coelhos.
(*) fonte http://www.oxfordmathcenter.com/drupal7/node/487
38
Números de Fibonacci
39
Números de Fibonacci
https://www.youtube.com/watch?v=SjSHVDfXHQ4
40
Números de Fibonacci
(*) fonte http://britton.disted.camosun.bc.ca/fibslide/jbfibslide.htm
41
Números de Fibonacci
Os números de Fibonacci estão relacionados com a razão aurea .O i-ésimo número pode ser aproximado pela seguinte equação (formula explícita):
Crie uma função/método em Java que receba um número inteiro i, e devolva Fi.
Assinatura:
42
Números de Fibonacci
43
Números de Fibonacci
44
Números de Fibonacci
Golden ratio
47
Processo de compilação
Sistema Operacional
Processos
48
Atividade em aula
49
Questão 1
Os dois programas fazem a mesma operação? Sim/Não. Justifique
50
Questão 2
Qual é o valor de cada uma das seguintes variáveis?
51
Questão 2
Qual é o valor de cada uma das seguintes variáveis?
Erro (* é um operador binário)
17
11.5
52
Questão 3
Escreva o resultado da execução do seguinte programa:
53
Questão 4
Escreva o resultado da execução do seguinte programa:
54
Questão 4
Escreva o resultado da execução do seguinte programa:
55
Lista 1
56
URI-Online (Deadline: 27/06/2016)
Tidia: Veja o convite para participar do grupo URI.
Use seu nome completo no registro de nomes no URI
57
Problema 1001
58
Problema 1001