java - 如何以特定格式打印质数

标签 java

我必须要求用户输入一个数字,并打印出质因数。

但是,这与其他素因数代码不同,因为我需要以特定格式打印它。

如果用户输入27,我必须打印出来

3^3

如果使用输入28,我必须打印出来

2^2*7

我知道如何只打印出质因数,这样如果用户输入 27,它就会打印出来

3 3 3

但是,我很难弄清楚如何输入 ^ 符号和 * 符号。我想我必须计算相同的数字并进行 if 循环(可能),但我不知道如何做到这一点。

import java.util.*;

public class Prime{
   public static void main(String[] args) {
      Scanner input= new Scanner (System.in);

      System.out.println("Enter a number");
      int num= input.nextInt();
      String prim = "";

      for (int i = 2; i <= num ; i++) {
         while (num % i == 0) {
            prim += i + " ";
            num /= i;
         }
      }  


      System.out.println("Prime factors are: " + prim);

   }

}

上面的代码只是打印出因子,我现在要做的是使用 ^ 和 * 更改格式。

谁能帮帮我吗?

感谢任何帮助。

最佳答案

这里识别数字的代码频率,它是 j 变量,而 i 表示检查频率是否为 1 且大于 1 的值及其正确附加以获得所需的格式。

 public static void main(String[] args) {
                 Scanner input= new Scanner (System.in);
                  String result="";
                  System.out.println("Enter a number");
                   int num= input.nextInt();
                  String prim = "";

                  for (int i = 2; i <= num ; i++) {
                      int j=0;
                     while (num % i == 0) {
                        j++;
                        prim += i;
                        num /= i;
                     }
                   if(j>0){
                 if(j>1){
                   result=result+i+"^"+j+"*";
                 }else{
                     result=result+i+"*";
                 }
                }
                  }  


                  System.out.println("Prime factors are: " +result.substring(0,result.length()-1));

               }

关于java - 如何以特定格式打印质数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56388428/

相关文章:

java - 如何在 java 中获取 String java.util.Map.Entry.getKey() 的大小?

java - EhCache 3 : How to unwrap statistics bean?

java - 具有多个实例的集群中的 JMS 持久订阅者

java - 通过Java 8中的真实代码详解Hashmap的大O - put()方法

java - Java 7 中的 Survivor 大小是多少

java - JFreeChart - Java 内存泄漏

javascript - Java 8 LocalDate 到 JavaScript 日期

java - 启动时 EnvironmentPostProcessor 实现类中的 Autowired 属性为 null

java - 如何正确转义JSON中的反斜杠(使用GSON进行反序列化)

java - 无限期cookie设置