Prof. Sérgio Souza Costa

Disciplina: Estrutura de Dados

Curso: Licenciatura em Informática

Conteúdo: Revisão de Programação, Orientação a Objetos e Listas

Observação: Para as questões 4 e 5, experimentem usar compreensão de lista.

  1. Escreva uma função (iterativa) que calcula o fatorial de um dado número.

  2. Escreva um programa que leia um número N inteiro qualquer e mostre na tela os N primeiros elementos de uma Sequência de Fibonacci.

  3. Escreva uma função calcula_maximo que receba como entrada uma lista de números inteiros e retorne o maior valor na lista. Por exemplo, calcula_maximo([4,3,6,1,2]) deve retornar 6. (Observação: existe a função max que faz isso, mas você não deve usá-la.)

  4. Escreva uma função soma_impares que receba uma lista de números inteiros e retorne a soma dos números ímpares na lista. Por exemplo, soma_impares([11,20,36,41,55,6]) deve retornar 107.

  5. Escreva uma função quantidade_palavras_5 que receba uma lista de palavras e retorne o número de palavras na lista que tenham comprimento 5. Por exemplo, quantidade_palavras_5(['Brasil','peralta','mesa','lance','teste']) deve retornar 2.

  6. Escreva uma função eh_palindroma que recebe como entrada uma string e retorna um valor booleano indicando se a string é palíndroma ou não. Por exemplo, eh_palindroma('arara') deve retorna True. (Dica: use a função reverse).

  7. Crie uma lista chamada minha_lista com os seguinte items: 76, 92.3, “oi”, True, 4, 76. Depois realizem as seguintes operações.

    a) Inserir “laranja” e 76 no final da lista.

    b) Inserir “gato” na posição de índice 3.

    c) Inserir 99 no início da lista.

    d) Encontrar o índice de “oi”.

    e) Contar o número de ocorrências de 76 na lista.

    f) Remover a primeira ocorrência de 76 da lista.

    g) Remover True da lista usando pop e index.

  8. Crie uma classe que represente um Discente com as seguintes informações: Nome, Matricula, Ano de Ingresso, Semestre de Ingresso (1 ou 2), Sexo (M,F) e Ano de Nascimento.

  9. Considerando a classe definida anteriormente, implemente uma função que imprima os dados dos discentes agrupados por Sexo. Por exemplo, primeiro mostrar todos do Sexo feminino e depois masculino, ou vice-versa.