Você está na página 1de 4

1. Deseja-se fazer uma pesquisa a respeito do consumo mensal de energia eltrica em uma determinada cidade.

Para isso, so fornecidos os seguintes dados:


a) b) c) d) e) f)

preo do kWh consumido para a categoria residencial preo do kWh consumido para a categoria comercial preo do kWh consumido para a categoria industrial nmero do consumidor quantidade de kWh consumidos no ms cdigo do tipo de consumidor (0 - residencial, 1 comercial, 2 industrial)

Ateno: os itens a, b, e c acima sero fornecidos apenas uma vez. Os demais dados so fornecidos uma vez para cada consumidor, logo podem ser fornecidos zero ou mais vezes. O nmero de consumidor zero deve ser usado como finalizador de leitura de dados, e no deve ser levado em considerao nos clculos. Faa um algoritmo que leia todas essas informaes e calcule:
o o o o o

para cada consumidor, o total a pagar; o maior consumo verificado (no importa a categoria, apenas o nmero de kWh consumido por um nico usurio) o menor consumo verificado o total de consumo para cada uma das trs categorias de consumidores a mdia geral de consumo

2. Contador de palavras Escreva um programa em Python que leia um texto digitado pelo usurio e informe quantas linhas, palavras e caracteres existem nesse texto. Suponha por exemplo que o texto contenha o seguinte trecho do poema Poema de sete faces de Carlos Drummond de Andrade.
Mundo mundo vasto mundo se eu me chamasse Raimundo seria uma rima, no seria uma soluo. Mundo mundo vasto mundo, mais vasto meu corao.

Dado esse texto, seu programa deveria gerar a seguinte sada:


Linhas = 5 Palavras = 25 Caracteres = 140

Para a finalidade desse programa, voc pode considerar que as palavras so separadas por espaos em branco. Voc no deve incluir na contagem de caracteres os caracteres de mudana de linha. 3. Histogramas Escreva um programa que leia uma lista de notas de provas (uma nota por linha) e ento imprima um histograma (grfico de barras, conforme ser mostrado no final do

enunciado desta questo) desses nmeros divididos pelas faixas 0-9, 10-19, 20-29, e assim por diante, at a faixa contendo somente a nota 100. Se, por exemplo, forem digitadas as seguintes notas:
73 58 73 93 82 62 80 53 93 52 92 75 65 95 23 100 75 38 80 77 92 60 98 95 62 87 97 73 78 72 55 58 42 31 78 70 78 74 70 60 72 75 84 87 62 17 92 78 74 65 90

seu programa deveria gerar a seguinte sada:


00-09: 10-19:* 20-29:* 30-39:** 40-49:* 50-59:***** 60-69:******* 70-79:***************** 80-89:****** 90-99:********** 100:*

4. Nomes nicos Escreva um programa que pea ao usurio uma lista de nomes (um por linha) at que o usurio entre com uma linha em branco (isto , quando o programa solicita um novo nome, ele apenas aperta a tecla de Enter). Nesse ponto, o programa deve imprimir a relao de nomes fornecidos pelo usurio, onde cada nome listado apenas uma nica vez, no importando o nmero de vezes que o usurio tenha fornecido o nome ao programa. Um exemplo de execuo do programa visto a seguir:
Novo nome: Novo nome: Novo nome: Novo nome: Novo nome: Novo nome: Novo nome: Novo nome: Relao de Alice Roberto Carla Douglas Alice Roberto Alice Carla Douglas Douglas Douglas nomes no duplicados:

6. Trabalhando com matrizes Um a matriz transposta o resultado da troca de linhas por colunas em uma determinada matriz. O programa mostrado a seguir efetua a troca das linhas pelas colunas de uma matriz fornecida pelo usurio como entrada.
#Programa para inverter uma matriz em python 2.x def le_dados(): dado_lido = None matriz = [] while True: dado_lido = input('Digite uma linha da matriz. Para finalizar digite 0 ') if dado_lido == '0': break matriz.append(list(eval(dado_lido)))

for linha in matriz[1:]: if len(linha) != len(matriz[0]): return -1 return matriz def inverte_matriz(matriz): # Aqui entra o seu cdigo ...... def mostra_matriz(matriz): for linha in matriz: for elemento in linha: print '%d\t' % elemento, print '\n' if __name__ == '__main__': matriz = le_dados() if matriz == -1: print ('Matriz no contem dados vlidos. Terminando...') exit() print ('\nMatriz Original\n') mostra_matriz(matriz) matriz = inverte_matriz(matriz) print ('\nMatriz Transposta\n') mostra_matriz(matriz)

Em seguida apresentado o resultado gerado pela execuo do programa. Digite uma linha da matriz. Para finalizar digite 0 1,2,3,4 Digite uma linha da matriz. Para finalizar digite 0 5,6,7,8 Digite uma linha da matriz. Para finalizar digite 0 9,0,1,2 Digite uma linha da matriz. Para finalizar digite 0 3,4,5,6 Digite uma linha da matriz. Para finalizar digite 0 0 Matriz Original 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 Matriz Transposta 1 5 9 3 2 6 0 4 3 7 1 5 4 8 2 6 Sua tarefa escrever ao cdigo da funo inverte_matriz(matriz).