Código em JAVA [AJUDA]

1. Código em JAVA [AJUDA]

Meydson Costa
Geralt96

(usa Nenhuma)

Enviado em 19/10/2021 - 09:46h

Bom dia! Alguém poderia me ajudar com o código para o problema abaixo? É um exercício sugerido por um professor de um curso de Engenharia. Abaixo está o solicitado, se alguém puder ajudar, ficaria muito grato.

"Em exercícios anteriores, foi criado um algoritmo para converter um código de cores de resistores em valor numérico da resistência. Agora, iremos fazer o inverso. Faça um programa que, ao informar o valor da resistência, retorne o código de cores do resistor.

Obs.: Basta considerar valores de resistência a partir de 10 Ohm. Em outras palavras, basta considerar as cores preto, marrom, vermelho, laranja, amarelo, verde, azul, violeta, cinza e branco. Não precisa considerar resistores maiores que 91 MOhm. Em outras palavras, eventualmente não será necessário utilizar os tipos de dados unsigned int ou long int para armazenar os valores dos resistores, já que os valores não serão muito grandes numericamente.

Parte 1 ----> Após as mensagens de boas-vindas e informações, incluindo o nome do autor do programa, o usuário deve entrar no teclado com um valor inteiro entre 10 e 91000000. O programa só pode avançar caso o usuário digite um número inteiro nesta faixa de valores.

Obs.: Não precisa testar se o usuário digitou um número inteiro.

Complemento: ao pressionar enter, deve ser impresso ‘o símbolo de Ohm’ após o número digitado.

Parte 2 ----> O computador deve identificar os dois primeiros dígitos e informar se o resistor faz parte da série E-24. (10, 11, 12, 13, 15, 16, 18, 20, 22, 24, 27, 30, 33, 36, 39, 43, 47, 51, 56, 62, 68, 75, 82, 91)

Obs.: Lembre-se de fazer soluções simples e curtas.

Complemento: se não fizer parte do E-24, perguntar novamente pelo resistor.

Parte 3 ----> Deve ter um método que recebe um número, entre 0 e 9, e retorna uma string com o nome da cor. Esse método deve ser utilizado para obter as 3 cores.

Parte 4 ----> As 3 cores retornadas devem ser armazenadas em um vetor de string. Imprimir na tela as três cores.

Complemento: A chamada do método desenvolvido em (3) deve estar dentro de um laço de repetição.

Parte 5 ----> Pergunte ao usuário a potência do resistor. Retorne para o usuário a máxima tensão que aquele resistor pode ser submetido ( V = sqrt (P * R) ). O cálculo deve ser feito dentro de um novo método.




  


2. Re: Código em JAVA [AJUDA]

Meydson Costa
Geralt96

(usa Nenhuma)

Enviado em 19/10/2021 - 13:01h

Consegui a primeira parte, mas ainda não tá o ideal, creio eu. Tive dificuldade no restante...



import java.util.Scanner;
class Main {
public static void main(String[] args) {
System.out.println("Olá, seja bem-vindo! Este programa recebe o valor da resistência e retorna as de cores do resistor, de acordo com o código de cores.");
System.out.println("Autor: Fulano de tal.");
Scanner teclado = new Scanner(System.in);

System.out.println("Informe o valor do resistor");
int res = (teclado.nextInt());

while (res < 10 || res > 91000000) {
System.out.println("Número fora da faixa permitida");
System.out.println("Informe o valor do resistor");
res = (teclado.nextInt());
} System.out.println(res+"&#937;");
}
}



3. Re: Código em JAVA [AJUDA]

Diego Mendes Rodrigues
diegomrodrigues

(usa Ubuntu)

Enviado em 23/10/2021 - 14:12h

Veja se esse código te ajuda:

import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Resistor {
public static void main(String[] args) {
System.out.println("Olá, seja bem-vindo! Este programa recebe o valor da resistência e retorna as de cores do resistor, de acordo com o código de cores.");
System.out.println("Autor: Fulano de tal.");

/* Parte 1 */
int resistor = receberResistor();
System.out.println("Resistor: " + resistor + "\u2126");

/* Parte 2 */
String doisPrimeirosDigitos = (""+resistor).substring(0, 2);

List<String> E24 = Arrays.asList("10", "11", "12", "13", "15", "16", "18", "20", "22",
"24", "27", "30", "33", "36", "39", "43", "47", "51", "56", "62", "68", "75",
"82", "91");

String finalDoisPrimeirosDigitos = doisPrimeirosDigitos;
long selecionouE24 = E24.stream()
.filter(valor -> valor.equals(finalDoisPrimeirosDigitos))
.count();

while (selecionouE24 < 1) {
System.out.println("O valor do resistor deve ser da série E-24!");
resistor = receberResistor();
doisPrimeirosDigitos = (""+resistor).substring(0, 2);

String finalDoisPrimeirosDigitos1 = finalDoisPrimeirosDigitos;
selecionouE24 = E24.stream()
.filter(valor -> valor.equals(finalDoisPrimeirosDigitos1))
.count();
System.out.println(selecionouE24);
}
System.out.println("O resistor faz parte da série E-24");

/* Parte 3 e 4 */
String[] coresSelecionadas = {"", "", ""};
for(int i=0; i<3;i++) {
coresSelecionadas[i] = corDoResistor();
}

System.out.println("Cores escolhidas:");
for(int i=0; i<3;i++) {
System.out.println(coresSelecionadas[i]);
}

/* Parte 5 */
tensaoMaxima(resistor);
}

public static int receberResistor() {
Scanner teclado = new Scanner(System.in);

System.out.println("Informe o valor do resistor (entre 10 e 91000000):");
int resistor = (teclado.nextInt());

while (resistor < 10 || resistor > 91000000) {
System.out.println("Número fora da faixa permitida, entre 10 e 91000000");
System.out.println("Informe o valor do resistor:");
resistor = (teclado.nextInt());
}

return resistor;
}

public static String corDoResistor() {
Scanner teclado = new Scanner(System.in);
System.out.println("Digite o código da cor, entre 0 e 9:");
int cor = (teclado.nextInt());

if (cor < 0 || cor > 9) {
return "";
}
else {
List<String> cores = Arrays.asList("Preto", "Marrom", "Vermelho", "Laranja", "Amarelo", "Verde",
"Azul", "Violeta", "Cinza", "Branco");
return cores.get(cor);
}
}

public static void tensaoMaxima(int resistor) {
Scanner teclado = new Scanner(System.in);
System.out.println("Potência do resistor:");
int potencia = (teclado.nextInt());

long tensao = (long) Math.sqrt(potencia * resistor);
System.out.println("Tensão máxima = " + tensao + "W");
}
}



Atenciosamente,
Diego M. Rodrigues






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts