עבור לתוכן

סיוע בכתיבת קטע תכנות בג''אווה

Featured Replies

פורסם

לילה טוב לכולם,

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

כלומר, למערך אשר הקלט שלו הוא: 1 2 3 4 7 8 5 3 6, הפלט יהיה כדלקמן:

The Biggest number is 8

The lowest number is 1

frequency:

1 1

2 1

3 2

4 1

5 1

6 1

7 1

8 1

להלן הקוד שכתבתי עד כה:

public class Freq {

public static void main(String[] args) {

int array [] = new int [args.length];

for (int i=0; i<array.length; i++)

{

array=Integer.parseInt(args);

}

int low=array[0];

int high=array[0];

for (int i=1; i<array.length; i++)

{

array=Integer.parseInt(args);

if (array>high)

{

high=array;

}

if (array<low)

{

low=array;

}

}

System.out.println("The lowest number is: " + low);

System.out.println("The highest number is: " + high);

}

}

עכשיו השאלה שלי כיצד לכתוב את הקוד של חישוב התדירות?

אשמח לקבלת תשובה,

בתודה מראש,

בוריס

פורסם

עטוף את הקוד שלך בטג קוד (כפתור #, ליד הכפתור של הציטוט). הוא בלתי קריא ככה.

פורסם
  • מחבר

בבקשה:


public class Freq {

public static void main(String[] args) {

int array [] = new int [args.length];

for (int i=0; i<array.length; i++)
{
array=Integer.parseInt(args);
}
int low=array[0];
int high=array[0];
for (int i=1; i<array.length; i++)
{
array=Integer.parseInt(args);
if (array>high)
{
high=array;
}
if (array<low)
{
low=array;
}
}

System.out.println("The lowest number is: " + low);
System.out.println("The highest number is: " + high);

}

}

פורסם
  • מחבר

אוקיי, אני העתקתי מחדש את הקוד מהקומפיילר ישירות לפורום:



public class Freq {

public static void main(String[] args) {

int array [] = new int [args.length];

for (int i=0; i<array.length; i++)
{
array[i]=Integer.parseInt(args[i]);
}
int low=array[0];
int high=array[0];
for (int i=1; i<array.length; i++)
{
array[i]=Integer.parseInt(args[i]);
if (array[i]>high)
{
high=array[i];
}
if (array[i]<low)
{
low=array[i];
}
}

System.out.println("The lowest number is: " + low);
System.out.println("The highest number is: " + high);

}

}

פורסם

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

2. במקום לשמור את הקלט שוב, שמור בכל תא את מספר הקלט, ומונה. (אם עוד לא למד איך - תעשה 2 מערכים)

בכל מעבר על מספר בקלט בדוק האם קלטת אותו כבר.

(רשימה מקושרת עדיפה אם למדת איך להשתמש בה)

פורסם
  • מחבר

לא הבנתי יותר מדי את הסעיף הראשון - אשמח אם תסביר לי יותר באופן בסיסי יותר.

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

פורסם

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

מה בדיוק הבעיה לקשר ביניהם ?

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

פורסם

אתה יודע מה תחום המספרים שאתה יכול לקבל?

ארכיון

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

דיונים חדשים