gpt4 book ai didi

java - 如何求最大质数、除 1 以外的最小因数、数之和

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:24:48 25 4
gpt4 key购买 nike

Herro,嗯,我不确定这是否是你使用这个网站的方式,但呃让我们开始吧......所以我需要这个项目的帮助,我必须这样做 -

输入[][]输出

A - F -> 乘以 3,除以 4

G - J -> 除以 3 + 25

K - N -> 找出最大因子 * 2

O - Q -> 找到最大的素数 * 3

R - W -> 找到除 1 以外的最小因子

X - Z -> 数字总和

所以我想知道我的第一对是否正确,并且在空白处需要帮助。所以字母代表数字,因为“Z”是最后一个字母,所以它是 26,“A”是第一个字母,所以它是 1。所以如果有回应......谢谢!包趣;

import java.util.Scanner;

public class Fun {

public static void main(String[] args) {
// TODO Auto-generated method stub
run();
}

public static void run()
{
input();
evaluateAlphabet();
evaluate();

}
public static void input()
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter a Letter, please");
x = sc.next();
}
public static String x = " ";
public static int temp = 0;
public static int answer = 0;

public static void evaluateAlphabet()
{
if(x.equals("A"))
{
temp = 1;
}
else if (x.equals("B"))
{
temp = 2;
}
else if (x.equals("C"))
{
temp = 3;
}
else if (x.equals("D"))
{
temp = 4;
}
else if (x.equals("E"))
{
temp = 5;
}
else if (x.equals("F"))
{
temp = 6;
}
else if (x.equals("G"))
{
temp = 7;
}
else if (x.equals("H"))
{
temp = 8;
}
else if (x.equals("I"))
{
temp = 9;
}
else if (x.equals("J"))
{
temp = 10;
}
else if (x.equals("K"))
{
temp = 11;
}
else if (x.equals("L"))
{
temp = 12;
}
else if (x.equals("M"))
{
temp = 13;
}
else if (x.equals("N"))
{
temp = 14;
}
else if (x.equals("O"))
{
temp = 15;
}
else if (x.equals("P"))
{
temp = 16;
}
else if (x.equals("Q"))
{
temp = 17;
}
else if (x.equals("R"))
{
temp = 18;
}
else if (x.equals("S"))
{
temp = 19;
}
else if (x.equals("T"))
{
temp = 20;
}
else if (x.equals("U"))
{
temp = 21;
}
else if (x.equals("V"))
{
temp = 22;
}
else if (x.equals("W"))
{
temp = 23;
}
else if (x.equals("X"))
{
temp = 24;
}
else if (x.equals("Y"))
{
temp = 25;
}
else if (x.equals("Z"))
{
temp = 26;
}
else if (x.equals("Qwerty"))
{
temp = 27;
}
}
public static void evaluate()
{
if(temp>=1 && temp<= 6)
{
answer = (temp * 3)/4;
System.out.println("Answer is " + answer);
}
else if(temp >= 7 && temp<= 10)
{
answer = (temp/3) + 25;
System.out.println("Answer is " + answer);
}
else if(temp >= 11 && temp<= 14)
{

}

else if(temp>=15 && temp<= 17)
{
for(int i = temp; i>0; i--)
{
for(int j = 2; j <=i/2 + 1; j++)
{
if(i%j==0)
{
break;
}
if(j==i/2 + 1)
{
answer = i * 3;
}
}
}
System.out.println("Answer is " + answer);
}
else if(temp>=18 && temp<= 23)
{
answer = temp;
}
else if(temp>= 24 && temp<=26)

answer = (answer * 12)%26;
System.out.println("Answer is " + answer);
}
}

-腐败

最佳答案

这里有一个更好的将 char 转换为 int 的方法:假设字符串至少有 1 个字符(检查其长度),您可以通过以下方式获取临时值:

temp = x.getCharAt(0) - 'A' + 1;

或者,安全第一:

temp = 0;
if (x.matches("^[A-Z]{1}$") {
temp = x.getCharAt(0) - 'A' + 1;
}

这里发生了什么?每个字符都有一个 ASCII 码,一个整数。因此,当您有 2 个字符并尝试获取它们之间的距离时,结果是一个 int。 'A' - 'A' = 0(这就是我添加 + 1 的原因),'B' - 'A' = 1 和很快。对于 if 条件,我使用的是 RegExp^表示输入开始,[A-Z]{1}表示A-Z之一,$表示输入结束。因此,如果它是 A-Z,temp 将获得一个值,其他任何内容都不会出现在 if 中,并且您的 temp 将保持为 0,因此您可以轻松测试是否有 A-Z .

代码审查就这些了,我不会给你解决方案,你必须更加努力,使用谷歌。如果我给你准备好复制粘贴的所有内容,你将不会享受和学习。

关于java - 如何求最大质数、除 1 以外的最小因数、数之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19462924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com