Escolar Documentos
Profissional Documentos
Cultura Documentos
Processamento da Informação
Módulos – Parte 2
Módulos ou Subrotinas:
PARTE II
Módulos – Parte 2
Objetivos da Aula
Compreender a necessidade e a importância de
modularizar
Aprender a criar e utilizar (chamar) seus
próprios módulos
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Refletindo ...
Até o momento temos escrito nossos programas no
PortugolStudio de maneira “sequencial” dentro da
função início
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Refletindo ...
À 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.
Para cada subproblema podemos, por exemplo,
escrever um módulo específico (função)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
PROBLEMA
EXEMPLO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Problema
Escreva um programa ler dois vetores (A e B) de
10 elementos cada. Após a entrada de dados, o
programa deve:
Obter e exibir a soma dos elementos do vetor A
Obter e exibir a soma dos elementos do vetor B
Calcular e exibir a média dos elementos dos dois
vetores (uma única média)
Imprimir o vetor A e depois o vetor B
Mostrar os elementos de A e B que são acima da média
de ambos
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
SAÍDA DE DADOS?
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
SOLUÇÃO 1
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
- Obter e exibir a soma dos elementos do vetor A
PROCESSAMENTO [1]:
- Obter e exibir a soma dos elementos do vetor B
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
SOLUÇÃO COMPLETA
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
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
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
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
Módulos – Parte 2
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
Módulos – Parte 2
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Modularizando
Primeiro, vamos pegar cada trecho específico, um
a um, e transformá-lo numa função
Módulos – Parte 2
MODULARIZANDO A ROTINA
“LEITURA VETOR”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
MODULARIZANDO A ROTINA
“SOMA VETOR”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
MODULARIZANDO A ROTINA
“IMPRIME VETOR”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
MODULARIZANDO A ROTINA
“IMPRIME ACIMA MEDIA”
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
SOLUÇÃO COMPLETA
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
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
Módulos – Parte 2
AS FUNÇÕES
CRIADAS E QUE
FORAM CHAMADAS
(E REUSADAS)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
VANTAGENS DA
MODULARIZAÇÃO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Modularização - Vantagens
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos - Sintaxe
3- Identificador (obrigatório)
Módulos – Parte 2
PARÂMETROS
Módulos – Parte 2
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
Módulos – Parte 2
Parâmetros da função)
Módulos – Parte 2
Parâmetros da função)
Módulos – Parte 2
Módulos – Parte 2
EXECUÇÃO E CHAMADA
DOS MÓDULOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
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
Módulos – Parte 2
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
Módulos – Parte 2
Módulos – Parte 2
EXEMPLO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Problema
Escreva um programa para exibir o peso ideal de uma pessoa
utilizando a formula a seguir:
SAÍDA: ???
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Problema
Escreva um programa para exibir o peso ideal de uma pessoa
utilizando a formula a seguir:
Módulos – Parte 2
Problema
Escreva um programa para exibir o peso ideal de uma pessoa
utilizando a formula a seguir:
Módulos – Parte 2
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
Módulos – Parte 2
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.
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Solução Completa
CHAMADA DA FUNÇÃO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Solução Completa
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Blocos
Módulos – Parte 2
Módulos – Parte 2
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
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
Módulos – Parte 2
AGORA É
PRATICAR!!!
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Exercícios
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Módulos – Parte 2
Modularização – Exercício
Escreva a função Valida_Inteiro para solicitar um número
inteiro e validá-lo de forma que o mesmo esteja dentro de
um intervalo. Os limites do intervalo serão passados por
parâmetro. Escreva também a função principal (início) para
fazer a chamada da função com os seguintes valores:
Atenção: A comunicação dos valores entre a função e o meio externo dever ser
feita por passagem de parâmetros (e não por variáveis globais)