Negocio

Java Random: Método e exemplos

Introdução ao método aleatório Java

Os números aleatórios têm uma variedade de aplicações nos campos da engenharia e da ciência. Embora você não possa gerar números verdadeiramente aleatórios usando um algoritmo programável, existem classes e funções integradas para gerar números que parecem ser aleatórios. Nesta lição, você aprenderá como usar o método random () em Java, que gera valores decimais pseudoaleatórios, x , no intervalo 0,0 ≤ x <1,0. Este método é invocado pela instrução Math.random (). Observe que os números gerados podem ter um valor máximo de 0,999999 …

Também vale a pena mencionar que existe uma classe Random () que pode ser importada via java.util.Random, mas a classe Random () está fora do escopo desta lição.

Vamos prosseguir com a implementação do método random () em um exemplo.

Exemplo de método aleatório Java

Suponha que você esteja trabalhando no departamento de análise de uma companhia aérea e gostaria de ter uma ideia da receita potencial de um voo de Chicago para Nova York. Suponha que existam três categorias de preços de ingressos: econômica, executiva e primeira classe. Denotamos cada uma dessas categorias com valores inteiros da seguinte maneira:

Classe Econômica: 3

Classe Executiva: 2

Primeira Classe: 1

A capacidade do avião é de 200: 25 assentos na primeira classe, 25 na classe executiva e 150 na classe econômica. O preço para cada categoria de assento é o seguinte:

Classe econômica: $ 100

Classe Executiva: $ 170

Primeira classe: $ 250

Ou seja, presumimos que o preço de cada classe só pode assumir um valor: $ 100 para voar na classe econômica, $ 170 para voar na classe executiva e $ 250 para voar na primeira classe. Além disso, suponha que se mais de 25 pessoas por categoria desejarem comprar assentos na primeira classe ou na classe executiva, cada pessoa adicional além da capacidade máxima de 25 assentos irá optar por não fazer downgrade e não gerar receita.

Primeiro inicializamos as variáveis:

r duplo = 0,0; 
int priceCategory = 0;
receita interna = 0;
int firstClassPassengerCount = 0;
int businessClassPassengerCount = 0;

Em seguida, gere números inteiros pseudo-aleatórios entre 1 e 3, inclusive, para as categorias de preço:

r = Math.random (); 
priceCategory = (int) (3,0 * r) + 1;

Observe como primeiro usamos Math.random () para gerar um valor decimal entre 0,0 e 0,99999 …, inclusive, em seguida, multiplicamos esse valor decimal por 3 para convertê-lo para o intervalo entre 0,0 ≤ r <3,0, com o maior valor possível sendo 2,99999 … Truncamos o resultado com (int) (…), resultando em valores inteiros entre 0 e 2, inclusive, e adicionamos 1 para gerar valores inteiros que estão no conjunto {1, 2, 3 }

Posteriormente, codificamos as declarações condicionais para calcular a receita:

if (priceCategory == 1) { 
  firstClassPassengerCount ++;
  if (firstClassPassengerCount <= 25) {
   receita = receita + 250;
  } outra coisa {
   receita = receita + 0;
 }
}
else if (priceCategory == 2) {
  businessClassPassengerCount ++;
  if (businessClassPassengerCount <= 25) {
   receita = receita + 170;
  } outra coisa {
   receita = receita + 0;
  }
}
else if (priceCategory == 3) {
  receita = receita + 100;
}

Observe como cada declaração condicional começa verificando a categoria de preço. Para categorias de classe não econômica, a contagem de passageiros é incrementada e, em seguida, verificada em outra declaração condicional para determinar a receita. Na categoria de preço da classe econômica, a receita sempre aumenta em 100. Tente executar este código sozinho e, em seguida, crie restrições adicionais por conta própria!

Resumo da lição

Nesta lição, você aprendeu como gerar números pseudoaleatórios usando o método Java random (). Usamos um exemplo para simular diferentes cenários para ver quanta receita uma companhia aérea poderia obter com a venda de assentos com preços variáveis ​​para um próximo voo. Agora você deve se sentir mais confortável ao aplicar o método Java random () a outros tipos de problemas.