بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
سلام برنامه ی اعداد اول رو با ++c نوشتنم درست هست ولی نمیدونم توی eclips مشکل از کجاست
package com.univercity.yasuj.app.Array;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class TestArrayActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button Btn_Execute = (Button) findViewById(R.id.Btn_Execute);
Btn_Execute.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
TextView edttxt = (TextView) findViewById(R.id.edttxt);
int Input = Integer.parseInt(edttxt.getText().toString());
int compare;
int counter = 0;
int[] Array_List = new int[Input];
for (int i = 1; i <= Input; i++)
{
Array_List[i] = i;
}
for (int j = 1; j <= Input; j++)
{
compare = 1;
while (compare <= j) {
if (Array_List[j] % Array_List[compare] == 0)
{
compare++;
counter++;
}
else if ((Array_List[j] % Array_List[compare]) != 0)
{
compare++;
}
}// End While
if (counter <= 2)
{
Log.i("LOG", "Numbeer_Aval = " + Array_List[j]);
counter = 0;
}
else
counter = 0;
}// End for
}
});
}
}
برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال
IIVII
11 سال پیش
0
0
فکر کنم اینطوری بنویسی بهتر باشه .
اگر میخوای یک مقداری وارد بشه تا اون مقدار اعداد اول چاپ بشه اینطوری کار کن
int sum =0;
for(int i=0;i<input;i++){
for(int j=0; input/2;j++){
if(i % j ==0){
sum++;
}
if(sum ==2){
log.i("LOG",Integer.tostring(i));
}
}
}
}
و اگرم میخوای بفهمی عدد ورودی اول هست کافیه مودشو با 2 بگیری در حلقه و توی متقیری مثل بالا بریزی و بعد اگر فقط 2 بار عدد واردش شد یعنی جمعش شد 2 مثل شرطی که گذاشتم راحت بفهمی اول هست . البته بنده اینو تست نکردم همینجوری ذهنی نویشتم شاید درست کار نکنه اما راه سادش همینه شاید یکی یا 2 تا مورد اشتباه توشه .
پاسخ به سوال
Devtpoint
11 سال پیش
0
0
برنامه درست شد و خروجی به صورت گرافیکی است
package com.univercity.yasuj.app.Array;
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class ArrayListNumbers extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final EditText EdtInput = (EditText) findViewById(R.id.EdtInput);
final TextView Edtoutput = (TextView) findViewById(R.id.Edtoutput);
Button Btn_Execute = (Button) findViewById(R.id.Btn_Execute);
Btn_Execute.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
int vorodi = Integer.parseInt(EdtInput.getText().toString());
ArrayList<Integer> out_put = Number_Aval(vorodi);
Edtoutput.setText("\t\t اعداد اول هستند \n " + out_put);
}
});
}
protected ArrayList<Integer> Number_Aval(int number) {
ArrayList<Integer> out1 = new ArrayList<Integer>();
ArrayList<Integer> out2 = new ArrayList<Integer>();
int compare, i, j, counter = 0, m = -1;
for (i = 0; i < number; i++)
{
out1.add(i + 1);
}
for (j = number - 1; j >= 0; j--)
{
compare = 0;
while (j >= compare) {
if (out1.get(j) % out1.get(compare) == 0)
{
compare++;
counter++;
}
else if (out1.get(j) % out1.get(compare) != 0)
{
compare++;
}
}// End While
if (counter <= 2)
{
m++;
out2.add(m, out1.get(j));
counter = 0;
}
else
counter = 0;
}// End for
return out2;
}
پاسخ به سوال
rad
11 سال پیش
0
0
اینم چک کنید
int adad = 50;
int cunter;
for (int n = 1; n < adad; n++) {
cunter = 0;
for (int p = 1; p < adad; p++) {
if (n % p == 0) {
cunter++;
if (cunter < 3 && p == n)
Log.i("log", "Adad Aval= " + p);
}
}
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .