SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Lógica de programação




         Prof: Eduardo Rossit Paiossin
      Prof: Leandro Maranim Dei Santi
Conteúdo da aula




Programação estruturada
Modularização
Procedimento
Função



                          Pag 319
Programação estruturada


No final dos anos 60 as empresas se depararam com
um aumento crescente nos custos de fabricação de um
software e isso gerou a crise do software.

A fim de resolver esse problema surgiram vários tipos
de programação. Como por exemplo a programação
estruturada.

Esse tipo de programação permite o desmembramento
do programa em partes menores e mais fáceis de se
programar/dar manutenção, além de ficarem bem mais
simples de se entender.
Programação estruturada
Programação         estruturada    é    uma       forma
de programação de computadores que preconiza que
todos os programas possíveis podem ser reduzidos a
apenas três estruturas: sequência, decisão e interação,
desenvolvida por Michael A. Jackson no seu livro
"Principles of Program Design" de 1975.

Tendo, na prática, sido transformada na Programação
modular, a Programação estruturada orienta os
programadores para a criação de estruturas simples em
seus programas, usando as subrotinas e as funções.
Foi a forma dominante na criação de software anterior
à programação orientada por objetos.
Modularização

É um conceito de dividir um software em partes
distintas (módulos).
À medida que vamos resolvendo problemas mais
complexos, o tamanho dos nossos programas vai
crescendo, assim, fica difícil acompanhar as
funcionalidades dos trechos de Programas.
Esta técnica de decomposição em unidades
funcionais, proveniente da programação estruturada,
é conhecida como modularização.
Estes trechos devem ser logicamente coerentes, isto
é, cada um deve realizar uma função definida.
Modularização

Visa principalmente aspectos como confiabilidade,
legibilidade, manutenção e flexibilidade.

Tem como principais vantagens:

 A independência entre os módulos permite uma
  manutenção mais simples e barata.
 Pode ser desenvolvido em paralelo ao restante do
  algoritmo
 Teste para correção de bugs podem ser feitos
  separadamante do programa.
 Um módulo pode ser utilizado em outros
  algorítmos
Procedimentos e funções

Para criarmos módulos no nosso algoritmo existem
os comandos procedimento e função. As ações do
procedimento e função são hierarquicamente
subordinadas a um algoritmo principal geralmente
chamado “Módulo Principal”

Dentro de um procedimento/função podem haver
vários outros procedimento/funções.

Os procedimentos e as funções podem utilizar
objetos (constantes e variáveis) do módulo
principal, definir seus próprios, ou ainda utilizar os
dois.
Procedimentos e funções

Variáveis globais: São variáveis que podem ser
utilizadas pelos procedimentos/funções internas ao
módulo onde foi declarada.

Variáveis locais: São variáveis que podem ser
utilizadas apenas nos módulos em que foram
criadas. Não em significado fora dele.

Vejamos o exemplo na página 321.
Procedimentos e funções

Procedimento com parâmetros (pag 332)

Passagem de parâmetro por valor: Na passagem
por valor, os parâmetros de uma função funcionam
como variáveis suas, ou seja NADA tem a ver com
as variáveis da função que a chamou. Desta forma
alterações nos valores desses parâmetros não
interferem nos valores das variáveis da função
chamadora.
Procedimentos e funções

Passagem de parâmetro por referência: No entanto
pode ser interessante que uma variável na função
chamadora possa ser alterada (ex: função que troque o
valor de duas variáveis). Ou mesmo haja a necessidade
de se retornar mais de um valor da função (pois com o
return só é possível retornar um único valor).

Para esses casos, algumas linguagens permitem a
passagem de parâmetros por referência, onde uma
variável passada como parâmetro ao ser alterada
dentro da função tem seu valor alterado também na
função chamadora (é na verdade uma única variável
usada por ambas as fuções).
Procedimentos e funções

“O que são Parâmetros de Entrada e Saída”

Função: Assemelha-se muito ao procedimento, porém
sempre há o retorno de um valor.

Exemplo pagina 339
Exercício
1) Crie um algoritmo que chame uma função que
   calcula a média de 100 alunos e depois imprima
   essa média.

2) Crie um algoritmo que chame uma procedimento
   que calcule e imprima a média de 100 alunos e
   depois imprima essa média.

3) Crie um algoritmo que passe o nome e o endereço
   de um aluno para um procedimento. Esse
   procedimento vai imprimir essas informações
   juntamente com o nome da instituição “SENAC” para
   obter o nome da instituição o procedimento chamará
   a função IMPRIME_INSTITUIÇAO que também
   deve ser criada
Bibliografia

 Para a preparação da aula foi utilizado o livro do curso
               entregue pelo SENAC e

   Modularização. MODULARIZAÇÃO Disponível em:
 <http://correio.fdvmg.edu.br/downloads/DET111/Parte1
  _Modulariaza%E7%E3o.pdf> Acesso em: 02 MAIO.
                     2011, 21:00:00.

Weitere ähnliche Inhalte

Andere mochten auch

Ambiente de power point
Ambiente de power pointAmbiente de power point
Ambiente de power pointkaohs123
 
Presentación 7 de mayo 2
Presentación 7 de mayo 2Presentación 7 de mayo 2
Presentación 7 de mayo 2alegallardo28
 
President ADB - Reuters June 2005
President ADB - Reuters June 2005President ADB - Reuters June 2005
President ADB - Reuters June 2005Sherry Kennedy
 
Ada 3 kaoh
Ada 3 kaohAda 3 kaoh
Ada 3 kaohkaohs123
 
Reunião nº 3 Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013
Reunião nº 3   Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013Reunião nº 3   Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013
Reunião nº 3 Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013Rotary Clube Vizela
 
Lease Option Certification
Lease Option CertificationLease Option Certification
Lease Option CertificationAKRE Solutions
 
Ada 4 sem 2
Ada 4 sem 2Ada 4 sem 2
Ada 4 sem 2kaohs123
 
Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...
Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...
Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...Rotary Clube Vizela
 
Cuestionario
CuestionarioCuestionario
Cuestionariokaohs123
 

Andere mochten auch (10)

Ambiente de power point
Ambiente de power pointAmbiente de power point
Ambiente de power point
 
Power point of links sites 46
Power point of links sites 46Power point of links sites 46
Power point of links sites 46
 
Presentación 7 de mayo 2
Presentación 7 de mayo 2Presentación 7 de mayo 2
Presentación 7 de mayo 2
 
President ADB - Reuters June 2005
President ADB - Reuters June 2005President ADB - Reuters June 2005
President ADB - Reuters June 2005
 
Ada 3 kaoh
Ada 3 kaohAda 3 kaoh
Ada 3 kaoh
 
Reunião nº 3 Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013
Reunião nº 3   Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013Reunião nº 3   Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013
Reunião nº 3 Retrospectiva do Ano Rotário 2012-2013 - dia 17-07-2013
 
Lease Option Certification
Lease Option CertificationLease Option Certification
Lease Option Certification
 
Ada 4 sem 2
Ada 4 sem 2Ada 4 sem 2
Ada 4 sem 2
 
Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...
Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...
Reuniao nº 38 - Vizela do tempo de Roma ao sec. XX por Eng. Adelino Campante ...
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 

Ähnlich wie Lógica prog estruturada

Reutilização
ReutilizaçãoReutilização
Reutilizaçãoemjorge
 
Implementing Product Line Variabilities
Implementing Product Line VariabilitiesImplementing Product Line Variabilities
Implementing Product Line VariabilitiesMichel Alves
 
Aula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxAula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxItamarGoncalves2
 
Net uma revisão sobre a programação orientada a objetos
Net   uma revisão sobre a programação orientada a objetosNet   uma revisão sobre a programação orientada a objetos
Net uma revisão sobre a programação orientada a objetosLP Maquinas
 
Desenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefasDesenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefasEverton V. Tavares
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Luis Ferreira
 
Apresentação final
Apresentação finalApresentação final
Apresentação finalvalmon
 
Estruturação e modulação de um programa
Estruturação e modulação de um programaEstruturação e modulação de um programa
Estruturação e modulação de um programaJerônimo Medina Madruga
 
Logica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptxLogica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptxJoseVitorSantanadeMe
 
Padrões de projeto - Adapter, Proxy, Composite e Bridge
Padrões de projeto - Adapter, Proxy, Composite e BridgePadrões de projeto - Adapter, Proxy, Composite e Bridge
Padrões de projeto - Adapter, Proxy, Composite e BridgeLorran Pegoretti
 
Dru - Desenvolvimento para Reuso
Dru - Desenvolvimento para ReusoDru - Desenvolvimento para Reuso
Dru - Desenvolvimento para ReusoJuliana Cindra
 
Merlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginasMerlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginasMarcelo Mrack
 

Ähnlich wie Lógica prog estruturada (20)

Reutilização
ReutilizaçãoReutilização
Reutilização
 
Implementing Product Line Variabilities
Implementing Product Line VariabilitiesImplementing Product Line Variabilities
Implementing Product Line Variabilities
 
Aula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxAula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptx
 
Mvc delphi
Mvc delphiMvc delphi
Mvc delphi
 
poster
posterposter
poster
 
Net uma revisão sobre a programação orientada a objetos
Net   uma revisão sobre a programação orientada a objetosNet   uma revisão sobre a programação orientada a objetos
Net uma revisão sobre a programação orientada a objetos
 
Desenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefasDesenvolvimento de ferramenta para automação de tarefas
Desenvolvimento de ferramenta para automação de tarefas
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Modelo de desenvolvimento de software em 3 camadas para Wordpress
Modelo de desenvolvimento de software em 3 camadas para WordpressModelo de desenvolvimento de software em 3 camadas para Wordpress
Modelo de desenvolvimento de software em 3 camadas para Wordpress
 
Apresentação final
Apresentação finalApresentação final
Apresentação final
 
Trabalho individual
Trabalho individualTrabalho individual
Trabalho individual
 
Estruturação e modulação de um programa
Estruturação e modulação de um programaEstruturação e modulação de um programa
Estruturação e modulação de um programa
 
Rational Unified Process (RUP)
Rational Unified Process (RUP)Rational Unified Process (RUP)
Rational Unified Process (RUP)
 
Macro br
Macro brMacro br
Macro br
 
Programação de robo
Programação de roboProgramação de robo
Programação de robo
 
Logica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptxLogica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptx
 
Padrões de projeto - Adapter, Proxy, Composite e Bridge
Padrões de projeto - Adapter, Proxy, Composite e BridgePadrões de projeto - Adapter, Proxy, Composite e Bridge
Padrões de projeto - Adapter, Proxy, Composite e Bridge
 
Dru - Desenvolvimento para Reuso
Dru - Desenvolvimento para ReusoDru - Desenvolvimento para Reuso
Dru - Desenvolvimento para Reuso
 
Merlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginasMerlinferramentassbc2006 Revisado Em6paginas
Merlinferramentassbc2006 Revisado Em6paginas
 
Montagem
MontagemMontagem
Montagem
 

Mehr von Eduardo Paiossin (19)

Aula01 orçamento
Aula01   orçamentoAula01   orçamento
Aula01 orçamento
 
Aula01 hardware
Aula01   hardwareAula01   hardware
Aula01 hardware
 
Aula06
Aula06Aula06
Aula06
 
Aula05
Aula05Aula05
Aula05
 
Aula04
Aula04Aula04
Aula04
 
Aula03
Aula03Aula03
Aula03
 
Aula02
Aula02Aula02
Aula02
 
Aula01
Aula01Aula01
Aula01
 
TCC - Pós Graduação - Gerencia de Projetos - PMI
TCC - Pós Graduação - Gerencia de Projetos - PMITCC - Pós Graduação - Gerencia de Projetos - PMI
TCC - Pós Graduação - Gerencia de Projetos - PMI
 
Aula09
Aula09Aula09
Aula09
 
Aula09
Aula09Aula09
Aula09
 
Aula08
Aula08Aula08
Aula08
 
Aula07
Aula07Aula07
Aula07
 
Aula06
Aula06Aula06
Aula06
 
Aula05
Aula05Aula05
Aula05
 
Aula04
Aula04Aula04
Aula04
 
Aula03
Aula03Aula03
Aula03
 
Aula02
Aula02Aula02
Aula02
 
Aula01
Aula01Aula01
Aula01
 

Lógica prog estruturada

  • 1. Lógica de programação Prof: Eduardo Rossit Paiossin Prof: Leandro Maranim Dei Santi
  • 2. Conteúdo da aula Programação estruturada Modularização Procedimento Função Pag 319
  • 3. Programação estruturada No final dos anos 60 as empresas se depararam com um aumento crescente nos custos de fabricação de um software e isso gerou a crise do software. A fim de resolver esse problema surgiram vários tipos de programação. Como por exemplo a programação estruturada. Esse tipo de programação permite o desmembramento do programa em partes menores e mais fáceis de se programar/dar manutenção, além de ficarem bem mais simples de se entender.
  • 4. Programação estruturada Programação estruturada é uma forma de programação de computadores que preconiza que todos os programas possíveis podem ser reduzidos a apenas três estruturas: sequência, decisão e interação, desenvolvida por Michael A. Jackson no seu livro "Principles of Program Design" de 1975. Tendo, na prática, sido transformada na Programação modular, a Programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando as subrotinas e as funções. Foi a forma dominante na criação de software anterior à programação orientada por objetos.
  • 5. Modularização É um conceito de dividir um software em partes distintas (módulos). À medida que vamos resolvendo problemas mais complexos, o tamanho dos nossos programas vai crescendo, assim, fica difícil acompanhar as funcionalidades dos trechos de Programas. Esta técnica de decomposição em unidades funcionais, proveniente da programação estruturada, é conhecida como modularização. Estes trechos devem ser logicamente coerentes, isto é, cada um deve realizar uma função definida.
  • 6. Modularização Visa principalmente aspectos como confiabilidade, legibilidade, manutenção e flexibilidade. Tem como principais vantagens:  A independência entre os módulos permite uma manutenção mais simples e barata.  Pode ser desenvolvido em paralelo ao restante do algoritmo  Teste para correção de bugs podem ser feitos separadamante do programa.  Um módulo pode ser utilizado em outros algorítmos
  • 7. Procedimentos e funções Para criarmos módulos no nosso algoritmo existem os comandos procedimento e função. As ações do procedimento e função são hierarquicamente subordinadas a um algoritmo principal geralmente chamado “Módulo Principal” Dentro de um procedimento/função podem haver vários outros procedimento/funções. Os procedimentos e as funções podem utilizar objetos (constantes e variáveis) do módulo principal, definir seus próprios, ou ainda utilizar os dois.
  • 8. Procedimentos e funções Variáveis globais: São variáveis que podem ser utilizadas pelos procedimentos/funções internas ao módulo onde foi declarada. Variáveis locais: São variáveis que podem ser utilizadas apenas nos módulos em que foram criadas. Não em significado fora dele. Vejamos o exemplo na página 321.
  • 9. Procedimentos e funções Procedimento com parâmetros (pag 332) Passagem de parâmetro por valor: Na passagem por valor, os parâmetros de uma função funcionam como variáveis suas, ou seja NADA tem a ver com as variáveis da função que a chamou. Desta forma alterações nos valores desses parâmetros não interferem nos valores das variáveis da função chamadora.
  • 10. Procedimentos e funções Passagem de parâmetro por referência: No entanto pode ser interessante que uma variável na função chamadora possa ser alterada (ex: função que troque o valor de duas variáveis). Ou mesmo haja a necessidade de se retornar mais de um valor da função (pois com o return só é possível retornar um único valor). Para esses casos, algumas linguagens permitem a passagem de parâmetros por referência, onde uma variável passada como parâmetro ao ser alterada dentro da função tem seu valor alterado também na função chamadora (é na verdade uma única variável usada por ambas as fuções).
  • 11. Procedimentos e funções “O que são Parâmetros de Entrada e Saída” Função: Assemelha-se muito ao procedimento, porém sempre há o retorno de um valor. Exemplo pagina 339
  • 12. Exercício 1) Crie um algoritmo que chame uma função que calcula a média de 100 alunos e depois imprima essa média. 2) Crie um algoritmo que chame uma procedimento que calcule e imprima a média de 100 alunos e depois imprima essa média. 3) Crie um algoritmo que passe o nome e o endereço de um aluno para um procedimento. Esse procedimento vai imprimir essas informações juntamente com o nome da instituição “SENAC” para obter o nome da instituição o procedimento chamará a função IMPRIME_INSTITUIÇAO que também deve ser criada
  • 13. Bibliografia Para a preparação da aula foi utilizado o livro do curso entregue pelo SENAC e Modularização. MODULARIZAÇÃO Disponível em: <http://correio.fdvmg.edu.br/downloads/DET111/Parte1 _Modulariaza%E7%E3o.pdf> Acesso em: 02 MAIO. 2011, 21:00:00.