Como e por que modularizar nosso programa criando funções e procedimentos? | aula 102

2.29k views1454 WordsCopy TextShare
Programe seu futuro
Esta é a primeira aula e introdução ao estudo das funções e procedimentos. Modularizar nosso progra...
Video Transcript:
E aí [Música] E aí E aí o Olá vamos dar continuidade ao nosso curso de algoritmos e lógica de programação e nessa aula a gente começa um novo módulo e esse módulo vai ser bem breve nós vamos começar a entender nessa aula porque e como utilizar funções e procedimentos para modularizar os nossos programas os nossos algoritmos E aí vamos entender primeiro o que que é modularizar modularizar nada mais é do que construir pequenos blocos ou pequenos trechos de programa que podem ser reutilizados aqui na interface principal do Portugal Estúdio Nós temos inclusive um módulo chamado
sub-rotinas sub-rotina é um nome dado para esse processo de modularização a gente constrói pequenos pedacinhos de códigos também chamados de sub-rotinas e essa sub-rotinas podem então ser utilizadas em diversas vezes nós inclusive já utilizamos várias funções e procedimentos ou várias sub-rotinas nos algoritmos Nos programas que nós fizemos aqui em Portugal eu vou abrir aqui nesse sinalzinho de mais ao clicar aqui nesse sinalzinho de mais percebo então que a gente abre um leque de opções aqui e o primeiro que nós temos aqui chama-se procedimento e função a partir desta aula é o que nós vamos começar
a aprender como criar as nossas funções e procedimentos todo o restante aqui são exemplos de funções e procedimento então perceba que o próprio ambiente portugol Studio N já traz aqui uma série de códigos que você inclusive pode estudá-los você pode ver como foram construídos e baseado aqui nesses exemplos você pode construir Então as suas próprias funções e procedimentos Como Eu mencionei nós já utilizamos em diversas funções e procedimentos vamos ver algumas que nós já utilizamos eu vou então vir aqui para o código que nós desenvolvemos aí duas aulas atrás lembra do nosso exercício para verificar
se uma matriz é um quadrado mágico perceba que aqui nós já temos uma função que nós utilizamos em todos os programas em Portugal função início e aí perceba que nós temos aqui uma forma específica de construir essa função Não se preocupe com essa forma agora por enquanto eu quero apenas mostrar alguns exemplos quando eu faço por exemplo isso aqui e escreva você percebeu que aqui nós temos algo muito parecido com isso aqui perceba início e aí nós temos um par de parênteses Olha nós temos aqui um nome nós temos um par de parênteses e entre
esse par de parênteses nós temos alguns elementos esses elementos são chamados de parâmetros eu tenho aqui um par de aspas duplas que vem até aqui aí eu tenho uma, eu tenho aqui o nome de uma variável a nossa variável total eu tenho outra, e aqui eu tenho outro par de aspas duplas então neste caso a nossa função o nosso procedimento escreva ele tá recebendo três parâmetros a como que eu sei que é três porque nós temos aqui duas vírgulas Então antes da primeira, eu tenho um parâmetro após a primeira, eu tenho um segundo parâmetro e
após a segunda, eu tenho o nosso terceiro parâmetro a nossa função Leia lembra que nós já utilizamos várias vezes a função leia para ler uma informação da tela também é uma função ou um procedimento E aí mais à frente vai ficar claro para gente a diferença entre função e procedimento se você observar aqui nesse nosso código para verificar se uma matriz o dado mágico perceba que todo o nosso código ele tá entre esse par de Chaves aqui que foi aberto na linha 13 e Olha onde essa chave foi fechada ela foi fechada aqui no final
na linha 68 Então nós não fizemos a utilização o nós não criamos funções e procedimentos para resolver esse problema nós resolvemos o problema escrevendo tudo o nosso código dentro da função início isso pode ser feito sem nenhum problema porém quando a gente tá resolvendo um problema maior um problema mais complexo isso fica mais difícil torna mais difícil o processo de resolver o problema perceba que muita coisa que foi repetido vamos dar uma avaliada no que nós fizemos aqui olha só para as linhas eu tenho aqui duas repetições uma gerando o índice da linha e outra
para percorrer a coluna E aí eu tô fazendo o somatório a cada uma das linhas e verificando-se somatório é o ao nosso Total isso aqui pode ser feito pode mais torna o processo de solução um pouco mais complicado imagina se eu tivesse uma função que recebe o índice de uma linha como assim no início de uma linha eu quero calcular a soma da linha zero então eu recebo como parâmetro zero que indica a linha zero ou um cara linha 1 o 2 para linha dois então essa minha função recebe o índice da linha que eu
quero calcular soma faça o cálculo da soma de uma linha específica e retorna essa soma retornando essa soma eu poderia então verificar se essa soma é igual ao Total então perceba que o nosso código já ficaria bem mais simples eu tenho uma função que recebe o número da linha calcula a soma e retorna E aí eu poderia achar mais a função inúmeras vezes o mesmo vale para coluna nós poderíamos ter a única função para calcular soma de uma coluna E aí eu passo para essa função Qual a coluna eu quero calcular a soma por 1
a 0 coluna 1 coluna 2 E aí é utiliza essa função diversas vezes para calcular a soma de cada uma das colunas e no #lembra que nós resolvemos também o jogo da velha então perceba que eu abro um par de Chaves aqui na linha 11 e o nosso #Ele é bem mais extenso e também perceba que todo o nosso código está dentro desse par de Chaves foi aberto que na linha 11 e Olha onde ele foi fechado e ele foi fechado aqui no final do nosso código na linha 120 então tudo que nós programamos ou
tudo que nós inscrevemos está entre esse par de chaves da linha 120 e da linha 11 novamente pode fazer dessa forma pode só que fica muito mais fácil resolver o problema se a gente cria pequenas funções e procedimentos para resolver cada problema individualmente então a gente pega um grande problema por exemplo um jogo da velha e vai dividir no pequenos problemas menores Isso facilita bastante resolver o problema todo o problema geral por exemplo olha só eu tenho aqui a impressão do meu tabuleiro certo e aí nós temos duas repetições apenas para fazer a impressão no
nosso tabuleiro ou do jogo da velha se você bem se lembra dessa solução aqui no final nós novamente fazemos a impressão a impressão do Tabuleiro quando alguém ganha então a gente imprimir o tabuleiro novamente para verificar qual foi a linha Qual foi a coluna ou a diagonal que o jogador venceu se eu tenho um procedimento para fazer essa impressão basta chamar o procedimento duas vezes a gente vai escrever esse trecho uma única vez e aí eu posso chamar ele aqui na linha 96 e também eu posso chamar ele aqui na nossa linha 26 então perceba
que o nosso código ele vai ficando bem mais simples outra forma que pode ser bem abreviada É a leitura de dados perceba que para fazer a leitura da coordenada nós temos aqui dois faças enquanto o mais interno é para verificar se linha e coluna são válidos entre 0 e 2 e o outro mais externo é para verificar se aquela posição jogada ainda não foi jogado ou seja o som está limpo está vazia então eu posso ter uma função apenas para verificar se a posição jogada está vazia outra para verificar se as coordenadas digitadas são válidas
E aí eu posso ter uma outra função ou procedimento para fazer propriamente jogada então perceba aqui o nosso grande problema de resolver o jogo da velha vai se tornando a construção ou a solução de problemas menores pequenos bloquinhos para resolver problemas específicos EA enquanto a gente vai resolvendo esses problemas menores a gente acaba no final resolvendo o nosso problema geral resolvendo o nosso #com a junção aí e problemas menores de pequenas funções e procedimentos Então esta aula que este vídeo foi apenas para dar um Panorama Geral do que são funções e procedimentos e como eles
podem auxiliar e na resolução do problema a partir da próxima aula nós vamos ver de forma bem individual e bem passo a passo o que é e como construir um procedimento O que é e como construir uma função e qual a diferença entre os dois então nos vemos na próxima aula ok
Related Videos
Como criar um procedimento sem parâmetro em Portugol? | aula 103
11:40
Como criar um procedimento sem parâmetro e...
Programe seu futuro
1,640 views
{Portugol Studio} #13 - Funções
37:50
{Portugol Studio} #13 - Funções
Programação Popular
51,164 views
Algoritmo - Visualg - Funçoes e procedimentos
9:38
Algoritmo - Visualg - Funçoes e procedimentos
educlass
57,807 views
Passagem de parâmetros por VALOR e por REFERÊNCIA em Portugol | Aula 121
15:40
Passagem de parâmetros por VALOR e por REF...
Programe seu futuro
3,193 views
Subrotinas (Funções e Procedimentos) - Lógica de Programação
16:39
Subrotinas (Funções e Procedimentos) - Lóg...
Bóson Treinamentos
12,421 views
If __name__ == "__main__" for Python Developers
8:47
If __name__ == "__main__" for Python Devel...
Python Simplified
395,796 views
Funções com Portugol Studio
11:30
Funções com Portugol Studio
IA Expert Academy
5,574 views
Visualg Aula 30 - Procedimentos e Funções
11:20
Visualg Aula 30 - Procedimentos e Funções
Tuto Studio
28,430 views
How principled coders outperform the competition
11:11
How principled coders outperform the compe...
Coderized
1,680,422 views
Introdução aos Vetores usando Portugol [Nação programadora]
16:03
Introdução aos Vetores usando Portugol [Na...
Nação Programadora
12,610 views
08 - Conceitos Básicos de Programação - Funções e Parâmetros
11:46
08 - Conceitos Básicos de Programação - Fu...
Abre Chaves
7,195 views
PERDI 15kgs!? O QUE ACONTECEU COMIGO?
5:13
PERDI 15kgs!? O QUE ACONTECEU COMIGO?
Paulo Muzy
12,895 views
Algoritmos e Portugol Studio #08 - Modularização com funções
16:38
Algoritmos e Portugol Studio #08 - Modular...
Professor Just
3,433 views
{Portugol Studio} #12 - Matrizes
33:22
{Portugol Studio} #12 - Matrizes
Programação Popular
64,218 views
26 - Lógica de Programação - Procedimentos
10:48
26 - Lógica de Programação - Procedimentos
Bóson Treinamentos
29,270 views
Vim Tips I Wish I Knew Earlier
23:00
Vim Tips I Wish I Knew Earlier
Sebastian Daschner
54,103 views
Branchless Programming: Why "If" is Sloowww... and what we can do about it!
19:25
Branchless Programming: Why "If" is Slooww...
Creel
1,450,274 views
Algoritmos VISUALG - Funções e Procedimentos
8:14
Algoritmos VISUALG - Funções e Procedimentos
Prof. Fabiano IFMT
5,360 views
{Portugol Studio} #14 - Bibliotecas
21:10
{Portugol Studio} #14 - Bibliotecas
Programação Popular
24,070 views
Aula # 45 Prática – Matrizes – Introdução, declaração e uso - VisuAlg – Parte 1
22:08
Aula # 45 Prática – Matrizes – Introdução,...
Cida Castello
5,546 views
Copyright © 2025. Made with ♥ in London by YTScribe.com