Exercícios

Exercício 1

PARTE A

Escreva uma função separa, que recebe um string texto e um caractere separador. A função “corta” o texto nos separadores, retornando uma lista com as palavras do texto.

Exemplo:

para o texto: “,1,,2,3,” a saída deve ser a lista: [‘’, ‘1’, ‘’, ‘2’, ‘3’, ‘’] onde ‘’ indica uma palavra vazia (entre 2 separadores consecutivos).

PARTE B

Usando a função do item anterior, escreva um programa que leia uma linha com palavras separadas por vírgula, e determina o comprimento da maior palavra. A linha pode conter palavras vazias.

PARTE C

Escreva o programa da parte B usando a função split().

Exercício 2

Escreva um programa que leia vários números reais em uma mesma linha, e imprima a soma.

Exercício 3

Escreva um programa que leia um arquivo contendo ao menos 1 número real por linha, e para cada linha imprima a sua soma. Ao final, o programa deve imprimir também a soma total. Exemplo: para o arquivo numeros.txt com:

5 4 3 2 1
4 4 4
2.7
3.14 2.1

a saída deve ser:

Digite o nome do arquivo: numeros.txt
Soma = 15.000000
Soma = 12.000000
Soma = 2.700000
Soma = 5.240000
Total = 34.940000

Dessa vez, use um editor como o Idle no seu computador para escrever o programa.

Exercício 4

Parte A

Escreva uma função com protótipo

def insereSeNovo (nome, lista):
    ''' (str, list) -> int
        modifica a lista, inserindo nome na lista.
        Retorna a posição de nome na lista ou None caso ele já exista.
    '''

que devolve a posição em que o string x ocorre em lista ou, caso x não estiver na lista, insere x no final da lista e devolve o índice dessa posição.

Parte B

Escreva um programa que leia uma sequência de nomes e, usando a função do item anterior, conte quantas vezes cada nome ocorre na sequência.

Exemplo:

  • Para n = 7 e a sequência Neimar Messi Kaka Neimar Neimar Messi Zico

  • a saída deve ser:

    Neimar ocorre 3 vezes
    Messi ocorre 2 vezes
    Kaka ocorre 1 vezes
    Zico ocorre 1 vezes
    
Você já fez das atividades dessa página