LISTA DE EXERCÍCIOS – ALGORITMOS – FUNÇÕES 1

Propaganda
LISTA DE EXERCÍCIOS – ALGORITMOS – FUNÇÕES
1 - Numa disciplina são dadas duas provas e dois trabalhos, mas a média é calculada considerando-se
apenas a maior nota de prova e a maior nota de trabalho. Dadas as quatro notas de um aluno, informe a
sua média. Crie e use as sub-rotinas, que determina o maior valor entre dois números e, uma outra
outra que cálcula a média aritmética de dois números, para resolver este problema.
2 – Crie uma sub-rotina que receba um número natural n como entrada e exiba a contagem regressiva
de n até 0.
3 – Crie uma sub-rotina que receba um número inteiro como entrada e exiba o dia da semana
correspondente por extenso (1- domingo, 2- segunda,....).
4 - Crie uma sub-rotina que receba um número natural como entrada e determine se ele é par ou não.
5 - Crie uma sub-rotina que calcule a média ponderada entre duas notas. Essa função deve receber
quatro dados de entrada, sendo as notas e seus respectivos pesos. Os pesos devem ser valores entre 0 e
1, co soma igual a 1.
6 – O fatorial de um número n é definido pelo produto 1 x 2 x 3 x 4x … x n. Crie uma sub-rotina que
receba um número natural e determine o seu fatorial.
7 – Faça uma sub-rotina que receba como parâmetro um inteiro no intervalo de 1 a 9 e mostre a
seguinte tabela de multiplicação (no exemplo, n=9):
1
2
4
3
6
9
4
8
12
16
5
10
15
20
25
6
12
18
24
30
36
7
14
21
28
35
42
49
8
16
24
32
40
48
56
64
9
18
27
36
45
54
63
72
81
8 - Faça uma sub-rotina que receba três notas de um aluno como parâmetros e uma letra. Se a letra for
“A” a sub-rotina calcula a média aritmética das notas do aluno, se for “P” a sub-rotina calcula a média
ponderada com pesos 5, 3, 2. A média calculada deve ser devolvida ao programa principal para, então,
ser mostrada.
9 – Faça uma subr-rotina que receba, por parâmetro, a hora de início e a hora de término de um jogo,
ambas subdivididas em dois valores distintos: horas e minutos. A sub-rotina dedeve retornar a duração
expressa em minutos, considerando que o tempo máximo de duração é um jogo de 24 horas e que o
jogo pode começar em um dia e terminar no outro.
10 – Faça uma sub-rotina que leia cinco valores inteiros e retorne o maior e o menor deles.
11 – Faça uma sub-rotina que receba por parâmetro um valor inteiro e positivo N e retorne o valor de S.
S = 1 + 1/1! + 1/2! + 1/3! + 1/N!
12 – Foi realizada uma pesquisa de algumas características físicas de cinco habitantes de uma certa
região. De cada habitante foram coletados os seguintes dados: sexo, cor dos olhos (A- Azulis ou C –
Castanhos), cor dos cabelos (L – Louros, P – pretos ou C - Castanhos) e idade.
a) Faça uma sub-rotina que leia esses dados em um vetor. Determine, por meio de outra sub-rotina, a
média de idade das pessoas com olhos castanhos e cabelos pretos. Mostre esse resultados no programa
principal.
b) Faça uma sub-rotina que determine e devolva ao programa principal a maior idade entre os
habitantes.
c) Faça uma sub-rotina que determine e devolva ao programa principal a quantidade de indivíduos do
sexo feminino cuja idade está entre 18 e 35 (inclusive) e que tenham olhos azuis e cabelos louros.
13 – Faça uma sub-rotina que retorne ao programa principal um vetor com os três primeiros números
perfeitos. Sabe-se que um número é perfeito quando é igual à soma de seus divisores (exceto ele
mesmo). Exemplo: os divisores de 6 são 1, 2 e 3 1+2+3=6, logo, 6 é um número perfeito.
14 – Faça uma sub-rotina que receba um vetor A de dez elementos inteiros, por parâmetro. Ao final
dessa sub-rotina, o vetor B deve conter o fatorial de cada elemento de A. O vetor B deve ser mostrado
no programa principal.
A
2
1
0
3
4
...
B
2
1
1
6
24
…
13 – Faça uma sub-rotina que receba, por parâmetro, um vetor A com cinco números reais e retorne
esses números ordenados em ordem crescente.
14 – Faça uma sub-rotina que receba, por parâmetro, uma matriz (5,5) e retorne a soma dos seus
elementos.
15 - Faça uma sub-rotina que receba, por parâmetro, uma matriz (6,6) e retorne o menor elemento da
sua diagonal secundária.
16 - Faça uma sub-rotina que receba, por parâmetro, uma matriz (6,6) e multiplique cada linha pelo
elemento da diagonal principal daquela linha. A função deve retornar a matriz alterada para ser
mostrada no programa principal.
17 - Faça uma sub-rotina que receba, por parâmetro, uma matriz (12,12) e retorne a média aritmética
dos elementos abaixo da diagonal principal.
18 – Fazer uma sub-rotina que transforme horas, minutos e segundos em segundos. Ex: 2h 40min 10s
→ 9.610s . Fazer uma subrotina que transforme segundos em horas, minutos e segundos. Ex: 11.030
→ 3h 3min 50s.
Fazer um algoritmo que:
a) Leia um conjunto de linhas contendo, cada uma, o número de um empregado, a hora de início (horas,
minutos e segundos) e a hora de término (horas, minutos e segundos) de uma determinada tarefa. A
última linha (FLAG) conterá o número do empregado negativo;
b) Calcule para cada empregado, a duração da tarefa que ele executou, num mesmo dia, utilizando as
duas sub-rotinas anteriormente definidas;
c) Escreva, para cada empregado, o seu número e a duração de sua tarefa em horas, minutos e
segundos.
Download