Jump to content
Fórum Script Brasil
  • 0

Srand gera numero repetidos


xinaidao

Question

Olá.

Estou tento dificuldade em realizar um trabalho de faculdade, que consiste em gerar uma matriz de 10 x 10 de valores randomicos de 5(inclusive) até 45(inclusive)..

#include<stdio.h>

#include<conio.h>

#include<time.h>

#define lin 10

#define col 10

void main(void) {

int matriz[lin][col], opcao, x, y

// preciso gerar aqui a matriz randomica e só depois fazer o que o usuário pede..

//arrumar problema da repetição do numero 45 ..

for (x=0; x<=lin; x++) {

for (y=0; y<=col; y++) {

srand(time(NULL));

_sleep(800);

matriz[lin][col]=rand()%5+45;

printf("%d", matriz[x][y]);

}

}

}

fica aparecendo sempre os mesmos numeros, 45..

Obrigado desde já

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Ola Bom dia! bem a pressa porque toh saindo pro trabalho mais dei uma arrumada no seu código.

não deu pra arrumar tdo mais já melhorou.

#include<stdio.h>

#include<windows.h>

#include<time.h>

#include <stdlib.h>

#define lin 10

#define col 10

int main(void) {

srand(time(NULL));int D[10][10];

int matriz[lin][col], opcao, x, y;

// preciso gerar aqui a matriz randomica e só depois fazer o que o usuário pede..

//arrumar problema da repetição do numero 45 ..

for (x=0; x<10; x++) {

for (y=0; y<10; y++) {

Sleep(800);

matriz[lin][col]=rand()%5+45;

printf("%d", matriz[x][y]);

}

}

}

Espero te-lo ajudado, abrçs..

Link to comment
Share on other sites

  • 0

olá.

eu consegui fazer com que o programa faça uma matriz 10 10 com numeros aleatorios.

tenhos 2 duvidas... se rodar a matriz o PRIMEIRO numero de cada linha, é muito maior do que o que eu propus(de 5 a 45)

e dps eu boto os printf com o menu e após isso eu leio.

tranquei no "1" que seria REPETIR a uiltima matriz.

alguém poderia me ajudar para repetir a ultima matriz?

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int matriz[10][10];

main()

{

int n,x=0, y=0, a, b, opcao;

srand(time(NULL));

for(x=0;x<10;x++){

for(y=0;y<10;y++)

{

a=rand()%40+5;

matriz[x][y]=a*1;

}

}

for(x=0;x<10;x++){

printf("\n%d", matriz[x][y]);

for(y=0;y<10;y++) {

printf("\%d-",matriz[x][y]);

}

}

getch();

clrscr();

printf("1 - Todos os numeros\n");

printf("2 - Pares\n");

printf("3 - Impares\n");

printf("4 - Menores que 20\n");

printf("5 - Maiores que 30\n");

printf("6 - Gerar Novamente\n");

printf("7 - Sair\n");

scanf("%d", &opcao);

switch(opcao){

case '1': //aki vai o codigo que não sei como fazer...

return(0);

}

obrigado desde já

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...