עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

פעולה של סימון אלכסון במערך

Featured Replies

פורסם

אני צריכה לכתוב פעולה שמקבלת מערך בגודל 8X8 ומיקום לדוגמא 0,0

הפעולה צריכה לסמן ב1 את כל התאים שבאלכסון של המיקום

זה הקלט:

00000000

00000000

00000000

00000000

00000000

00000000

00000000

00000000

0,0

וזה אמור להיות הפלט:

90000000

01000000

00100000

00010000

00001000

00000100

00000010

00000001

זו הפעולה שרשמתי:

	static int[][] markAlachson(int[][]arr,int row,int col)
{
for(int j=0;j<8;j++)
{
arr[row][col]=1;
row++;
col++;

}

return arr;
}

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

למישהו יש רעיון איך לשפר את הפעולה?

פורסם

מה זה "האלכסון של המיקום"?

ומה בדיוק ציפית שיקרה כשאת לא מתחילה ב-0,0? הרי את מבצעת בדיוק 9 איטרציות ובכל אחת מהן את מקדמת אם row ו-col ב-1. אם לא תתחילי ב-0,0 אז ברור שתחרגי מגבולות המערך.

נ.ב. הועבר לפורום שפות עילית.

פורסם
  • מחבר

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

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

פורסם

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

פורסם
  • מחבר
:yelclap: תודה רבה
פורסם

את יכולה גם להגביל את I לפי חישוב מוקדם של הI המקסימלי שאת צריכה להגיע אליו.

ארכיון

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

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.