我已经写了一些代码,想知道如何使所有低于10,(2,3,5,7)的质数乘以0,(1,2,3, 4,5)。第五行的n是10以下的质数。
package sct;
public class PrimeNumberMultiplicationTables {
}
public static void main(String[] args) {
int n = ??? ;
for(int i=1; i <= 5; i++)
{
System.out.println(n+" multiplied by "+i+" = "+n*i);
}
}
}
在此先感谢您。
答案 0 :(得分:-2)
您必须编写一个主要函数才能找到它。这将帮助您https://stackoverflow.com/a/14650570/3154702。之后,添加一个for循环以迭代所建立的素数,并乘以五个数1,2,3,4,5。
答案 1 :(得分:-2)
这里是C#,您可以将其转换为Java。
class Program
{
static void Main(string[] args)
{
for (var i = 1; i <= 10; i++)
{
if (!IsPrime(i)) continue;
for (var j = 1; j <= 5; j++)
{
var value = i * j;
Console.WriteLine(i + " multiplied by " + j + " = " + value);
}
}
Console.ReadLine();
}
public static bool IsPrime(int candidate)
{
if ((candidate & 1) == 0)
{
return candidate == 2;
}
for (var i = 3; (i * i) <= candidate; i += 2)
{
if (candidate % i == 0)
{
return false;
}
}
return candidate != 1;
}
}
添加Java版本:
public class HelloWorld{
public static void main(String []args){
for (int i = 1; i <= 10; i++)
{
if (!IsPrime(i)) continue;
for (int j = 1; j <= 5; j++)
{
int value = i * j;
System.out.println(i + " multiplied by " + j + " = " + value);
}
}
}
public static boolean IsPrime(int candidate)
{
if ((candidate & 1) == 0)
{
return candidate == 2;
}
for (int i = 3; (i * i) <= candidate; i += 2)
{
if (candidate % i == 0)
{
return false;
}
}
return candidate != 1;
}
}