3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamentos de Programação

1.775 visualizações

Publicada em

Fundamentos da Programação 3:
• Funções/repórteres e listas em Snap!
• Utilizações típicas de variáveis

Apresentação 3 da unidade curricular de Fundamentos de Programação da Universidade Europeia. Alterações de Manuel Menezes de Sequeira sobre versão original por vários autores do DCTI do ISCTE-IUL, incluindo Luís Nunes, Ricardo Ribeiro, André Santos e o próprio Manuel Menezes de Sequeira.

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.775
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1.157
Ações
Compartilhamentos
0
Downloads
60
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamentos de Programação

  1. 1. Funções/repórteres e listas em Snap! Utilizações típicas de variáveis 2013/2014 Fundamentos de Programação 1
  2. 2.  Programação como arte de resolver problemas  Algoritmo como sequência finita de instruções que resolvem um dado problema  Implementação de algoritmos em Snap!  Variáveis  Instruções de selecção  Iterações e ciclos  Instruções de leitura/escrita 2013/2014 Fundamentos de Programação 22
  3. 3.  Conjunto de instruções com entradas bem definidas e que calcula um determinado valor (a sua saída)  Definição  Nome (reflecte o que a função/repórter calcula)  Entradas (ou parâmetros)  Instruções que executam o cálculo  Instruções que reportam (ou devolvem) o resultado 2013/2014 Fundamentos de Programação 3
  4. 4.  Completar frase «Actor, esta função/repórter devolve/reporta …» 2013/2014 Fundamentos de Programação 4
  5. 5. 2013/2014 Fundamentos de Programação 5 Reportar ou devolver o valor calculado. Introdução à Programação Variável local. Acessível apenas dentro da função. Corpo ou implementação da função. Cabeçalho ou protótipo. Entrada ou parâmetro.
  6. 6. 2013/2014 Fundamentos de Programação 6Introdução à Programação Argumento. Um argumento por cada parâmetro.
  7. 7. 2013/2014 Fundamentos de Programação 7 Entradas. Saída. Passos: Cálculo do mínimo. Pode transformar-se em função. Algoritmo simplório.
  8. 8. 2013/2014 Fundamentos de Programação 8 definição… invocação…
  9. 9. 2013/2014 Fundamentos de Programação 9 Algoritmo de Euclides.
  10. 10. 2013/2014 Fundamentos de Programação 10 Algoritmo de Euclides na sua forma recursiva.
  11. 11.  Devem limitar-se a cálculo em causa  Não devem ter efeitos laterais  Mas ler do teclado e escrever no ecrã são efeitos laterais! Logo...  ... Funções/repórteres não devem ler do teclado ou escrever no ecrã! 2013/2014 Fundamentos de Programação 11
  12. 12. 2013/2014 Fundamentos de Programação 12  Modularização  Código colocado em módulo com função bem definida  Facilita reutilização: define-se uma vez, usa-se muitas  Encapsulamento  Implementação irrelevante para quem usa a função  Reduz complexidade  Favorece abstracção  Aumenta clareza
  13. 13.  Objecto que guarda sequência de itens  Ordem dos itens relevante  Identificação de valores usando índices  Índice do primeiro valor: um ou zero  Exemplo 2013/2014 Fundamentos de Programação 13 Índices. Itens com valores. Lista lista. 8 4 2 0 1 1 0 7 1 2 3 4 5 6 7 8 lista Snap! Java Mentirita! lista é na realidade uma referência para uma lista algures na memória.
  14. 14. 2013/2014 Fundamentos de Programação 14 0 0 0 0 0 1 2 3 4 5 uma lista 2 0 5 8 1 2 3 4 outra lista personalizado...
  15. 15. 2 0 5 8 1 2 3 4 outra lista 0 0 0 0 0 1 2 3 4 5 uma lista 2013/2014 Fundamentos de Programação 15 Reporta comprimento da lista passada como argumento. Reporta valor do item na posição passada como 1.º argumento da lista passada como 2.º argumento.Altera o valor do item na posição dada pelo 1.º argumento da lista passada como 2.º argumento para o valor passado como 3.º argumento. Reporta o 3.º item de «outra lista», com valor 5. Reporta 5. Altera para 7 o valor do 3.º item de «outra lista», antes com o valor 5.
  16. 16.  Iteração  Contagem  Acumulação  Memória temporária  Etc. 2013/2014 Fundamentos de Programação 16
  17. 17.  Variável com valores sucessivos correspondentes índices de lista (indexação), etc.  Exemplo 2013/2014 Fundamentos de Programação 17 Variável para iteração.
  18. 18.  Variável guardando valor de contagem  Exemplo 2013/2014 Fundamentos de Programação 18 Variável para contagem.
  19. 19.  Variável guardando acumulação de operação  Exemplo 2013/2014 Fundamentos de Programação 19 Variável para acumulação da soma.
  20. 20.  Variável guardando acumulação de operação  Exemplo 2013/2014 Fundamentos de Programação 20 Variável para “acumulação” do máximo.
  21. 21.  Variável para guardar valor temporariamente  Exemplo 2013/2014 Fundamentos de Programação 21 Variável para memória temporária.
  22. 22.  Snap!  Funções/repórteres  Listas  Utilizações típicas de variáveis  Iteração  Contagem  Acumulação (casos especiais)  Memória temporária 2013/2014 Fundamentos de Programação 2222
  23. 23.  Funções/repórteres e listas em Snap!  Utilizações típicas de variáveis 2013/2014 Fundamentos de Programação 23

×