Como entrar com mil numeros aleatorios em um array?

14 respostas
M

Gostaria de saber como faço para criar um array que receba mil numeros aleatorios e depois como calculo o tempo que ele leva para ser lido.

14 Respostas

CintiaDR

Olá.

Primeiramente não sei se sua dúvida é de lógica, mas deduzo que sim porque aparentemente vc nem tentou fazer um código.

Você sabe programar em alguma linguagem imperativa?

Mas como você provavelmente tem dúvidas de java também, vou ser coleguinha e te ajudar. O que tenho certeza que vai te ajudar é que “sortear” em inglês é “random”. Então procure por “random java” no google e tudo o mais vai aparecer. A classe de tempo no java pode ser o Date, o Calendar, o GregorianCalendar.

Imagino que fazer um array e percorrê-lo você consegue fazer sozinho, né???

thegoergen

O Java tem o

System.currentTimeInMillis();

Que retorna o tempo atual em milisegundos. Você pode pegar ele antes, executar o tetu processo, e depois pegar o tempo atual de novo. Faz um menos o outro e prnto, você tem o tempo gasto…

M

tá de brincadeira!!! acho que devemos cobrar por exercicio resolvido…hehehe

el_loko

Ganhando 1 Real por pergunta agente nem ia se preocupar em trabalhar fora, todos seriam registrados pelo GUJ

M

Intão galera
eu sei criar o array em JAVA e agora ja sei como ver o tempo
só não sei fazer a entrada de dados com numeros aleatorios dentro do … de array :lol:

CintiaDR

Vc não sabe iterar sobre um array ou ter números randômicos?

Acabei de falar na outra mensagem, procure no google por [google]random java[/google] e vc com certeza vai saber como sortear números.

Para iterar um array, mais uma ida a nosso amigo [google]array java[/google].

M

CINTIA
eu sei como usar a classe RANDOM
problema é que eu nao sei como colocar esses mil numeros randomicos dentro do array
só quero fazer com que o programa leia um array de mil numeros porém não irei digitar os mil numeros. =)

M

macain,

posta um trecho do seu código aí pra esclarecer melhor a sua dúvida.

M

Eu não fiz ainda pois só preciso criar um array de mil numeros e fazer a entrada nele com numeros aleatorios

CintiaDR

Então posta em pseudo-código (que seja).

Daí procure no google como implementa em java cada uma das linhas. E qualquer dúvida de como implementar seu pseudo-código nos avise.

ok, num acesso bruto de bondade, vou colocar o pseudo-código pra vc, que parece ser o seu problema (aparentemente vc não sabe lógica de programação). Note que provavelmente você está perdendo um pouco do seu aprendizado por não tentar fazer sozinho, mas vamos lá.

Var arrayGrd[1000]

para cara índice do array{
  sorteia um número
  coloca este número neste índice do array
}

var tempoInicial = agora;
para cada índice do array{
   e faça alguma coisa que vc queira
}
var tempoTotal = agora - tempoInicial

Imprime tempoTotal

Olha que fofolete. Eu não perco a fé na humanidade.

P

E ai cara,

Bem, vamos pensar um pouquinho. Você quer um método que crie um array com 1000 posições do tipo int, dentro desse array você vai jogar 1000 numeros aleatórios, e quer em outro campo os ms que demorou pra mostrar tudo, certo?

Então o formato seria:

arrayPosition elementValue timeToRead
array[0] 1500 20

Então tá, lá vamos nós (eu e o teclado) mastigar pra você.

/* arrayTest.java
*  @author: Sergio Figueras
*  mail: [email removido]
*  A simple method to input 1000 random numbers in a array.
*
*  Free. =)
*/

import java.util.Random;

public class arrayTest{

    public static void main( String args[] )
        {
        int [] array = new int[1000];   // Declarando o array.
        int counter;                    // Declarando variável da condição de inicio do for.
        counter = 0;                    // Inicializando a variavel counter.

        Random randomGenerator = new Random();  // Criando random.

        System.out.println("ArrayPosition  ElementValue");
        //Para preencher o array, vamos utilizar um FOR.

        for ( counter = 0 ; counter <= array.length ; counter++ )
                {
                  array[counter] = randomGenerator.nextInt();   // Carregando valores nas posições.
                  System.out.printf("%d%15d\n", counter, array[counter]);
                }
        }
}

Agora quanto ao tempo, a resposta é simples: GOOGLEIE! =)

Ah, se você pesquisar sobre “random java” no google, você vai ver muita coisa boa. Se você rodar essa classe que coloquei ai , você vai ver que o range de numeros é muito grande (afinal, o array tá como int), se quiser limitar o conjunto para que o array execute, tem como.

Pesquise.

:slight_smile:

P

Ah, tem um erro básico lógico ai. A variavel counter está inicializada com valor 0. Você pode tirar, variáveis INT no java são inicializadas com default de 0. Em linguagens como C e que é preciso inicializar com zero, pois você pega o valor que está na memoria, ou seja, é meio arriscado.

T

Não, não, não: variáveis locais no Java não são inicializadas com valor nenhum por default. Só as variáveis de instância (membros da classe). Não é isso que é o tal “erro básico lógico”.

P

E verdade. Você está certo. :slight_smile:

tô no java a 1 semana, hehehe =).

Surfin’ in the Java waves. xD

Um abraço e obrigado pela correção!

Criado 16 de abril de 2008
Ultima resposta 16 de abr. de 2008
Respostas 14
Participantes 7