Java - Dúvida lógica de programação

4 respostas
java
B

Gostaria que alguém pudesse me ajudar em uma lógica para colocar em meu programa por favor. É o seguinte: Eu pergunto para a pessoa:

sout(Quantas pessoas?);
variablePeople = scan.nextLine();

~aqui eu pergunto o nome de cada pessoa e armazeno em um vetor de String~

Depois eu crio um Random numberRandom = new Random(variablePeople); para que a quantidade de números aleatórios gerados seje igual ao de pessoas. Dessa forma, a minha dúvida está aqui: Eu queria atribuir cada número ao nome de cada pessoa, ou seja, cada vez que o usuário executar o programa, terei um nome diferente no output. Alguém poderia ajudar?

4 Respostas

matheus.cirillo

É gerar um número que representa a posição no vetor:

import java.util.*;

public class MinhaClasse {
	
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		Random r = new Random();
		
		System.out.println("Informe o número de pessoas");
		String nomes[] = new String[s.nextInt()];
		s.nextLine();

		for (int i = 0; i < nomes.length; i++) {
			System.out.print("Informe o " + (i+1) +"º nome -> ");
			nomes[i] = s.nextLine();
		}
		
		// aqui estou gerando um número para representar a posição aleatória do vetor
		System.out.println("Nome aleatório: " + nomes[r.nextInt(nomes.length)]);
	}

}
B

Poxa! verdade, que dúvida besta haha

Olha como fiz: http://prntscr.com/dp4p5i

O que acha do meu código?

Obrigado !

matheus.cirillo

É isso aí, hahaha.
Qualquer dúvida tamo aí :wink:

Abraços.

B

Valeu mano, obrigado pelo help!

Criado 28 de dezembro de 2016
Ultima resposta 29 de dez. de 2016
Respostas 4
Participantes 2