Agora temos uma assistente virtual no fórum!!!

61. Re: Agora temos uma assistente virtual no fórum!!!

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 17/01/2023 - 20:18h

public static int getMinorAge(Person[] people) {
int minorAge = Integer.MAX_VALUE;
for (Person person : people) {
if (person.getAge() < minorAge) {
minorAge = person.getAge();
}
}
return minorAge;
}



  


62. Re: Agora temos uma assistente virtual no fórum!!!

Adriano Siqueira
adrisiq

(usa KDE Neon)

Enviado em 17/01/2023 - 20:19h


alexabolada escreveu:

public static int getMinorAge(Person[] people) {
int minorAge = Integer.MAX_VALUE;
for (Person person : people) {
if (person.getAge() < minorAge) {
minorAge = person.getAge();
}
}
return minorAge;
}


Rewrite this code to return the person object instead of the age.


63. Re: Agora temos uma assistente virtual no fórum!!!

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 17/01/2023 - 20:20h

public static Person getMinor(Person[] people) {
Person minor = null;
int minorAge = Integer.MAX_VALUE;
for (Person person : people) {
if (person.getAge() < minorAge) {
minor = person;
minorAge = person.getAge();
}
}
return minor;
}



64. Re: Agora temos uma assistente virtual no fórum!!!

Adriano Siqueira
adrisiq

(usa KDE Neon)

Enviado em 17/01/2023 - 20:23h

@alexabolada Tem-se um conjunto de dados contendo a altura e o sexo de n pessoas. Fazer um programa em java que calcule e escreva a maior e a menor altura do grupo, a média de altura das mulheres e o número de homens.


65. Re: Agora temos uma assistente virtual no fórum!!!

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 17/01/2023 - 20:24h

R: A primeira coisa a se fazer é ler os dados do conjunto. Para isso, você pode usar Scanner do pacote java.util. Uma vez lido todos os dados, é necessário obter as alturas máxima, mínima, média de altura das mulheres e o número de homens. Para isso, pode-se fazer um loop para percorrer o conjunto de dados e comparar a altura de cada pessoa com as variáveis correspondentes. Uma vez comparados todos os dados, basta escrever os resultados usando o comando System.out.println(). Ao final, o programa ficaria assim:


public static void main(String[] args) {

//declarar variáveis
double alturaMaxima = 0, alturaMinima = 0, alturaMediaMulheres = 0;
int numeroHomens = 0;

//criar um Scanner para ler os dados
Scanner input = new Scanner(System.in);

//ler a quantidade de pessoas
System.out.println("Digite a quantidade de pessoas:");
int numeroPessoas = input.nextInt();

//iterar sobre as pessoas
for (int i = 0; i < numeroPessoas; i++) {

//lê o sexo
System.out.println("Informe o sexo da pessoa (M ou F):");
char sexo = input.next().charAt(0);

//lê a altura
System.out.println("Informe a altura da pessoa:");
double altura = input.nextDouble();

if (sexo == 'M') {
//incrementa o número de homens
numeroHomens++;
} else if (sexo == 'F') {
//somar a alturas das mulheres
alturaMediaMulheres += altura;
}

//verifica a altura máxima e mínima
if (altura > alturaMaxima) {
alturaMaxima = altura;
}
if (altura < alturaMinima) {
alturaMinima = altura;
}
}
input.close();

//forma para responder a questão
System.out.println("A altura máxima é " + alturaMaxima);
System.out.println("A altura mínima é " + alturaMinima);
System.out.println("A média de altura das mulheres é " + alturaMediaMulheres/numeroHomens);
System.out.println("O número de homens é " + numeroHomens);
}



66. Re: Agora temos uma assistente virtual no fórum!!!

Adriano Siqueira
adrisiq

(usa KDE Neon)

Enviado em 17/01/2023 - 20:30h


alexabolada escreveu:

R: A primeira coisa a se fazer é ler os dados do conjunto. Para isso, você pode usar Scanner do pacote java.util. Uma vez lido todos os dados, é necessário obter as alturas máxima, mínima, média de altura das mulheres e o número de homens. Para isso, pode-se fazer um loop para percorrer o conjunto de dados e comparar a altura de cada pessoa com as variáveis correspondentes. Uma vez comparados todos os dados, basta escrever os resultados usando o comando System.out.println(). Ao final, o programa ficaria assim:


public static void main(String[] args) {

//declarar variáveis
double alturaMaxima = 0, alturaMinima = 0, alturaMediaMulheres = 0;
int numeroHomens = 0;

//criar um Scanner para ler os dados
Scanner input = new Scanner(System.in);

//ler a quantidade de pessoas
System.out.println("Digite a quantidade de pessoas:");
int numeroPessoas = input.nextInt();

//iterar sobre as pessoas
for (int i = 0; i < numeroPessoas; i++) {

//lê o sexo
System.out.println("Informe o sexo da pessoa (M ou F):");
char sexo = input.next().charAt(0);

//lê a altura
System.out.println("Informe a altura da pessoa:");
double altura = input.nextDouble();

if (sexo == 'M') {
//incrementa o número de homens
numeroHomens++;
} else if (sexo == 'F') {
//somar a alturas das mulheres
alturaMediaMulheres += altura;
}

//verifica a altura máxima e mínima
if (altura > alturaMaxima) {
alturaMaxima = altura;
}
if (altura < alturaMinima) {
alturaMinima = altura;
}
}
input.close();

//forma para responder a questão
System.out.println("A altura máxima é " + alturaMaxima);
System.out.println("A altura mínima é " + alturaMinima);
System.out.println("A média de altura das mulheres é " + alturaMediaMulheres/numeroHomens);
System.out.println("O número de homens é " + numeroHomens);
}


Você errou o cálculo para encontrar a média de altura das mulheres. Você dividiu a soma das alturas das mulheres pela quantidade de homens. O correto seria adicionar um contador de mulheres, depois dividir a soma das alturas das mulheres pela quantidade de mulheres.


67. Re: Agora temos uma assistente virtual no fórum!!!

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 17/01/2023 - 20:30h

{"id":"cmpl-6ZphkHmY31eJdSQYm7SlqVW1zsSWP","object":"text_completion","created":1673998252,"model":"text-davinci-003","choices":[{"text":"","index":0,"logprobs":null,"finish_reason":"stop"}],"usage":{"prompt_tokens":1445,"total_tokens":1445}}



68. Re: Agora temos uma assistente virtual no fórum!!!

Adriano Siqueira
adrisiq

(usa KDE Neon)

Enviado em 18/01/2023 - 12:02h

@alexabolada, crie testes unitário usando JUnit 5 para essa classe, levando em consideração todos os cenários possíveis.
public class Somador implements Calculador {

@Override
public double calcular(Double a, Double b) {
return a + b;
}
}



69. Re: Agora temos uma assistente virtual no fórum!!!

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 18/01/2023 - 12:02h

A melhor forma de criar os testes unitários para essa classe usando o JUnit 5 é usando os métodos de asserção. Esses métodos permitem você verificar se o resultado esperado de um cálculo é igual ao resultado real de um cálculo.

Para começar, você pode declarar um objeto da classe Somador usando o construtor padrão:

Somador somador = new Somador(); 


Em seguida, você pode iniciar o teste usando o método de asserção assertEquals() com os argumentos de entrada, o resultado esperado e um erro de margem máxima aceitável:

double esperado = 8.0;\r\ndouble resultado = somador.calcular(4.0, 4.0);\r\nassertEquals(esperado, resultado, 0.0); 


Para testar vários cenários possíveis, você pode criar um loop para executar seus testes para vários conjuntos de argumentos. Se você quiser testar também com entradas negativas, não inteiros ou números com muitas casas decimais, só precisa adicionar mais argumentos ao loop.


70. Re: Agora temos uma assistente virtual no fórum!!!

Adriano Siqueira
adrisiq

(usa KDE Neon)

Enviado em 18/01/2023 - 21:15h

@alexabolada, crie uma expressão regular em java para detectar todos os caracteres que não seja letra nem número.


71. Re: Agora temos uma assistente virtual no fórum!!!

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 18/01/2023 - 21:15h

R: Para criar uma expressão regular em Java para detectar todos os caracteres que não sejam letras nem números, use o seguinte trecho de código:

String regex = "[^a-zA-Z\\d]"; 


Isso detectará todos os caracteres que não sejam letra nem número e você pode usar esse regex para detectar erros de digitação ou caracteres especiais indesejados.


72. Re: Agora temos uma assistente virtual no fórum!!!

Adriano Siqueira
adrisiq

(usa KDE Neon)

Enviado em 23/01/2023 - 16:44h

@alexabolada, qual é a diferença entre esses dois métodos em java?
public void run(Interface anInterface) {
anInterface.run();
}

public <T extends Interface> void run(T t) {
t.run();
}







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts