PROGRAMAÇÃO EM JOGOS DIGITAIS Frutuoso Silva Linguagem de Programação Python --- www.python.org 1 Instrução condicional – if if/else if/elif/else ! Uma instrução condicional executa um bloco de instruções dependendo do valor lógico de uma expressão; # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é o maior” else: print "A não é o maior" BLOCO DE INSTRUÇÕES CRIA-SE POR IDENTAÇÃO Ex: Tab ou espaços; Instrução condicional if/else Uma instrução Um bloco de instruções # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é o maior” else: print "A não é o maior" # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é o maior” print ”B é o menor” else: print "A não é o maior" print ”B é o maior" 2 Instrução condicional if/elif/else ! IF / ELIF / ELSE # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é maior que B" elif b > a: print "B é maior que A" else: print "A e B são iguais" Instrução condicional if/elif/else ! IF / ELIF / ELSE # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é maior que B" elif b > a: print "B é maior que A" else: print "A e B são iguais" Se a > b for verdadeiro 3 Instrução condicional if/elif/else ! IF / ELIF / ELSE # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é maior que B" elif b > a: print "B é maior que A" else: print "A e B são iguais" Se b > a for verdadeiro Instrução condicional if/elif/else ! IF / ELIF / ELSE # -*- coding: utf-8 -*a=6 b = 11 if a > b: print "A é maior que B" elif b > a: print "B é maior que A" else: print "A e B são iguais" Caso contrário, ou seja, se as anteriores forem todas falsas 4 Instrução condicional ! IF usado entre parêntises print ("A é maior" if a > b else "A não é maior") #Uma via apenas - if if a > b: print ("A é maior”) Instrução condicional ! Permite alterar o fluxo do programa de acordo com o valor lógico de uma expressão Não Bloco 1 A>B Sim Bloco 2 5 Leitura de dados ! Para o utilizador introduzir um valor utiliza-se a função: ! input() ! raw_input() print "How old are you?", age = raw_input() #ou age = input() Leitura de dados ! A função raw_input() print "How old are you?", age = raw_input() print "How tall are you?", height = raw_input() print "How much do you weigh?", weight = raw_input() print "So, you're %r old, %r tall and %r heavy." % ( age, height, weight) 6 Leitura de dados A função raw_input vs. input() # Not run well with raw_input() !!! Try it with input() ! day = raw_input("Introduce the day of the month: ”) if day < 10: print "We are in the beginning of the month!" elif day > 20: print "We are in the ending of the month!" else: print "We are in the middle of the month!" Python - practice Operações matemáticas ! Variáveis ! Leitura de dados ! ! Fazer os exercícios da folha – Lab2.pdf 7 Instrução de repetição ! ! ! O Python tem apenas duas instruções de repetição: while repete um bloco de instruções enquanto a sua condição de controle for verdadeira; for permite iterar sobre os elementos de uma lista ou de uma sequência; Instrução de repetição ! while i = 0 while i < print i = i print 6: "At the top i is %d" % i + 1 "At the bottom i is %d" % i print ”\nIn the end i is %d" % i 8 Instrução de repetição while <condição>: <instruções> continue break else: <instruções> Instrução de repetição while <condição>: <instruções> continue break else: <instruções> i = 12 while i<12: print "Now i is %d" % i i = i + 1 else: print ”End - i is %d" % i O que faz este código? 9 Instrução de repetição while <condição>: <instruções> continue break else: <instruções> i = 6 while i<12: print "Now i is %d" % i if (i==8): i = i + 5 continue i = i + 1 else: print ”End - i is %d" % i O que faz este código? Instrução de repetição while <condição>: <instruções> continue break else: <instruções> i = 6 while i<12: print "Now i is %d" % i i = i + 1 if (i==9): break else: print ”End - i is %d" % i O que faz este código? 10 Instrução de repetição ! for for i in range(5): print(" Hello ") print(" There ") Instrução de repetição ! for for item in <sequencia>: <instruções> continue break else: <instruções> 11 Instrução de repetição ! for for item in <sequencia>: <instruções> continue break else: <instruções> for i in range(10): print(i) O que faz este código? Instrução de repetição ! for for item in <sequencia>: <instruções> continue break else: <instruções> for i in range(10): print(i) if (i==7): break O que faz este código? 12 Instrução de repetição ! for for i in range(10): for i in range(10): print(i) print(i) if (i==7): break else: else: print “End” print “End” Qual o resultado destes códigos? Instrução de repetição for i in range(1 ,11): print(i) #print the even numbers 1..10 for i in range(2 ,12 ,2): print(i) #print the even numbers 1..10 for i in range(5): print((i+1)*2) 13 Instrução de repetição for i in range(1 ,11): print(i) I=2 I = I +2 #print the even numbers 1..10 for i in range(2 ,12 ,2): print(i) I < 12 #print the even numbers 1..10 for i in range(5): print((i+1)*2) Python - practice Instruções de selecção ! Leitura de dados ! ! Fazer exercícios da folha – Lab3.pdf 14