Estátisticas Simples - Resolução
Sua tarefa é processar uma seqüência de números inteiros para determinar as seguintes estatísticas:
- Valor mínimo
- Valor máximo
- Número de elementos na seqüência
- Valor médio
Por exemplo para uma seqüência de números "6, 9, 15, -2, 92, 11", temos como saída:
- Valor mínimo: -2
- Valor máximo: 92
- Número de elementos na seqüência: 6
- Valor médio: 18.1666666
Caixa Eletrônico - Resolução
Desenvolva um programa que simule a entrega de notas quando um cliente efetuar um saque em um caixa eletrônico. Os requisitos básicos são os seguintes:
- Entregar o menor número de notas;
- É possível sacar o valor solicitado com as notas disponíveis;
- Saldo do cliente infinito;
- Quantidade de notas infinito (pode-se colocar um valor finito de cédulas para aumentar a dificuldade do problema);
- Notas disponíveis de R$ 100,00; R$ 50,00; R$ 20,00 e R$ 10,00
Exemplos:
- Valor do Saque: R$ 30,00 – Resultado Esperado: Entregar 1 nota de R$20,00 e 1 nota de R$ 10,00.
- Valor do Saque: R$ 80,00 – Resultado Esperado: Entregar 1 nota de R$50,00 1 nota de R$ 20,00 e 1 nota de R$ 10,00.
FizzBuzz - Resolução
Neste problema, você deverá exibir uma lista de 1 a 100, um em cada linha, com as seguintes exceções:
- Números divisíveis por 3 deve aparecer como 'Fizz' ao invés do número;
- Números divisíveis por 5 devem aparecer como 'Buzz' ao invés do número;
- Números divisíveis por 3 e 5 devem aparecer como 'FizzBuzz' ao invés do número'.
Jokenpo - Resolução
Jokenpo é uma brincadeira japonesa, onde dois jogadores escolhem um dentre três possíveis itens: Pedra, Papel ou Tesoura.
O objetivo é fazer um juiz de Jokenpo que dada a jogada dos dois jogadores informa o resultado da partida.
As regras são as seguintes:
- Pedra empata com Pedra e ganha de Tesoura
- Tesoura empata com Tesoura e ganha de Papel
- Papel empata com Papel e ganha de Pedra
Entradas no Banco - Resolução
Todas as vezes que alguém passa na porta do maior banco da cidade de Pirenópolis, é gravado em um arquivo de log a data e a hora da abertura da porta.
Cada registro no arquivo de log possui o seguinte formato:
[YYYY-mm-dd H:i:s] - Abertura da Porta OK
O gerente do banco precisa saber quantas pessoas entraram no banco no horário de expediente, para isso ele solicitou que você faça um programa que verifique se o registro de entrada é válido e se a hora se encontra dentro do intervalo de funcionamento do banco, das 10:00:00 até as 16:00:00.
Ano Bissexto - Resolução
A cada 4 anos, a diferença de horas entre o ano solar e o do calendário convencional completa cerca de 24 horas (mais exatamente: 23 horas, 15 minutos e 864 milésimos de segundo). Para compensar essa diferença e evitar um descompasso em relação às estações do ano, insere-se um dia extra no calendário e o mês de fevereiro fica com 29 dias. Essa correção é especialmente importante para atividades atreladas às estações, como a agricultura e até mesmo as festas religiosas.
Um determinado ano é bissexto se:
O ano for divisível por 4, mas não divisível por 100, exceto se ele for também divisível por 400. Exemplos:
São bissextos por exemplo:
- 1600
- 1732
- 1888
- 1944
- 2008
Não são bissextos por exemplo:
- 1742
- 1889
- 1951
- 2011
Escreva uma função que determina se um determinado ano informado é bissexto ou não.
Intervalos - Resolução
Dado uma lista de números inteiros, agrupe a lista em um conjunto de intervalos
Exemplo:
Entrada: 100, 101, 102, 103, 104, 105, 110, 111, 113, 114, 115, 150
Saída: [100-105], [110-111], [113-115], [150]
Nomes de Autores de Obras Bibliográficas - Resolução
Quando se lista o nome de autores de livros, artigos e outras publicações é comum que se apresente o nome do autor ou dos autores da seguinte forma: sobrenome do autor em letras maiúsculas, seguido de uma vírgula e da primeira parte do nome apenas com as iniciais maiúsculas.
Por exemplo:
- SILVA, Joao
- COELHO, Paulo
- ARAUJO, Celso de
Seu desafio é fazer um programa que leia um número inteiro correspondendo ao número de nomes que será fornecido, e, a seguir, leia estes nomes (que podem estar em qualquer tipo de letra) e imprima a versão formatada no estilo exemplificado acima.
As seguintes regras devem ser seguidas nesta formatação:
- o sobrenome será igual a última parte do nome e deve ser apresentado em letras maiúsculas;
- se houver apenas uma parte no nome, ela deve ser apresentada em letras maiúsculas (sem vírgula): se a entrada for “ Guimaraes” , a saída deve ser “ GUIMARAES”;
- se a última parte do nome for igual a "FILHO", "FILHA", "NETO", "NETA", "SOBRINHO", "SOBRINHA" ou "JUNIOR" e houver duas ou mais partes antes, a penúltima parte fará parte do sobrenome. Assim: se a entrada for "Joao Silva Neto", a saída deve ser "SILVA NETO, Joao" ; se a entrada for "Joao Neto" , a saída deve ser "NETO, Joao";
- as partes do nome que não fazem parte do sobrenome devem ser impressas com a inicial maiúscula e com as demais letras minúsculas;
- "da", "de", "do", "das", "dos" não fazem parte do sobrenome e não iniciam por letra maiúscula.