עבור לתוכן

תוכן נמחק

Featured Replies

פורסם

תוכן נמחק

פורסם

למה אתה בודק שיוויון בשורה הזאת?

 if (a[i+1] == a[i]) return true;

מה שאתה צריך לבדוק זה האם האיבר הנוכחי גדול או שווה מהאיבר הבא,

אם כן, אז תחזיר false, אם לא, תמשיך פשוט לאיטרציה הבאה במערך

עד אשר תסיים את כל המערך.

אם סיימת את הריצה על כל המערך משמע שכל איבר במערך קטן מהאיבר שאחריו

ולכן המערך הוא מערך עולה אז במקרה כזה תחזיר true.

עריכה:

הצעה קטנה ממני, לכתוב if ולולאות וכד' בלי בלוק שתוחם את ההוראות שבפנים (אפשרי אם יש רק שורה אחת בפנים)

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

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

ולכן אני (אישית, לא כולם יסכימו איתי) מעדיף שלא לכתוב ככה לולאות ו-if

פורסם
  • מחבר

תוכן נמחק

פורסם

כמו שאמרתי,

אם האיבר הנוכחי גדול או שווה מהאיבר שאחריו, תחזיר false

אם לא, אל תחזיר שום דבר אלא פשוט תמשיך לאיטרציה הבאה.

אם הגעת לאחרי הלולאה (כלומר לא עשית עדיין return false)

אז כל איבר קטן מהאיבר שאחריו, ולכן המערך עולה ולכן

אתה צריך להחזיר true

פורסם

יש לך שתי בעיות:

קודם כל, בתנאי העצירה של הלולאה צריך להיות לך > ולא =>, אחרת תהיה לך חריגה מאורך המערך.

חוץ מזה, התנאי שלך עובד "הפוך" באופן לוגי - התכנית צריכה לבדוק אם המערך הוא עולה, כלומר אם האיבר הראשון קטן מהאיבר השני וגם האיבר השני קטן מהשלישי וגם השלישי קטן מהרביעי וכן הלאה. כלומר, הפונקציה צריכה לעבור על המערך, ולעצור ברגע שהיא מוצאת איבר שאינו קטן מהאיבר אחריו (ולהחזיר false במקרה הזה).

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

פורסם
  • מחבר

תוכן נמחק

פורסם

לכתוב את הפתרון תמיד אפשר לכתוב לך.

אני בטוח שאפשר גם למצוא קוד בגוגל בדקה וחצי.

אבל (וואו אני נשמע כמו מורה או זקן. או מורה זקן) ככה לא תלמד שום דבר...

בכל מקרה, אם אתה מתעקש:

public static bool UpArray(int[] a)

{

for (int i = 0; i < a.Length - 1; i++)

{

if (a[*i] >= a[i+1])

{

return false;

}

}

return true;

}

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

ובנוסף, מצטער על המחסור בתגית code, אבל לא הצלחתי להשתמש בה וגם לצבוע את הטקסט.

פורסם

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

משהו יכול לכתוב לי קוד מתאים? אני ממש אשמח אני צריך את למבחן מחר.

תסתכל על ההערה הראשונה בהודעה הקודמת שלי.

פורסם
  • מחבר

תוכן נמחק

ארכיון

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

דיונים חדשים