gpt4 book ai didi

java - 将范围内的所有质数添加到数组中

转载 作者:行者123 更新时间:2023-11-29 19:13:02 25 4
gpt4 key购买 nike

一般问题:我应该在 for 循环中的注释位置放置什么?

深入问题:在 Android Dev Studio 上的一个程序中,我设置了基本的“Hello World”程序(在文本框中键入消息,单击“发送”按钮,消息出现在下一个 Activity 中) .

但是,我想将该程序改编成一个人可以在文本框中键入一个数字,该程序将找到 1 和输入的数字之间的所有素数。

到目前为止,以下是我的代码,其中包含我不知道如何格式化的语法部分的注释。

public class Main2Activity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
Intent intent = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);

int limit = Integer.parseInt(message);
int a[limit];
for(int i = 1; i <= limit; i++)
{
if(i%2 = 0 || i%3 = 0 || i%5 = 0 || i%7 = 0)
{
//I want the program to move on to the next number
}
else
{
//I want this number to be added into the array
}
}

TextView textView = (TextView) findViewById(R.id.textView);
textView.setText(a);
//a being the name of the array created

我遇到的另一个问题是程序不会将 1、2、3、5 和 7 识别为质数,因为它们会被自己除掉,因此有余数为 0。

有没有一种方法可以在输入其余项之前设置数组的一部分?如果没有,有没有一种方法可以编辑程序,使这些数字显示出来作为素数?

最佳答案

此代码应该可以帮助您:

    String primeNumbers = "";
for (int i = 1, num = 0; i <= limit; i++) {
int counter = 0;
for (num = i; num >= 1; num--) {
if (i % num == 0) {
counter = counter + 1;
}
}
if (counter == 2) {

primeNumbers += i + " ";
}
}

TextView textView = (TextView) findViewById(R.id.textView);
textView.setText(primeNumbers);

关于java - 将范围内的所有质数添加到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44530496/

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