• Nenhum resultado encontrado

Programa¸c˜ao Modular

N/A
N/A
Protected

Academic year: 2022

Share "Programa¸c˜ao Modular"

Copied!
11
0
0

Texto

(1)

Profa.Dra.Thatyana de Faria Piola Seraphim (ECO) Prof.MSc.Rodrigo Maximiano Antunes de Almeida (ELT)

Prof.Dr.Carlos Henrique Val´erio de Moraes (ECA)

Universidade Federal de Itajub´a

thatyana@unifei.edu.br rodrigomax@unifei.edu.br

valerio@unifei.edu.br

(2)

Sub-Rotinas

Sub-Rotinas ou Subprogramas:

s˜ao blocos de instru¸c˜oes que realizam tarefas espec´ıficas o c´odigo de uma sub-rotina ´e carregado uma vez e pode ser executado quantas vezes for necess´ario

os programas tendem a ficar menores e mais organizados, uma vez que o problema pode ser dividido em pequenas tarefas

Defini¸c˜ao de Sub-rotina

Uma sub-rotina ´e um programa que poder´a efetuar diversas opera¸c˜oes computacionais (entrada, processamento e sa´ıda)

(3)

Sub-Rotinas

os programas s˜ao executados linearmente, uma linha ap´os a outra, at´e o fim

quando as sub-rotinas s˜ao utilizadas, ´e poss´ıvel a realiza¸c˜ao de desvios na execu¸c˜ao natural dos programas

os desvios s˜ao realizados quando uma fun¸c˜ao ´e chamada pelo programa principal

um importante recurso apresentado nas linguagens de programa¸c˜ao ´e amodulariza¸c˜ao

onde um programa pode ser particionado em sub-rotinas bastante espec´ıficas

a modulariza¸c˜ao pode ser feita por meio de procedimentos oufun¸c˜oes

(4)

Procedimentos

Defini¸c˜ao de Procedimento

Um procedimento ´e um bloco de programa, contendo in´ıcio e fim e ser´a identificado por um nome atrav´es do qual ser´a referenciado em qualquer parte do programa principal ou do programa que chama a rotina

Quando uma sub-rotina ´e chamada por um programa

ela ´e executada e ao seu t´ermino, o controle de processamento retorna automaticamente para a primeira linha de instru¸c˜ao ap´os a linha que efetuou a chamada da sub-rotina

(5)

Procedimentos

Sintaxe

procedimento<nome>(<param1:tipo1;. . .;paramn:tipon>) var

<declara¸c˜ao das var´aveis locais>

inicio

<lista de comandos>

fimprocedimento

o procedimento ´e chamado escrevendo apenas seu nome no programa principal

Exemplo: um programa de calculadora que apresenta um menu de sele¸c˜oes no programa principal

(6)

Procedimentos

algoritmo“calculadora”

var{Vari´avel do Programa Principal} opcao :inteiro

procedimentorotSoma() varsoma, a, b : real inicio

escreval(“Rotina de Soma”) escreval(“Digite o valor de a = ”) leia(a)

escreval(“Digite o valor de b = ”) leia(b)

soma<– a + b

escreval(“Soma = ”, soma) fimprocedimento

procedimentorotSubtracao() varsub, a, b :real

inicio

escreval(“Rotina de Subtracao”) escreval(“Digite o valor de a = ”) leia(a)

escreval(“Digite o valor de b = ”) leia(b)

sub<– a - b

escreval(“Subtracao = ”, sub) fimprocedimento

(7)

Procedimentos

procedimentorotMultiplicacao() varmult, a, b :real

inicio

escreval(“Rotina Multiplicacao”) escreval(“Digite o valor de a = ”) leia(a)

escreval(“Digite o valor de b = ”) leia(b)

mult<– a * b

escreval(“Multiplicacao=”, mult) fimprocedimento

procedimentorotDivisao() vardivisao, a, b : real inicio

escreval(“Rotina de Divisao”) escreval(“Digite o valor de a = ”) leia(a)

escreval(“Digite o valor de b = ”) leia(b)

divisao<– a / b

escreval(“Divisao = ”, divisao) fimprocedimento

(8)

Procedimentos

{Programa Principal}

inicio

opcao<– 0

enquanto(opcao<>5)faca escreval(“1 - Adicao”) escreval(“2 - Subtracao”) escreval(“3 - Multiplicacao”) escreval(“4 - Divisao”)

escreval(“5 - Fim do programa”) escreval(“Escolha uma opcao”) leia(opcao)

se(opcao = 1)entao rotSoma

fimse

se(opcao = 2)entao rotSubtracao fimse

se(opcao = 3)entao rotMultiplicacao fimse

se(opcao = 4)entao rotDivisao fimse fimenquanto fimalgoritmo

(9)

Fun¸oes

Fun¸c˜ao:

´

e um bloco de programa, contendo in´ıcio e fim

´

e identificada por um nome atrav´es do qual ´e referenciada em qualquer parte do programa principal

Diferen¸ca entrefun¸c˜aoe procedimento:

a fun¸ao retorna um determinado valor, e esse valor ´e retornado no pr´oprio nome da fun¸ao

Sintaxe da Fun¸ao

funcao<nome>(<param1:tipo1;. . .;paramn:tipon>)<tipo>

var

<declara¸c˜ao das vari´aveis locais>

inicio

<lista dos comandos>

retorne<vari´avel para retorno>

(10)

Fun¸oes

Parˆametros:

tˆem por objetivo servir como um ponto de comunica¸c˜ao bidimensional entre uma sub-rotina e o programa principal atrav´es dos parˆametros ´e poss´ıvel passar valores de uma sub-rotina ou rotina chamadora `a outra sub-rotina e vice-versa

Exemplo

Fun¸c˜ao que eleva ao cubo um determinado n´umero informado pelo usu´ario

(11)

Fun¸oes

Exemplo: Fun¸ao que eleva ao cubo um determinado n´umero informado pelo usu´ario

algoritmo“cubo”

var{ variavel do programa principal} num, x : real

funcaocubo (n:real) : real var{ variavel da funcao cubo}

c : real inicio

c<– n * n * n

retorne(c) fimfuncao

inicio{inicio programa principal}

escreva(“Digite um valor para calcular o cubo = “) leia(num)

x<– cubo(num)

escreva(“O cubo de “, num, “ = “, x)

Referências

Documentos relacionados

escolar e entrevistas com roteiros semiestruturados aplicados às professoras formadoras da Universidade Federal de Permabuco (UFPE) e da Escola Cristo Rei, aos profissionais

Pensar a formação continuada como uma das possibilidades de desenvolvimento profissional e pessoal é refletir também sobre a diversidade encontrada diante

O destaque é dado às palavras que abrem signi- ficados e assim são chaves para conceitos que fluem entre prática poética na obra de arte e sua reflexão em texto científico..

O tema proposto neste estudo “O exercício da advocacia e o crime de lavagem de dinheiro: responsabilização dos advogados pelo recebimento de honorários advocatícios maculados

A utilização de um site como ferramenta no ensino de aprendizagem pode levar à introdução de um novo conceito, o e-portefólio, servindo este espaço de repositório de trabalhos

Finally,  we  can  conclude  several  findings  from  our  research.  First,  productivity  is  the  most  important  determinant  for  internationalization  that 

II - os docentes efetivos, com regime de trabalho de 20 (vinte) horas semanais, terão sua carga horária alocada, preferencialmente, para ministrar aulas, sendo o mínimo de 8 (oito)

Entre as atividades, parte dos alunos é também conduzida a concertos entoados pela Orquestra Sinfônica de Santo André e OSESP (Orquestra Sinfônica do Estado de São