andrecm 0 Denunciar post Postado Novembro 20, 2012 Boa noite, Desenvolva um programa que crie um vetor de inteiros (1.000 posições). Carregue este vetor com números randômicos (aleatórios) entre 1 e 6 (simulando desta forma o lançamento de um dado mil vezes). O programa, no final deverá mostrar na tela quantas vezes cada número foi sorteado, bem como o percentual que este valor representa em relação ao número de lançamentos feitos. ____________________________________________________________ main() { int vet[1000]; int I,G1=1,G2=2,G3=3,G4=4,G5=5,G6=6; srand(time(NULL)); for(I=0; I<1000; I++) { vet=rand()%6+1; switch(vet) { case 1: G1++; break; case 2 : G2++; break; case 3 : G3++; break; case 4: G4++; break; case 5 : G5++; default: G6++; break; } } printf("\nO N 1 FOR SORTEADO %4d VEZES = %.2f%%", G1, float(G1)/10); printf("\nO N 2 FOR SORTEADO %4d VEZES = %.2f%%", G2, float(G2)/10); printf("\nO N 3 FOR SORTEADO %4d VEZES = %.2f%%", G3, float(G3)/10); printf("\nO N 4 FOR SORTEADO %4d VEZES = %.2f%%", G4, float(G4)/10); printf("\nO N 5 FOR SORTEADO %4d VEZES = %.2f%%", G5, float(G5)/10); printf("\nO N 6 FOR SORTEADO %4d VEZES = %.2f%%", G6, float(G6)/10); getch(); } Alguem pode me ajudar? Muito obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
Mateus GP 13 Denunciar post Postado Novembro 21, 2012 Ou use este código: #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int int_vetor[1000], var_st[6] = {0, 0, 0, 0, 0, 0}; int i = 0; srand(time(NULL)); while(i < 1000) *(int_vetor + i++) = (rand() % 6) + 1; while(i >= 0) var_st[int_vetor[--i] - 1]++; /* Ou while(i < 1000) { *(int_vetor + i) = (rand() % 6) + 1; var_st[int_vetor[i] - 1]++; i++; } */ i = 0; while(i < 6) { printf("%d foi sorteado %d vezes, %0.2f%% do total.\n", i + 1, var_st[i], (double)var_st[i] / 10.0); i++; } return 0; } Ou como penso que você é como eu, que prefere poder dizer: "Este codigo foi feito por min!". Veja: int main() { int vet[1000]; int I,G1=0,G2=0,G3=0,G4=0,G5=0,G6=0; srand(time(NULL)); for(I=0; I<1000; I++) { vet[i]=rand()%6+1; switch(vet[i]) { case 1: G1++; break; case 2 : G2++; break; case 3 : G3++; break; case 4: G4++; break; case 5 : G5++; break; // Adicionado default: G6++; //break; Desnecessário } } printf("\nO N 1 FOR SORTEADO %4d VEZES = %.2f%%", G1, (float)G1/10); printf("\nO N 2 FOR SORTEADO %4d VEZES = %.2f%%", G2, (float)G2/10); printf("\nO N 3 FOR SORTEADO %4d VEZES = %.2f%%", G3, (float)G3/10); printf("\nO N 4 FOR SORTEADO %4d VEZES = %.2f%%", G4, (float)G4/10); printf("\nO N 5 FOR SORTEADO %4d VEZES = %.2f%%", G5, (float)G5/10); printf("\nO N 6 FOR SORTEADO %4d VEZES = %.2f%%", G6, (float)G6/10); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
andrecm 0 Denunciar post Postado Novembro 21, 2012 Muito obrigado, mas fui tentando e consegui achar o erro! Valeu Mateus Compartilhar este post Link para o post Compartilhar em outros sites
Mateus GP 13 Denunciar post Postado Novembro 21, 2012 Por nada. Você agiu completamente certo, quando se comete um erro é bom descobrir qual foi, por conta própria. Compartilhar este post Link para o post Compartilhar em outros sites