Portuguese, Brazilian subtitles

← 05-51 Comparing Languages Solution

05-51 Comparando Linguagens - Solução

Get Embed Code
3 Languages

Subtitles translated from English Showing Revision 1 created 02/14/2013 by Lucilia Figueiredo.

  1. Vamos ver as respostas juntos.
  2. Quando eu executo este programa, começamos com x = 0,
  3. e então este while loop diz: enquanto True é True, continue incrementando x.
  4. Então, agora x é 1, 2, 3, 4, 5,
  5. e nunca chegamos de fato a esta linha do print.
  6. Então, este programa imprime 0? Claro que não.
  7. O controle de fluxo vem para cá, aqui, aqui, depois de volta,
  8. e permanecemos neste loop para sempre.
  9. Ele não imprime este grande número 4294967296,
  10. que é, eu acho, muito próximo de, digamos, 2 elevado a 32.
  11. Esta seria uma opção razoável, se você pensasse que
  12. "Oh, o inteiro será o máximo valor possível, com base no hardware do computador". --
  13. Se pensasse que isso resulta em uma exceção.
  14. Alguns interpretadores Python mal feitos podem levantar uma exceção neste caso, mas não deveriam.
  15. Se temos recursos computacionais ilimitados, isso deveria executar para sempre.
  16. De modo análogo, isso nunca imprime -1.
  17. A resposta ocorrera é nenhuma dessas opções. O programa fica em loop para sempre.
  18. Ok. Então, se este programa fica em loop para sempre, e estamos escrevendo um interpretador
  19. Que simula exatamente este programa, seguindo todos os seus passos,
  20. Nosso interpretador também irá ficar em loop para sempre.
  21. Se alguém escrevesse este programa em JavaScript
  22. e o colocasse no meio de uma página web, nosso browser ficaria em loop para sempre,
  23. e nunca iria exibir a página resultante.