עזרה בתרגיל JAVA - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

עזרה בתרגיל JAVA


intel suck

Recommended Posts

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

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

מה שעשיתי זה פירקתי את התא הראשון לספרותיו ואת התא השני לספרותיו וכל זה בFOR שעובר על כל המערך שהתקבל.

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

תודה יום מצויין

קישור לתוכן
שתף באתרים אחרים

איך אתה מצפה שנעזור בלי שתאמר מה ניסית לעשות (כלומר מה הקוד שכתבת)?

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

קישור לתוכן
שתף באתרים אחרים

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

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

אחר כך תתקן את הפונקציה ככה שהיא תחזיר את הספרה הראשונה.

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

קישור לתוכן
שתף באתרים אחרים

אוקיי הצלחתי בסופו של דבר תודה. יש לי עוד שאלה

במשחק השלכת כדורי הברזל משתתפים 10 שחקנים. כל שחקן זורק בתורו את כדור הברזל מספר לא ידוע של פעמים. השחקן מפסיק לזרוק כדורים לאחר שהוא זורק למרחק שאורכו קטן מאורך הזריקה האחרונה (עבור אותו שחקן).

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

הערה : אין צורך לבדוק את תקינות הקלט.

 public static void main (string[]args)
{
int max=0;
int count=0;
int []a= new int [10];
for (int i=0; i<10; i++)
{
while (a[i]!=-1)
{
if (a[i]>max)
{
count++;
max=a[i];
a[i]=max;
}
}
System.out.println (a[i]);
System.out.println (count);

קישור לתוכן
שתף באתרים אחרים

לא רשמתיאת פקודת הקלט כי חשבתי שזה ברור לא משנה.

המטרה של התוכנית היא להדפיס את הזריקה המקסימלית של כל משתמש את המס' הסידורי ולהדפיס את מס' הזריקה של הזריקה המסימלית אז אני שומר את כל הזריקות המקסימליות של כל משתמש במערך משתמש בפקודת COUNT כדי לספור כמה זריקות נעשו עד זריקת המקסימום ומדפיס את הI.

אז אני צריך להוסיף פקודת הדפסה של ה-I ולהוריד את שתי השורות שהן אותו דבר חוץ מזה הכל בסדר?

ומצטער על כל השאלות

קישור לתוכן
שתף באתרים אחרים

היי,

הרשתי לעצמי לכתוב משהו קטן... מקווה שיעזור לך.

חג שמח!

import java.util.Scanner;

public class Eliran {

public static void main(String[] args) {

Scanner input = new Scanner (System.in);

int[] players = new int[11];

int max=0, count=1, distance;

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

{

System.out.println("player "+i+ " how far did u throw?");

distance = input.nextInt();

while (distance>max)

{

max = distance;

System.out.println("player "+i+ " how far did u throw?");

distance = input.nextInt();

count++;

}

System.out.println("player "+i + ", your max throw reached the distance of "+ max+" meters ");

System.out.println("it took you "+count+ " throw's to achive this.");

System.out.println("");

max = 0;

}

}

}

קישור לתוכן
שתף באתרים אחרים

שלום zahiz007, ברוך הבא לפורום.

הקוד שלך סבבה, אבל שתי הערות:

קודם כל, כשאתה כותב כאן קוד, תשתמש בטג קוד (כפתור # למעלה) על מנת שהוא ייראה טוב.

לגבי הקוד עצמו:

למה הגדרת את המערך בגודל 11, ו-i רץ מ-1 עד 10 (ולא להגדיר את המערך בגודל 10, ואז ש-i ירוץ מ-0)?

חוץ מזה, אתה בכלל לא משתמש במערך.

קישור לתוכן
שתף באתרים אחרים

ערב טוב וחג שמח שניצל,

תודה על הקבלה החמה :-)

הסיבה היחידה שעשיתי זאת היא על מנת שיהיה רשום "player 1" , ולא "player 0" ,אין שום סיבה מעבר לזה...

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

# - קיבלתי.

חג שמח!

קישור לתוכן
שתף באתרים אחרים

  • 9 חודשים מאוחר יותר...

ארכיון

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

×
  • צור חדש...