Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal do Rio de Janeiro Turma EP1 1ª Prova de Computação I 2 de outubro de 2017 Questão 1: Sistema de Caixa. (peso 1.0) total = 0 voucher = 0 while True: item = raw_input('Item: ') if item == '': break quantidade = input('quantidade: ') valor = input('valor unitário R$: ') if voucher < valor * quantidade: total += quantidade * valor - voucher voucher = 0.1 * valor * quantidade print 'Voce ganhou um voucher de R$ %.2f para a sua próxima compra!' \ % (voucher) print print print "Total: R$ %.2f" % total Questão 2: Reeborg o fazendeiro (peso 1.0) def turn_right(): for i in range(3): turn_left() def turn_around(): for i in range(2): turn_left() def move_to_wall(): while front_is_clear(): move() ''' pre-condicao: Reeborg de frente para o Leste com pelo menos uma rua acima dele pos-condicao: Reeborg de frente para o Leste na rua acima ''' def proxima_linha(): turn_left() move() turn_right() ''' pre-condicao: Reeborg sobre um beeper, de frente para o Leste pos-condicao: Reeborg na avenida 1 da mesma rua de frente para o Leste, O beeper que ele carregava esta agora na Avenida 1 ''' def leva_beeper_para_casa(): pick_beeper() turn_around() move_to_wall() turn_around() put_beeper() ''' pre-condicao: Reeborg nao estah de frente para uma parede pos-condicao: Reeborg andou ate encontrar um beeper ou uma parede ''' def procura_beeper(): move() while front_is_clear() and not on_beeper(): move() ''' pre-condicao: Reeborg de frente para o Leste, no inicio de uma rua pos-condicao: Reeborg na mesma posicao, mas todos os beepers na rua foram trazidos para a avenida 1 ''' def arruma_linha(): procura_beeper() while on_beeper(): leva_beeper_para_casa() procura_beeper() turn_around() move_to_wall() turn_around() arruma_linha() while left_is_clear(): proxima_linha() arruma_linha() turn_off() Questão 3: Tkinter (peso 1.0) from Tkinter import * from time import * LARGURA = 600 ALTURA = 400 DX = 5 PAUSA = 0.03 canvas = Canvas(bg='yellow', width=LARGURA, height=ALTURA) canvas.pack() carroceria = canvas.create_rectangle(10, 30, 110, 80, fill='blue') roda1 = canvas.create_oval(20, 70, 40, 90, fill='red') roda2 = canvas.create_oval(80, 70, 100, 90, fill='red') parabrisa = canvas.create_rectangle(80, 40, 110, 60, fill='cyan') while True: canvas.update() sleep(PAUSA) canvas.move(carroceria, DX, 0) canvas.move(roda1, DX, 0) canvas.move(roda2, DX, 0) canvas.move(parabrisa, DX, 0) x0, y0, x1, y1 = canvas.coords(carroceria) if x1 >= LARGURA: canvas.delete(ALL) carroceria = canvas.create_rectangle(10, 30, 110, 80, fill='blue') roda1 = canvas.create_oval(20, 70, 40, 90, fill='red') roda2 = canvas.create_oval(80, 70, 100, 90, fill='red') parabrisa = canvas.create_rectangle(80, 40, 110, 60, fill='cyan') mainloop()
Compartilhar