2
CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DO PIAUÍ CURSO: Técnico em Informática DISCIPLINA: Lógica de Programação / Algoritmos e Linguag. de Programação PROFESSOR: Regis Pires Magalhães LISTA DE EXERCÍCIOS 05 SUBALGORITMOS: FUNÇÕES E PROCEDIMENTOS 1. Escreva um algoritmo para obter uma palavra e: a) Determinar o seu tamanho. b) Exibi-la completamente em caixa alta (letras maiúsculas). c) Exibi-la ao contrário e totalmente em letras minúsculas. 2. Dada uma palavra, exibir sua abreviação, usando suas 3 primeiras letras em caracteres maiúsculos. Exibir um traço (-) antes e depois da abreviação. Exemplos: Para a palavra Domingo, mostrar -DOM-. Para a palavra Agosto, mostrar - AGO-. 3. Escreva um programa para receber uma palavra e exibir as letras que estejam em posições ímpares. Exemplo: para a palavra Borboleta, exibir: Broea. Palavra.........: B o r b o l e t a ^ ^ ^ ^ ^ Posição da letra: 1 2 3 4 5 6 7 8 9 4. Escreva um procedimento chamado repete para receber como parâmetros uma cadeia de caracteres e um número n. Ao recebê-los, o procedimento deve exibir essa mesma cadeia de caracteres n vezes. Escreva um algoritmo em pseudocódigo para receber uma palavra e, usando o procedimento repete, exibir essa palavra 10 vezes. 5. Escreva um procedimento chamado intervalo que recebe dois parâmetros inteiros e exibe todos os números inteiros entre eles. O procedimento deve fazer parte de um algoritmo em pseudocódigo que lê dois números e que chama o procedimento intervalo passando como parâmetros os dois números recebidos. Exemplo: usando os números 2 e 7 como entrada, exibir o seguinte resultado: 2 3 4 5 6 7. 6. Escreva um procedimento de nome tipo_triangulo que receba 3 parâmetros representando os lados de um triângulo e imprima o tipo dele (eqüilátero, isósceles ou escaleno). Escreva um algoritmo em pseudocódigo para receber o tamanho dos 3 lados de um triângulo e usar o procedimento tipo_triangulo para exibir o tipo dele. 7. Escreva um procedimento de nome troca para receber como parâmetros 2 números inteiros e trocar o conteúdo entre eles. Escreva um algoritmo em pseudocódigo para receber 2 números e usar o procedimento troca para permutar o conteúdo entre eles. 8. Escreva uma função chamada triplo que recebe um parâmetro inteiro e retorna o triplo do número passado como parâmetro. Escreva um algoritmo em pseudocódigo para receber 100 elementos e, usando a função triplo, exiba o triplo de todos os seus elementos. 9. Escreva uma função de nome numero_extenso que recebe como parâmetro um número inteiro no intervalo de 1 a 3 e retorna uma cadeia de caracteres contendo o extenso do número recebido como parâmetro. A função deve fazer parte de um algoritmo em pseudocódigo que lê um número e usa a função numero_extenso para exibir o extenso do número digitado. 10. Escreva uma função de nome maior que recebe dois números e retorna o maior entre eles. Escreva um algoritmo em pseudocódigo para receber dois números e, usando a função maior, exiba o maior dos dois números dados. 11. Escreva um algoritmo para receber 10 números reais e armazená-los em um vetor. Depois disso, mostre o somatório dos números, através do uso da função somatorio, que não recebe parâmetro nenhum, acessa o vetor definido globalmente e retorna o somatório dos elementos do vetor.

Lista Exercicios 05

Embed Size (px)

Citation preview

Page 1: Lista Exercicios 05

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DO PIAUÍCURSO: Técnico em InformáticaDISCIPLINA: Lógica de Programação / Algoritmos e Linguag. de ProgramaçãoPROFESSOR: Regis Pires Magalhães

LISTA DE EXERCÍCIOS 05

SUBALGORITMOS: FUNÇÕES E PROCEDIMENTOS

1. Escreva um algoritmo para obter uma palavra e:a) Determinar o seu tamanho.b) Exibi-la completamente em caixa alta (letras maiúsculas).c) Exibi-la ao contrário e totalmente em letras minúsculas.

2. Dada uma palavra, exibir sua abreviação, usando suas 3 primeiras letras em caracteres maiúsculos. Exibir um traço (-) antes e depois da abreviação. Exemplos: Para a palavra Domingo, mostrar -DOM-. Para a palavra Agosto, mostrar -AGO-.

3. Escreva um programa para receber uma palavra e exibir as letras que estejam em posições ímpares. Exemplo: para a palavra Borboleta, exibir: Broea.

Palavra.........: B o r b o l e t a ^ ^ ^ ^ ^ Posição da letra: 1 2 3 4 5 6 7 8 9

4. Escreva um procedimento chamado repete para receber como parâmetros uma cadeia de caracteres e um número n. Ao recebê-los, o procedimento deve exibir essa mesma cadeia de caracteres n vezes. Escreva um algoritmo em pseudocódigo para receber uma palavra e, usando o procedimento repete, exibir essa palavra 10 vezes.

5. Escreva um procedimento chamado intervalo que recebe dois parâmetros inteiros e exibe todos os números inteiros entre eles. O procedimento deve fazer parte de um algoritmo em pseudocódigo que lê dois números e que chama o procedimento intervalo passando como parâmetros os dois números recebidos. Exemplo: usando os números 2 e 7 como entrada, exibir o seguinte resultado: 2 3 4 5 6 7.

6. Escreva um procedimento de nome tipo_triangulo que receba 3 parâmetros representando os lados de um triângulo e imprima o tipo dele (eqüilátero, isósceles ou escaleno). Escreva um algoritmo em pseudocódigo para receber o tamanho dos 3 lados de um triângulo e usar o procedimento tipo_triangulo para exibir o tipo dele.

7. Escreva um procedimento de nome troca para receber como parâmetros 2 números inteiros e trocar o conteúdo entre eles. Escreva um algoritmo em pseudocódigo para receber 2 números e usar o procedimento troca para permutar o conteúdo entre eles.

8. Escreva uma função chamada triplo que recebe um parâmetro inteiro e retorna o triplo do número passado como parâmetro. Escreva um algoritmo em pseudocódigo para receber 100 elementos e, usando a função triplo, exiba o triplo de todos os seus elementos.

9. Escreva uma função de nome numero_extenso que recebe como parâmetro um número inteiro no intervalo de 1 a 3 e retorna uma cadeia de caracteres contendo o extenso do número recebido como parâmetro. A função deve fazer parte de um algoritmo em pseudocódigo que lê um número e usa a função numero_extenso para exibir o extenso do número digitado.

10. Escreva uma função de nome maior que recebe dois números e retorna o maior entre eles. Escreva um algoritmo em pseudocódigo para receber dois números e, usando a função maior, exiba o maior dos dois números dados.

11. Escreva um algoritmo para receber 10 números reais e armazená-los em um vetor. Depois disso, mostre o somatório dos números, através do uso da função somatorio, que não recebe parâmetro nenhum, acessa o vetor definido globalmente e retorna o somatório dos elementos do vetor.

Page 2: Lista Exercicios 05

12. Escreva um algoritmo para receber 2 números e uma operação (multiplicação ou divisão) como entrada. Depois disso, exibir o resultado da operação sobre os 2 números dados. O programa deverá usar as funções multiplicacao e divisao que recebem 2 números reais como parâmetros e retornam o resultado da operação. Exemplo: Para os números 3 e 4, e operação multiplicacao, mostrar o resultado 12.

13. Escreva um algoritmo para receber uma data no formato dd/mm/aaaa (dd-dia, mm-mês e aaaa-ano) e depois exibi-la por extenso. O programa deverá fazer uso de um vetor contendo os meses do ano. Também deverá ter uma função de nome data_extenso para receber como parâmetro uma cadeia de caracteres no formato dd/mm/aaaa e retornar a data por extenso. Exemplo: Para a data 31/01/2007, mostrar: 31 de janeiro de 2007.

14. Escreva um programa para receber vários números. Ele deve ficar em loop (repetição) e somente parar quando um número negativo for digitado como entrada. Depois disso, exibir todos os números pares que foram digitados. O programa deve ainda usar uma função de nome par que recebe como parâmetro um número inteiro e retorna o valor lógico verdadeiro se o número for par e falso se o número for ímpar.

15. Escreva um algoritmo que apresente um menu com três opções:1 – Inserir2 – Exibir3 – Sair

a) Quando for escolhida a opção número 1, um procedimento chamado insere deve inserir um elemento (nome) em um vetor. O procedimento deve receber como parâmetro o nome a ser inserido.

b) Quando for escolhida a opção número 3, um procedimento chamado lista deve escrever na tela todos os elementos do vetor.

16. Escreva uma função que receba como parâmetro um texto e retorne o número de palavras desse texto. As palavras do texto são separadas por espaços em branco, podendo haver um ou mais espaços entre as palavras.

RECURSIVIDADE17. Escreva um algoritmo, utilizando uma função recursiva chamada fatorial, para calcular o fatorial de um número n, sendo n um valor fornecido pelo usuário no algoritmo principal.

18. Escreva um algoritmo, utilizando uma função recursiva chamada soma_inteiros, para calcular a soma dos n primeiros inteiros positivos, sendo n um valor fornecido pelo usuário no algoritmo principal.

19. Escreva um algoritmo, utilizando uma função recursiva, que eleve um número inteiro qualquer a uma potência. Devem ser fornecidos o número e a potência no algoritmo principal.

20. Escreva um algoritmo, utilizando uma função recursiva, para calcular o n-ésimo termo da série de Fibonacci. A série de Fibonacci é uma seqüência definida pela fórmula abaixo:F(n) = 0, se n = 0F(n) = 1, se n = 1F(n) = F(n-1) + F(n-2), para os demais valores de nExemplo: para n = 10, exibir: 55

F(0) F(1) F(2) F(3) F(4) F(5) F(6) F(7) F(8) F(9) F(10)

0 1 1 2 3 5 8 13 21 34 55

21. Escreva um algoritmo para obter 10 palavras e armazená-las em um vetor de caracteres. Depois disso, o algoritmo deve obter uma palavra adicional e exibir se ela está ou não contida no vetor. Caso esteja no vetor, o algoritmo deve informar o índice do vetor que contém a palavra. A busca da palavra deve ser realizada através do uso de uma função recursiva de nome busca que recebe como parâmetro uma palavra qualquer e realiza uma pesquisa no vetor definido globalmente, retornando o índice do elemento encontrado ou 0 caso a palavra não esteja no vetor.