آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

سلام برنامه ی اعداد اول رو با ++c نوشتنم درست هست ولی نمیدونم توی eclips مشکل از کجاست

Devtpoint  11 سال پیش  11 سال پیش
0 0

 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 تا مورد اشتباه توشه .

0 0
ممنون بابت راهنمایی . (11 سال پیش)
پاسخ به سوال 
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);

}
}
}

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .