Buscar

Sub-rotinas e funções Matlab

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 13 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
PROGRAMAÇÃO DE 
COMPUTADORES
Prof. Jean Carvalho
Email: jeancarvalho@ufsj.edu.br
Site: sites.google.com/site/jeancarvalhoufsj 
Sala: 4.29EL
Aula 18
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
Índice
Matlab/Octave
Modularização
Sub-rotinas
Funções
2
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
Modularização
Tipos de módulos:
Sub-rotina: código modularizado;
Função: código modularizado que retorna um 
valor.
3
S1 S2
MP
F1 F2
S3 F3 S4 F4
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
Arquivos .m tipo function
Admitem parâmetros de entrada;
Retornam valores;
Possuem variáveis locais;
O arquivo tipo function também tem que 
ter extensão .m e deve ter o mesmo nome 
usado na definição da função.
Modularização
4
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
▸Sintaxe
5
Sub-rotina
function <nome da sub-rotina>(var. de entrada)
function CalculaArea(base,altura)
%Sub-rotina para o cálculo da área de um triângulo
%variáveis de entrada: base, altura
resultado = (base*altura)/2;
fprintf('A area do triangulo e = %f',resultado)
end
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
6
▸A chamada de uma sub-rotina é feita pelo nome e pela 
indicação dos parâmetros atuais no local do algoritmo 
onde a sub-rotina dever ser ativada;
▸Forma geral para o comando de ativação de uma sub-
rotina:
Sub-rotina
<nome da sub-rotina>(var. de entrada)
H=5;
B=10;
CalculaArea(B,H)
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
7
▸01: Escreva um programa que receba um valor de 
temperatura em graus Fahrenheit e imprima na tela o 
valor da temperatura em graus Celsius.
Conversão: C = 5*((F-32)/9).
Sub-rotina
%Declaração de variáveis
%Leitura do valor de temperatura digitado
%Cálculo e impressão da temperatura em °C
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
8
▸02: Escreva um programa que receba um valor de 
temperatura em graus Fahrenheit e imprima na tela o 
valor da temperatura em graus Celsius. 
Conversão: C = 5*((F-32)/9).
Sub-rotina
%Declaração de variáveis
%Leitura do valor de temperatura digitado
%Ativação da sub-rotina de conversão e impressão
%Declaração da sub-rotina de conversão e impressão
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
▸As funções são bastante semelhante às sub-rotinas, mas 
retornam ao algoritmo que as chamou um valor associado 
ao nome da função. Sintaxe:
Função
9
function [var.saída]=<nome da função>(var. de entrada)
function [resultado]=CalculaArea(base,altura)
%Função para o cálculo da área de um triângulo
%variáveis de entrada: base, altura
resultado = (base*altura)/2;
end
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
10
▸A chamada de uma função é feita pelo nome e pela 
indicação dos parâmetros atuais no local do algoritmo 
onde a sub-rotina dever ser ativada;
▸Forma geral para o comando de ativação de uma função:
Sub-rotina
<nome da sub-rotina>(var. de entrada)
H=5;
B=10;
area=CalculaArea(B,H)
fprintf('A area do triangulo e = %f',area)
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
11
▸03: Escreva um programa que receba um valor de 
temperatura em graus Fahrenheit e imprima na tela o 
valor da temperatura em graus Celsius.
Conversão: C = 5*((F-32)/9).
Função
%Declaração de variáveis
%Leitura do valor de temperatura digitado
%Ativação da função de conversão
%Impressão dos dados
%Declaração da função de conversão
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
▸04 Escreva um programa que receba dois valores a e b, 
faça por meio de uma função a troca dos valores e 
imprima os valores trocados na tela.
▸05  Fazer um programa com uma função para cálculo 
da área e uma função para cálculo do volume de uma 
esfera. O programa deve ler o valor do raio e mostrar os 
resultados com 2 casas decimais no seguinte formato:
Área = <valor>; Volume = <valor>
𝐴 = 4𝜋𝑟2 𝑉 =
4
3
𝜋𝑟3
12
Exemplo
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
Exemplo
06 Faça um programa que leia duas 
matrizes, verifica e mostra por meio de 
sub-rotina se as seguintes multiplicações 
de matrizes são possíveis (informar o 
porquê caso alguma não seja possível): 
Primeira matriz vezes segunda;
Segunda matriz vezes primeira;
Primeira matriz ao quadrado;
Segunda matriz ao quadrado.
13

Continue navegando