Challenge 2 - 14/07/2011

Ir em baixo

Challenge 2 - 14/07/2011

Mensagem  Admin em Qua Jul 06, 2011 12:15 am


Atenção: Antes de iniciar o desafio, ler as REGRAS da competição.



Diferente do CHALLENGE 1 que foi essencial para estudar o nível de conhecimento dos participantes e de como adaptar o projeto a essas necessidades, o CHALLENGE 2 foi pensado de maneira diferente. Agora teremos três etapas separadas. Como funciona? Vejam:

CHALLENGE 2 - LIGHT
Clique sobre o spoiler para expandir a janela
Spoiler:

1 - Faça um Programa que leia um número e exiba o dia correspondente da semana (Começando de domingo ). Caso você digite outro valor deve aparecer valor inválido. Exemplo:

Digite um numero de 1 a 7 referente ao dia da semana
Dia 1 é domingo
Dia 2 é segunda
Dia 3 é terça
Etc.....
Outro valor = Número inválido


2 - Faça um Programa que peça um número correspondente a um determinado ano e em seguida informe se este ano é ou não bissexto. Exemplo:

Digite uma data com o seguinte formato dd/mm/aaaa 
dia = ?
mes = ?
ano = ?

Imprima : Data Válida - É bissexto
Imprima : Data Inválida - Não é bissexto


3 - Faça um programa que peça uma nota, entre zero e dez. Mostre uma mensagem caso o valor seja inválido e continue pedindo até que o usuário informe um valor válido. Exemplo:

Digite uma nota de 0 a 10 : 

De 0 a 10 = Valor correto
Qualquer outro número = Valor inválido e Retorna a pergunta

O programa só termina quando digitar o valor válido.


4 - Faça um programa que leia um nome de usuário e a sua senha e não aceite a senha igual ao nome do usuário, mostrando uma mensagem de erro e voltando a pedir as informações. Exemplo:

Digite seu login: Fulano
Digite sua senha: Fulano

Saída = Erro, a senha não pode ser igual ao login
Retorna a pergunta.
O programa só terminará quando digitar a senha e login diferentes um do outro.


5 - Faça um programa que calcule a quantidade dinheiro gasto por um fumante com os seguintes dados:


O número de anos que ele fuma :
O número de cigarros fumados por dia :
O preço da carteira de cigarro:

Obs: Procure um fumante mais próximo e resolva a questão.



6 - Escreva um algoritmo para encontrar o número do telefone correspondente a um determinado
nome, na seguinte lista telefônica:


Nome : Fulano   - Tel : 334-45566
Nome : Cicrano - Tel : 112-23344
Nome : Beltrano - Tel : 551-12233
Nome : Zé - Tel : 443-34422
Nome : Toinho - Tel : 661-12233
Nome : Luizinho - Tel : 776-65577


7 - Faça um Programa que leia dois vetores com 10 elementos cada podendo ser strings ou números. Gere um terceiro vetor de 20 elementos, cujos valores deverão ser compostos pelos elementos intercalados dos dois outros vetores. Exemplo:

vetor1 = [1,3,4,5,6,7,8,9,10]

vetor1 = [a,b,c,d,e,f,g,h,i]

vetor3 = [a,b,c,d,e,f,g,h,i,1,3,4,5,6,7,8,9,10]


8 - Utilizando vetores faça um programa que faça 5 perguntas para uma pessoa sobre um crime. As perguntas são:

   1. "Telefonou para a vítima?"
2. "Esteve no local do crime?"
3. "Mora perto da vítima?"
4. "Devia para a vítima?"
5. "Já trabalhou com a vítima?"


O programa deve no final emitir uma classificação sobre a participação da pessoa no crime.
Se a pessoa responder positivamente a 2 questões ela deve ser classificada como "Suspeita", entre 3 e 4 como "Cúmplice" e 5 como "Assassino". Caso contrário, ele será classificado como "Inocente".

9 - Faça um programa que leia 2 strings e informe o conteúdo delas seguido do seu comprimento. Informe também se as duas strings possuem o mesmo comprimento e são iguais ou diferentes no conteúdo. Exemplo:

String 1: O conhecimento me preenche, é legal!
String 2: Eu conquistarei o mundo!
Tamanho de String 1 "O conhecimento me preenche, é legal!": 36 caracteres
Tamanho de String 2 "Eu conquistarei o mundo!": 24 caracteres
As duas strings são de tamanhos diferentes.
As duas strings possuem conteúdos diferentes.


10 - Alguém aí lembra daqueles livros rpg adventure dos anos 80,90 ? Pois eram livros/jogos que em um determinado momento da história, tinha de duas a cinco opções para prosseguir no jogo. Pois bem, pensando nesses livros/jogos rpg adventure, bolamos o seguinte algoritmo:

Baixe o arquivo com o html:
Mirror 1 - Download
Mirror 2 - Download
Mirror 3 - Download

CHALLENGE 2 - MODERATE
Clique sobre o spoiler para expandir a janela
Spoiler:

1 - Faça um programa que dado um vetor de elementos com uma repetição, encontre o elemento repetido. Ou seja, encontrar o elemento que aparece duas vezes dentro de um vetor. Detalhe: Você só pode usar um loop e os elementos exatamente são: [1,2,3,4,1,5]. Exemplo:

vetor = [1,2,3,4,1,5]

Elemento repetido = 1


2 - Já brincou de pedra, papel, tesoura? Então vamos brincar disto em programação. Faça um programa que simula dois jogadores brincando de pedra , papel, tesoura levando em conta os seguintes valores correspondentes à brincadeira:

Sortiar entre [Pedra, Papel, Tesoura]

Digite o nome do jogador 1 : Fulano
Digite o nome do Jogador 2 : Cicrano

Se o valor do sorteio de Fulano for Pedra + O valor de Cicrano Papel , O resultado será Papel
Se o valor do sorteio de Fulano for Tesoura + O valor de Cicrano Papel , O resultado será Tesoura
Se o valor do sorteio de Fulano for Pedra + O valor de Cicrano Tesoura , O resultado será Pedra

Pedra + Pedra = Retorna ao sorteio
Papel + Papel = Retorna ao sorteio
Tesoura + Tesoura = Retorna ao sorteio

Obs.: Só é permitido usar um único loop/laço.


3 - Crie um programa que preencha aleatoriamente um vetor do tipo inteiro de 10 posições com números entre 0 e 99, peça pro usuário digitar um número e busque o número digitado no vetor. Se encontrado avise em que posição do vetor o número se encontra, se não encontrado avise que o número não existe e retorne para a pergunta inicial. Exemplo:

// Os números sorteados aleatoriamente no vetor estarão invisiveis para o usuario.
[1,20,33,88,10,34,55,66,99,11]

Digite um número: 25
Este número não existe no vetor, pressione uma tecla para continuar!
Digite um número: 20
O número 20 está na segunda posição // O programa termina


4 - Em uma Universidade, alunos estão com diculdade em calcular a média das notas de três provas aplicadas em um trimestre. Faça um programa que peça a nota das três avaliações sendo que a média nesta Universidade, é 6.0. Antes de mais nada, fiquem atentos aos detalhes:

Se você tirar 9.0 na primeira nota e 4.0 na segunda, você terá uma soma de 13.0 que se dividido por 2 daria 6.5. 

Porém, a Universidade não aceita nota 4 ou abaixo de 4. Então você seria obrigado a fazer uma terceira prova e tirar acima de 4 para passar.

Faça com que o programa imprima se você precisará ou não de fazer esta terceira prova como também, se você passou ou não no trismestre a depender do valor da nota.

Caso tenha sido aprovado, imprima "Parabéns você foi aprovado".

Caso você tenha perdido imprima uma mensagem "Reprovado por nota" e retorne ao começo do programa.


5 - Faça um programa que imprima uma lista de modelos de carro e te peça para escolher um dos modelos mostrados. Ao escolher um dos modelos, este mesmo programa irá imprimir os seguintes detalhes:

Km por litro. 
Valor de mercado do modelo zero KM.
Valor de mercado do modelo usado.
Valor do seguro.
Potencia.

Use no mínimo 5 modelos de carros distintos.

Obs: Fique a vontade para estipular valores.


6 - Modifique o programa do desafio 5 de modo que você possa agora adicionar modelos de carros bem como os detalhes. Exemplo:

Adicione um modelo a lista: Fusca

Valor de mercado do Fusca zero KM : 5.000
Valor de mercado do Fusca usado: 2.000
Valor do seguro : 100 reais.
Potencia: 1.0


7 - Faça um programa que peça para 10 pessoas as suas idades, ao final o programa devera verificar se a média de idade deste grupo de pessoas varia entre 1 e 25,26 e 60 e maior que 60; e então, dizer se o grupo é jovem, adulta ou idosa, conforme a média calculada. Exemplo:

Qual sua idade?  // 10 vezes a mesma pergunta.
Média de idade = 25 , 30 anos
O grupoe é : " Um grupo jovem ".


8 - Desenvolva um programa que faça a tabuada de um número qualquer inteiro que será digitado pelo usuário, mas a tabuada não deve necessariamente iniciar em 1 e terminar em 10, o valor inicial e final devem ser informados também pelo usuário, conforme exemplo abaixo:

Montar a tabuada de: 5
Começar por: 4
Terminar em: 7

Vou montar a tabuada de 5 começando em 4 e terminando em 7:
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35


9 - Faça uma função que retorne o reverso de um número inteiro informado. Por exemplo:

Digite um número: 127
Valor invertido = 721


10 - Alguém aí lembra daqueles livros rpg adventure dos anos 80,90 ? Pois eram livros/jogos que em um determinado momento da história, tinha de duas a cinco opções para prosseguir no jogo. Pois bem, pensando nesses livros/jogos rpg adventure, bolamos o seguinte algoritmo ( Mais avançado que no Challenge 2 - Light ):

Baixe o arquivo com o html:
Mirror 1 - Download
Mirror 2 - Download
Mirror 3 - Download


CHALLENGE 2 - HARDCORE
Clique sobre o spoiler para expandir a janela
Spoiler:

1 - Faça um programa que imprima a sí mesmo ou seja, imprimir na tela o seu próprio código fonte. O código fonte será exibido ao abrir o arquivo onde ele está. Obs: Não é permitido o programa abrir e ler o próprio código com chamadas de manipulação de arquivo.

2 - A soma dos números primos abaixo de 10 é 2 + 3 + 5 + 7 = 17.
Faça um programa que encontre e imprima a soma de todos os números primos abaixo de dois milhões como também, imprima quantos números foram encontrados.


3 - Faça um programa que encontre o menor número de x + y + z com inteiros x> y> z> 0 tal que x + y, x - y, x + z, x - z, y + z, y - z sejam quadrados perfeitos.

Lembrando que para competir, você escolherá uma das etapas isoladamente. Só assim terá o mérito na pontuação. Entretanto, poderá usar os algoritmos das três etapas e resolve-los como forma de aprendizado. Ou, se for o caso, resolver as três etapas completas no prazo de duas semanas. Pois, não haverá pontuação nas etapas incompletas.

A forma de postagem será de acordo com a etapa que você escolher para o desafio. Exemplo:

Fulano - Challenge 2 - Light - C++

Ou se for o caso:
Fulano - Challenge 2 - FULL - C++ ( as três etapas completas )

Qualquer dúvida ou sugestão, por favor mandar PM para mim no próprio forum.

Atenciosamente Admin ProjectZIM Challenge.

-------------------------------------------------------------------
avatar
Admin

Mensagens : 64
Data de inscrição : 11/06/2011

Ver perfil do usuário http://forums.projectzim.com

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum