[Resolvido] C++ Matriz numero aleatório

Tenho o seguinte exercício…
Crie um programa em Linguagem C/C++ que carregue uma matriz 3x3 somente com números aleatórios múltiplos de 5 e exiba os mesmos.
No caso ele sempre mantém os mesmo números como posso fazer ele ficar saindo aleatório ? no caso toda vez que compilar e executar ?

[code]#include
#include<stdlib.h>

using namespace std;
int main(){
int l,c,num;
int mat[3][3];
for(l=0;l<3;l++){
for(c=0;c<3;c++){
mat[l][c] = (rand()% 100) * 5;
}
}
for(l=0; l<3; l++){
cout << “\n”;
for(c=0;c<3;c++){
cout << mat[l][c];
cout << " ";
}
}
system (“pause>>null”);
}

[/code]

A linguagem é C ou C++? A solução é diferente em ambas.

C++ no caso ficaria muito diferente do C neste caso ?

Mais gostaria no C++ esta solução…

Ficaria assim:

#include &lt;iostream&gt;
#include &lt;random&gt;

using namespace std;

int main(){
    //Configura qual é o gerador
    default_random_engine gerador;

    //Configura qual é o intervalo (nesse caso de 1 até 100)
    uniform_int_distribution&lt;int&gt; distribuicao(1,100);

    int mat[3][3];
    for(int l=0; l&lt;3; l++){
        for(c=0;c&lt;3;c++){
            mat[l][c] = distribuicao(gerador) * 5;
        }
    }

    for(int l=0; l&lt;3; l++){
        for(int c=0; c&lt;3; c++){
            cout &lt;&lt; mat[l][c] &lt;&lt; &quot; &quot;;
        }
        cout &lt;&lt; endl;
    }
    system (&quot;pause&gt;&gt;null&quot;);
}

Veja a lista completa de geradores e distribuições possíveis aqui:
http://www.cplusplus.com/reference/random/

Em C seria:

[code]
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(){
//Inicializa o gerador com um valor baseado no tempo
//Assim esse valor será diferente a cada execução do programa
srand(time(NULL));

int mat[3][3];
for(int l=0;l&lt;3;l++){
    for(int c=0;c&lt;3;c++){            
        mat[l][c] = (rand()% 100) * 5;
    }
}

for(int l=0; l&lt;3; l++){
    for(int c=0;c&lt;3;c++){
        printf(&quot;%i &quot;, mat[l][c]);
    }
    printf(&quot;\n&quot;);
}
system (&quot;pause&gt;&gt;null&quot;);

}[/code]

Em C os números gerados terão um comportamento muitíssimo pior do que em C++. Os algoritmos de geração do C++ são bem melhores, com uma distribuição bem mais uniforme.

Entendi Vini muito obrigado mais uma vez.

Eu nem sabia desse Random em C++…
O pior que meu professor dando exemplo uma vez falou que era só usar o rand em c++ ele misturava o código dele inteiro C e C++ nem compilava não achava os erros isso com coisas simples …
Tenho convicção que nem meu professor conhece isso …
Na prova vou ter que comentar se não nem ele entende ASUHSUSHUSA.
Vlw :slight_smile:

Isso entrou no C++ em 2011.

Por isso ele não deve saber,não estuda mais programação…rs

Vlw

[quote=lucasvvasconcelos]Por isso ele não deve saber,não estuda mais programação…rs

Vlw [/quote]

A mesma coisa em relação a declaração de variáveis. No C, não é mais obrigatório declarar tudo no início do método desde a versão de 99. No C++ provavelmente esse recurso entrou ainda antes…

Mais para frente penso e estudar um pouco de C e voltar estudar o C++ conforme o seu Roadmap.

Thank’s :stuck_out_tongue: