Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Marujo68

Programa que escolhe numeros num intervalo de 0 a 60

Recommended Posts

Boa tarde ilustres companheiros preciso fazer um programa que de a opção para o usuario digitar entre 6 e 10 numeros. Os numeros devem estar num intervalo de 0 a 60. Abaixo segue a minha tentativa se alguém puder me ajudar.

int Menu()
{
int Rop;
printf("\nTecle[1]Para cadastrar apostas");
printf("\nTecle[2]Para inserir resultado");
printf("\nTecle[3]Para conferir sorteio");
printf("\nTecle[4]Para encerrar");
scanf("%d",&Rop);
return Rop;
}

main()
{
int op=0;
int i=0;
int p;
int Numeros;
int Numescolhidos[100];
while((op=Menu())!=4)
{
//preciso digitar de 6 a 10 numeros
//que tem que estar num intervalo de 0 a 60
if(op==1)
{
printf("Numero de numeros: ");
scanf("%d",&Numeros);
printf("\n");
for(i=0;i<Numeros;i++)
{
{

printf("Digite os numeros");
scanf("%d",&Numescolhidos[p]);
while(Numescolhidos[p]<=60)
{
if(Numescolhidos[p]>60)
printf("Digite um numero menor que 60");
}
}
}

}

}


}

Editado por gandalfnho
Use a tag CODE

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o objetivo do programa? Apenas inserir os numeros? O menu que você fez tem resultados, sorteio. Que cálculos devem ser feitos com os numeros inseridos?

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Peço desculpas se não dei a explicação detalhada do projeto.Mas é que estava pensando em fazer passo a passo. Feita a opção 1,depois faria a 2 e assim por diante.

    Mas o projeto é o seguinte é um programa de loteria com um menu de 4 opções. Funciona da seguinte forma na opcao 1 o usuario deve escolher de 6 a 10 numeros que não podem ultrapassar de 60.

    Na opcão 2 o programador deve inserir um resultado exemplo:

    2 5 18 25 33 56.

    Na opcão 3 deve ser comparado o resultado inserido pelo programador com qualquer um dos resultados inseridos na opção 1. Vamos dizer que eu tivesse inserido os algarismos acima na opção 1 então ao entrar na opcão 3 deveria mostrar quantos acertaram.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Veja se entendi corretamente:

    1º - Devemos dar 2 opções ao usuário, ou ele escolhe a opção para inserir 6 valores ou escolhe a opção para inserir 10 valores.

    2º - Os valores inseridos devem estar no intervalo entre 0 e 60.

    3º - Devem ser comparados os valores que o usuário digitou com os valores inseridos pelo programador.

    4º - Mostrar o total de números acertados.

    Em relação ao ítem 3º, valores inseridos pelo programador. Esses valores serão sorteados aleatóriamente, usando função rand()? Ou serão inseridos pelo programador?

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Simulação:

    Aparece o menu eo usuario digita a opcao 1.

    então aparece "qual a quantidade de numeros voce deseja marcar"

    Que podem ser 6 numeros a digitar,7 numeros a digitar,8 numeros a digitar

    9 numeros a digitar,10 numeros a digitar

    então aparece a mensagem "Escolha os numeros(que podem ser de 0 a 60)"

    Por exemplo escolhi:

    4 6 19 23 55 56,note escolhi todos menores que 60,caso escolha um maior que 60 deve aparecer a mensagem "numero maior que 60 digite outro"

    Exemplo:

    Escolha o numeros :

    2 15 68,então ao digitar o 68 como é maior que 60 aparece

    "numero maior que 60 digite outro".

    Esta é a opcao 1.

    Na opcao 2

    Aparece:

    Insira um resultado:

    Aí o usuario insere um resultado qualquer.

    por exemplo 2 15 22 24 33 36 41.

    Na opcao 3 aparece:

    O resultado e 2 15 22 24 33 36 41.

    e tem tantos ganhadores.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Ainda não entendi. O final tá confuso

    Na opcao 2
    Aparece:
    Insira um resultado:
    Aí o usuario insere um resultado qualquer.
    por exemplo 2 15 22 24 33 36 41.

    Na opcao 3 aparece:
    O resultado e 2 15 22 24 33 36 41.
    e tem tantos ganhadores.

    Seguindo seus exemplos:

    O usuário entra com uma série de numeros aleatórios, digamos: 4 6 19 23 55 56

    Depois ele entra de novo com uma outra série de numeros, digamos: 2 15 22 24 33 36 41

    O resultado e 2 15 22 24 33 36 41

    O que uma coisa tem a ver com outra?

    Porque você colocou "..tem tantos ganhadores" ?

    São vários usuários que entram com valores de uma vez?

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • O sistema a ser feito é de apostas perfeito.

    A opção 1 é para fazer apostas,o usuário entra nela e

    pode escolher 6,7,8,9, ou 10 algarismos de 0 a 60.

    Por exemplo quando você vai numa loterica voce compra um bilhete certo,

    esse bilhete tem numeros a serem marcados certo,varia de bilhete pra bilhete

    mas normalmente o total de numeros vai de 0 a 80 e desses 80 você marca uns 40.

    Essa é a opcao 1, com a diferença que em vez de marcar 40 numeros

    voce tem que marcar de 6 á 10 numeros e esse numeros tem que estar num

    intervalo de 0 á 60, isto é o usuario escolhe valores que quer.

    Cada vez que ele entra na opcão 1 uma aposta é feita.

    Em todo o jogo tem que ter um vencedor.Nesse programa usamos a opcao 2

    Para inserir um resultado.Ou seja nela vamos cadastrar o resultado que nos dirá quem é o vencedor.

    Por exemplo digamos que entremos 10 vezes na opcao 1,então existem

    10 apostas certo,ou seja 10 pessoas jogaram e cada uma delas marcou 6,7,8,9 ou 10 numeros,numeros esses que só podem estar entre 0 e 60.

    Ao digitar a opcao 2 do menu vamos deixar gravado um resultado,

    por exemplo 2 15 20 30 33 50 52,note que o resultado tem 7 numeros

    (poderia ser um resultado com 6 ,8,9 ou até 10 apenas exemplo),

    então dessas 10 pessoas se duas delas marcaram 6 já estão fora,disse duas mais poderiam ser mais ou nenhuma apenas um exemplo.

    Essa é opcao 2.

    Na opcão 3

    Vamos dizer (volto a dizer o numero é apenas exemplo poderia ser15,20 pessoas),o vencedor.

    Vmos dizer que das dez apostas foi digitado 2 15 20 30 33 50 52, 3 vezes

    Então na opcão 3 aparece O RESULTADO É 2 15 20 30 33 50 52 e houve

    3 ganhadores.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Entendi o que você quer, agora dá pra fazer alguma coisa.

    Mas esse problema é meio complexo pra resolver, você não fez praticamente nada no código acima. Vou dar umas dicas pra você tentar, depois posto meu código, ou corrijo o seu.

    Para simplificar, não vou criar funções, farei tudo numa função principal.

    Primeiro:

    Inserir total de apostas que deseja fazer;

    Inserir total de números para as apostas(6,7,8,9 ou 10). Neste ítem deve-se aceitar apenas os valores mencionados entre parênteses.

    Segundo:

    Criar menu para usuário com as opções:

    1 - Inserir apostas

    2 - Inserir resultado

    3 - Conferir sorteio

    4 - Sair

    Pode usar o comando switch para acessar as opções do menu, assim:

    printf( "Escolha a opcao: " );

    scanf( "%d", &op ):

    switch( op )

    {

    case 1 : ...comandos; break;

    case 2 : ...comandos; break;

    case 3 : ...comandos; break;

    case 4 : ...comandos; break;

    }

    A variável "op" guarda a opção do usuário, se digitar 1 por exemplo, entra no bloco de comandos referente "Inserir apostas".

    As apostas devem ser guardadas em uma matriz, suponhamos que o usuário entre com 3 apostas e escolha apostas com 6 números, ex:

    Total de apostas: 5

    Total de números por aposta: 6

    Então as linhas da matriz correspondem às apostas, e as colunas correspondem aos números das apostas. Sendo assim a matriz ficará representada dessa forma, para esses números escolhidos como exemplo:

    2 6 8 1 4 7 -> 1ª aposta

    1 2 9 5 4 0 -> 2ª aposta

    3 6 0 9 2 1 -> 3ª aposta

    Beleza, agora as apostas já estão cadastradas.

    Próximo passo é acessar a opção 2 do menu e inserir o resultado, note que o total de números por aposta é 6, então o resultado deve conter também 6 valores.

    Os valores do sorteio podem ser armazenados num vetor.

    Agora que temos as apostas e o resultado, deve acessar a opção 3 do menu para conferir o resultado do sorteio. Para fazer essa verificação deve-se comparar os valores do sorteio e das apostas, logo precisa pegar cada número sorteado e comparar com cada número apostado usando uma estrutura de repetição.

    exemplo usando os valores acima:

    2 6 8 1 4 7 -> 1ª aposta

    1 2 9 5 4 0 -> 2ª aposta

    3 6 0 9 2 1 -> 3ª aposta

    sorteio: 1 2 9 5 4 0

    O objetivo é comparar cada número do vetor sorteio, com os valores de cada aposta da matriz para ver se são iguais, a cada comparação uma variável soma é incrementada caso haja igualdade. Se no final a soma for igual a 6, então a aposta é vencedora, pois foram acertados todos os números. Neste caso a aposta vencedorá é a 2ª aposta.

    Como se trata de um sorteio, os valores nem sempre ficarão em ordem crescente como no exemplo acima(1 2 9 5 4 0 ).

    Pode ocorrer que o sorteio fique dessa forma: 5 1 9 2 0 4

    Isso deve ser considerado na hora de fazer a lógica para verificação dos acertos.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×