algoritmos e programação - 2016.2 - aula 19
TRANSCRIPT
![Page 1: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/1.jpg)
Algoritmos e Programação
Prof.º Thyago Maia
![Page 2: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/2.jpg)
Funções
![Page 3: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/3.jpg)
Funções
• Definem ações a serem tomadas na execução de um programa;
• São conjuntos de declarações de dados, instruções e expressões;
• Tratam-se de blocos nomeados de código, que exercem uma função específica (Ex.: soma, imprime, calcula ...);
3
![Page 4: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/4.jpg)
Funções
• Vantagens do uso de Funções:– Reduzem o tamanho do código-fonte de
programas;– Facilitam a visualização e compreensão de
programas;– Pensa-se na solução do problema por partes;– É mais fácil corrigir e detectar erros;– Se é preciso alterar, altera-se apenas uma vez;– Uma mesma função poderá ser utilizada em
outros scripts;
![Page 5: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/5.jpg)
Definindo Funções
![Page 6: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/6.jpg)
Definindo Funções
• Sintaxe:
6
def nome_funcao(param1,param2,..., param_n):# Bloco de código da função
return valor
![Page 7: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/7.jpg)
Exemplo
• Faça um módulo que possua uma função chamada soma. A referida função deverá retornar a soma entre duas variáveis sempre que for invocada;
• No mesmo módulo, leia dois números inteiros e some-os a partir da função criada anteriormente;
7
![Page 8: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/8.jpg)
Funções
• Exemplo:
8
![Page 9: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/9.jpg)
Exemplo
• Faça um programa que possua dois módulos: funcoes.py e programa.py.
• No primeiro arquivo, crie a função soma. A referida função deverá retornar a soma entre duas variáveis sempre que for invocada;
• No segundo arquivo, importe a função soma, localizada no módulo funções, leia dois números inteiros e some-os a partir da função criada anteriormente;
9
![Page 10: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/10.jpg)
Funções
• Exemplo (criação do módulo funcoes.py):
10
![Page 11: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/11.jpg)
Funções
• Exemplo (criação do módulo programa.py):
11
![Page 12: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/12.jpg)
Exemplo
• Faça um módulo que possua uma função chamada aoQuadrado. A referida função deverá retornar o valor ao quadrado de uma variável sempre que for invocada;
• No mesmo módulo, leia um número inteiro e eleve-o ao quadrado a partir da função criada anteriormente;
12
![Page 13: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/13.jpg)
Funções
• Exemplo:
13
![Page 14: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/14.jpg)
Exemplo
• Faça um programa que possua dois módulos: funcoes.py e programa.py.
• No primeiro arquivo, crie a função aoQuadrado. A referida função deverá retornar o valor ao quadrado de uma variável sempre que for invocada;
• No segundo arquivo, importe a função aoQuadrado, localizada no módulo funções, leia um número inteiros e execute a função criada anteriormente;
14
![Page 15: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/15.jpg)
Funções
• Exemplo (criação do módulo funcoes.py):
15
![Page 16: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/16.jpg)
Funções
• Exemplo (criação do módulo programa.py):
16
![Page 17: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/17.jpg)
Exercícios
![Page 18: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/18.jpg)
Exercício
• Faça um programa que lê os lados de um retângulo e calcula o seu perímetro a partir de uma função;
– Perímetro do retângulo = (2*largura) + (2*comprimento)
![Page 19: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/19.jpg)
Exercício
• Faça um programa que lê 3 notas de um aluno no semestre, calcula sua média a partir de uma função e informa se o aluno está aprovado (media >= 7) ou reprovado (media < 7);
![Page 20: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/20.jpg)
Exercício
• Faça um programa que leia a variação da distância percorrida por um carro e a variação de tempo que ele levou para percorrer o trajeto e calcula, a partir de uma função, a velocidade média do veículo;
• Velocidade media = (Km final – km inicial) / (hora final – hora inicial)
![Page 21: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/21.jpg)
Exercícios
Faça um programa que lê o preço de um produto e a quantidade adquirida por um cliente. O mesmo deverá calcular, a partir de uma função, o valor total a ser pago pelo cliente;
21
![Page 22: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/22.jpg)
Exercício
• Faça um programa que leia um número inteiro e o submeta para a função checaPositivo (crie a função), que deverá informar se o número digitado é positivo ou negativo;
![Page 23: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/23.jpg)
Exercício
• Faça um programa que leia dois números inteiros e informa, a partir de uma função, qual o maior número digitado;
![Page 24: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/24.jpg)
Exercício
• Faça um programa que leia o raio de uma esfera e submeta os dados para a função volume (crie a função), que deverá calcular o seu volume;
– V = 4/3 * (R*R*R)
![Page 25: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/25.jpg)
Exercício
• Faça um programa que leia dois números reais e um símbolo que identifique uma operação matemática (+, -, *, /), submetendo-os para a função calculadora (crie a função). A função deverá efetuar um cálculo entre os dois números submetidos, baseado no símbolo digitado;
![Page 26: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/26.jpg)
Exercício
• Faça um programa que leia três inteiros que representam horas, minutos e segundos e submeta os dados para a função converte (crie a função), que deverá converter os três inteiros digitados para segundos (Ex.: 2h 40min e 10s correspondem a 9.610 segundos);
![Page 27: Algoritmos e Programação - 2016.2 - Aula 19](https://reader035.vdocuments.net/reader035/viewer/2022062400/587325cb1a28ab596c8b4a1b/html5/thumbnails/27.jpg)
Exercícios
• Faça um programa que receba dois números e execute as operações listadas a seguir, de acordo com a escolha do usuário (crie uma função para cada opção);
27
CÓDIGO OPERAÇÃO1 Média entre os números digitados2 Diferença do maior pelo menor3 Produto entre os números digitados4 Divisão do primeiro pelo segundo