1-) Dada uma função que recebe um parâmetro numérico inteiro maior que zero, ela imprime a sequência de zero até o número. Escreva uma versão usando loop e uma que usa recursão.
2-) Dada uma função que recebe como parâmetros uma lista de números e o tamanho da lista, escreva uma versão que soma todos os valores da lista usando loop e uma usando recursão.
3-) Escreva uma classe Veículo com pelo menos 3 variáveis de instância e 3 funções típicas que um veículo, qualquer tipo, pode executar. Crie uma classe Carro e uma Avião que herdam da classe veículo. Inclua pelo menos uma variável de instância e uma função nova e exclusivas em cada uma destas classes.
4-) Crie uma classe Graph que representa um grafo na forma de uma lista de adjacências. Esta classe precisa ter, além do construtor, uma função para inserir um vértice e uma para retornar quais arestas ele tem (valores passados como parâmetros da função); uma função para remover uma aresta ligando dois vértices (vértices são passados como parâmetros - pensem em qual o tipo do parâmetro); e uma função que remove inteiramente um vértice e as arestas dele, inclusive nos outros elementos da lista de adjacências.
Exercício 01
Segue um exemplo de código em Portugol para imprimir a sequência de zero até um número n, utilizando um loop for: Algoritmo SequenciaNumerica // declaração de variáveis inteiro n // entrada de dados escreva("Digite um número inteiro maior que zero: ") leia(n) // impressão da sequência numérica para i de 0 ate n faca escreva(i, " ") fimpara FimAlgoritmo Para a versão utilizando recursão, segue o exemplo em Portugol: Algoritmo SequenciaNumericaRecursiva // função recursiva para imprimir a sequência numérica funcao imprimirSequencia(num) se num > 0 entao imprimirSequencia(num - 1) escreva(num, " ") fimse fimfuncao // declaração de variáveis inteiro n // entrada de dados escreva("Digite um número inteiro maior que zero: ") leia(n) // chamada da função recursiva imprimirSequencia(n) FimAlgoritmo
Exercício 02
// Função que soma os valores de uma lista usando loop funcao somaListaLoop(lista, tamanho) inicio soma = 0 para i de 0 ate tamanho-1 faca soma = soma + lista[i] fimPara retorne soma fimFuncao // Função que soma os valores de uma lista usando recursão funcao somaListaRecursao(lista, tamanho) inicio se tamanho == 1 entao retorne lista[0] senao retorne lista[tamanho-1] + somaListaRecursao(lista, tamanho-1) fimSe fimFuncao // Exemplo de uso das funções lista = [1, 2, 3, 4, 5] tamanho = 5 somaLoop = somaListaLoop(lista, tamanho) somaRecursao = somaListaRecursao(lista, tamanho) escreva("Soma usando loop: ", somaLoop) escreva("Soma usando recursão: ", somaRecursao)
Exercício 03:
// Classe Veículo classe Veículo: // Variáveis de instância inteiro anoFabricacao decimal preco caractere cor // Funções típicas função acelerar(): escreva("Veículo acelerando!") função frear(): escreva("Veículo freando!") função virar(): escreva("Veículo virando!") // Classe Carro classe Carro herda Veículo: // Variáveis de instância exclusivas inteiro numPortas // Função exclusiva função abrirPorta(): escreva("Carro abrindo porta!") // Classe Avião classe Avião herda Veículo: // Variável de instância exclusiva decimal altitudeMaxima // Função exclusiva função voar(): escreva("Avião voando!")
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar