Escolar Documentos
Profissional Documentos
Cultura Documentos
Processamento da Informação
Vetores
Unidimensionais
Parte II - Exercícios
quando um método não retorna variáveis, incluir Degustar este código em https://repl.it/languages/java
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Exercício 1
Bacharelado em Ciência e Tecnologia
Processamento da Informação
▪ SAÍDA DE DADOS?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
SOLUÇÃO 1
Bacharelado em Ciência e Tecnologia
Processamento da Informação
SOLUÇÃO COMPLETA
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Análise da Solução
▪ O programa completo possui cerca de 53 linhas
▪ Há diversos trechos no programa que são
“repetitivos”, ou seja, fazem a “mesma” coisa,
mudando-se apenas a “variável”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
ANÁLISE DA SOLUÇÃO
▪ Trechos repetitivos é um convite ao REUSO!
▪ Cada “parte” do programa tem uma FINALIDADE
ESPECÍFICA:
▪ Ler o vetor (subproblema 1)
▪ Somar os elementos do vetor (subproblema 2)
▪ Imprimir os elementos do vetor (subproblema 3)
▪ Exibir os elementos acima da media (subproblema 4)
▪ Reuso e Problemas com finalidade específica é um
convite a MODULARIZAÇÃO!!!
Bacharelado em Ciência e Tecnologia
Processamento da Informação
SOLUÇÃO
MODULARIZADA
Primeiro vamos ver a solução
modularizada, para entendermos suas
vantagens! Em seguida vamos aprender a
escrever os módulos (funções)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Modularizando
▪ Primeiro, vamos pegar cada trecho específico, um
a um, e transformá-lo numa função
MODULARIZANDO A ROTINA
“LEITURA VETOR”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
MODULARIZANDO A ROTINA
“SOMA VETOR”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
MODULARIZANDO A ROTINA
“IMPRIME VETOR”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
MODULARIZANDO A ROTINA
“IMPRIME ACIMA MEDIA”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
SOLUÇÃO COMPLETA
Bacharelado em Ciência e Tecnologia
Processamento da Informação
FUNÇÃO INÍCIO
Note como o
programa está mais
ENXUTO (código
mais limpo)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
AS FUNÇÕES
CRIADAS E QUE
FORAM CHAMADAS
(E REUSADAS)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Solução em Java
public class Main {
static java.util.Scanner entrada = new java.util.Scanner(System.in);
// Processamento
double soma1 = somaVetor(v1);
System.out.println("Soma v1: " + soma1);
double soma2 = somaVetor(v2);
System.out.println("Soma v2: " + soma2);
Solução em Java
// ...
static double somaVetor(double[] v) {
int TAMANHO = v.length;
double soma = 0;
for (int i = 0; i < TAMANHO; i++) {
soma = soma + v[i];
}
return soma;
}
static void maiorQueMediaVetor(double media, double[] v) {
int TAMANHO = v.length;
for (int i = 0; i < TAMANHO; i++) {
if (v[i] > media) {
System.out.print(" " + v[i]);
}
}
}
static double[] lerVetor(int n) {
// leitura dos n elementos do vetor
double[] v = new double[n];
System.out.print("Digite os "+v.length+" números inteiros: ");
for (int i = 0; i < v.length; i++) {
v[i] = entrada.nextInt();
}
return v;
}
static void imprimirVetor(double[] v) {
for (int i = 0; i < v.length; i++) {
System.out.print(" " + v[i]);
}
System.out.println();
}
}
Bacharelado em Ciência e Tecnologia
Processamento da Informação
VANTAGENS DA
MODULARIZAÇÃO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Modularização - Vantagens
Módulos - Sintaxe
3- Identificador (obrigatório)
PARÂMETROS
▪ São os valores ou variáveis enviadas ao
módulo, para que ele possa realizar o seu
processamento
▪ Podemos passar nenhum ou vários parâmetros
para o módulo
▪ Tudo depende da finalidade do módulo (e de
como ele foi construído)
(2) PARÂMETROS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
RETORNO
▪ O Retorno de um módulo é o valor (ou valores) que o
módulo retorna para o local em que ele foi chamado
(3) RETORNO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Parâmetros da função)
Parâmetros da função)
EXECUÇÃO E CHAMADA
DOS MÓDULOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Modularização - CHAMADA
Note as chamadas à função SOMA_VETOR: passando dois
parâmetros e atribuindo o valor do retorno para somaA e somaB
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Modularização - CHAMADA
Note as chamadas à função IMPRIME_VETOR: passando dois
parâmetros. Não há atribuição pois a função não retorna nada!
Bacharelado em Ciência e Tecnologia
Processamento da Informação
EXEMPLO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Problema
Escreva um programa para exibir o peso ideal de uma
pessoa utilizando a formula a seguir:
▪ Masculino: 72.7 x altura – 58
▪ Feminino: 62.1 x altura – 44.7
▪ SAÍDA: ???
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Problema
Escreva um programa para exibir o peso ideal de uma
pessoa utilizando a formula a seguir:
▪ Masculino: 72.7 x altura – 58
▪ Feminino: 62.1 x altura – 44.7
Problema
Escreva um programa para exibir o peso ideal de uma
pessoa utilizando a formula a seguir:
▪ Masculino: 72.7 x altura – 58
▪ Feminino: 62.1 x altura – 44.7
Solução
A entrada e saída de dados poderá ser feito no módulo
principal (função início). No entanto, o calculo do peso
ideal deve ser feito em uma função específica.
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Construção da Função
A entrada e saída de dados poderá ser feito no módulo
principal (função início). No entanto, o calculo do peso
ideal deve ser feito em uma função específica.
▪ Masculino: 72.7 x altura – 58
▪ Feminino: 62.1 x altura – 44.7
Solução Completa
CHAMADA DA FUNÇÃO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Solução Completa
Bacharelado em Ciência e Tecnologia
Processamento da Informação
PROBLEMA
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Modularização
O que será impresso pelo trecho de programa abaixo?
a b c
10 20 0
a b y
10 20 ?
ESCOPO DE
VARIÁVEIS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Blocos
Escopo Global
▪ Escopo global – são variáveis que podem ser utilizadas
nos módulos em que foram declaradas e também nos
módulos internos aos módulos que foram declarados
AGORA É
PRATICAR!!!