עבור לתוכן

עזרה עם class ב java

Featured Replies

פורסם

אני רק מתחיל בג'אווה ואני לא מצליח לקרוא ל class ב main . מישהו יכול לעזור ? :nixweiss::kopfpatsch:

הקלאס שלי הוא זה(מתכוון בעיקר ל primes, הקלאס הראשון-isPrime גם פה בגלל שאולי צריך אותו כדי לקבל את השני...)

public static boolean isPrime(int num)
{
boolean ans=true;
if (num==1) ans=false;
for (int i=2; i<=Math.sqrt(num) & ans; i=i+1)
{
if (num%i==0)
ans=false;
}
return ans;

}


public static int[]primes(int min,int max
{
int min1=min;
int j=0;
while (min<max){

if (isPrime(min)) {
j=j+1;
min=min+1;
}
else
min=min+1;
}
int[]arr = new int[j];
int i=0;
while (i<arr.length){
if (isPrime(min1)) {
arr[i]=min1;
i=i+1;
min1=min1+1;}
else
min1=min1+1;
}
return arr;

עכשיו main שלי קורא טוב את הקלאס הראשון אבל אין לי מושג מה צריך לשים בקלאס השני כדי שיעבוד...


public static void main(String[] args) {


int prime= (int)(Math.random()*100);





/* int prime2= prime+10;*/
System.out.println("the number "+prime+" is a Prime number ? "+isPrime(prime));
System.out.println("the prime is: "+primes(x,y));

בבקשה עזרה...

פורסם

הייתי בשמחה עוזר, אבל אני לא מבין את הקוד שלך..

תתחיל בזה שתכניס את הקוד שלך לתגית code (אייקון של #)

דבר שני, אם אני מבין את מה שעשית אז נראה שאתה מנסה להחזיר מערך בעזרת הפונקציה וזה לא עובד ככה.

אתה צריך להשתמש בreturn by reference

פורסם
  • מחבר

שמתי את התוכנית ב code. מקווה שעכשיו היא יותר ברורה.

מה ז"א להחזיר ב "return by reference"? כנראה שאין לי מושג. שמעתי את המשפט בעבר.

פורסם

אתה מבלבל מושגים בסיסים, זה לא קלאסים, זה מתודות שמאוגדות בקלאס. חוץ מזה, אתה מדפיס מערך, אתה לא יכול להדפיס אותו, אתה צריך לסרוק אותו עם לולאת for ולהדפיס איבר איבר.

פורסם
  • מחבר

רציתי לדעת איך אני מוציא פלט מהקלאס הזה-primes,שבנוי היטב: (אני בטוח שהוא קשור גם לקלאס הקודם - isPrime) תודה לעוזרים.

public static int[]primes(int min,int max)
{
int min1=min;
int j=0;
while (min<max){

if (isPrime(min)) {
j=j+1;
min=min+1;
}
else
min=min+1;
}
int[]arr = new int[j];
int i=0;
while (i<arr.length){
if (isPrime(min1)) {
arr[i]=min1;
i=i+1;
min1=min1+1;}
else
min1=min1+1;
}
return arr;

אם אוכל לקבל דוגמא רשומה - הכי טוב.

פורסם

public static void primes(int min, int max, int arr[])
.
.
.

אתה מעביר לפוקציה את שלושת המשתנים האלה והיא עושה את החישובים ישירות על המערך שנמצא בmain

להדפיס את המערך:

int i;
for (i=0; i<arr.length; i++)
system.out.println(arr[i]);

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים