Para amanhã, 22/07

Para amanhã, 22/07

par Jose Coelho de Pina Junior,
Nombre de réponses : 0

Olás,

Nas últimas reuniões temos contruído um módulo de nome matriz.py para manipularmos de matrizes. Este módulo está disponível com os rascunhos da última reunião. Amanhã vamos utilizar as funções desse módulo.

Antes da nossa reunião de amanhã de madrugada procurem dar uma olhada nas simulações a seguir que envolvem a criação de matrizes e a função gire_horizontal() da reunião de ontem:

  • aqui tem uma simulação e
  • aqui tem outra

Essas duas versões têm o mesmo comportamente? Olhando para o resultado do print() parece que têm, certo?! Mas olhando para as flechas …

Procurem lembrar dos nossos mantras:

  • atribuções não criam nada, apenas criam ou alteram um apelido;
  • posições de listas e de matrizes são apelidos para coisas/objetos;
  • antes de entrar no elevador, verifique se ele está parado no andar

Criar uma matriz é meio embaçado. Talvez seja melhor deixar esse serviços para funções como a init_matriz() que ganha a vida fazendo isso.

té +,
hitoshi e coelho

P.S. Aqui vai a lista de funções que temos em matriz.py:

  • init_matriz(nlins, ncols, val=0): cria uma matriz de dimensão nlins×ncols
  • leia_matriz(): invólocro para leia_matriz_teclado() e leia_matriz_arquivo()
  • leia_matriz_teclado(): para leitura de matrizes através de digitação no teclado
  • leia_matriz_arquivo(nome_arq): para leitura de matrizes de arquivos
  • exiba_matriz(mt): exibe a matriz mt
  • str_matriz(mt): retorna uma string que representa mt
  • grave_matriz(mt, nome_arq): cria um arquivo nome_arq e grava mt nesse arquivo
  • simetrica(mt): verifica se mt é simetrica
  • linhas_val(mt, val): conta linhas com todos valores iguais a val
  • colunas_val(mt, val): conta colunas com todos valores iguais a val
  • diagonais(mt, val): verifica se diagonais têm apenas valor val
  • gire_horizontal(no): retorna uma matriz que é mt de “ponta-cabeça”
  • gire_vertical(): retorna uma matriz que é mt “refletida” no espelho
  • rode_dir(mt): retorna uma matriz que é mt rotacionada para a direita
  • rode_esq(mt): retorna uma matriz que é mt rotacionada para a direita
  • prod(mtA, mtB): retorna o produto da mtA por mtB (exercício)