עבור לתוכן
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.

איך עושים דבר כזה?? בעיה ב-C.

Featured Replies

פורסם

היום היה לי מבחן במחשבים.. (אני חדש במגמה..)

קיצר היה זבל לאללה..

היה לנו תרגיל, שהוא דיי פשוט, הוא היה כזה:

בנה תוכנית אשר תקלוט מטריצה בגודל 10X10 ותדפיס את המספר המינימלי בכל עמודה באלכסון הראשי של המטריצה.

לדוגמה מטריצה בגודל 4X4:

לפני

5  7  2  6

9  1  4  5

2  0  9  7

6  5  7  3

אחרי

5  7  2  3

9  1  2  5

0  9  7

2  5  7  3

כמו שאתם רואים להבין את זה, היה פשוט.. (למשל 3 הוא המספר הכי קטן בעמודה הראשונה וכו') אז איך עושים דבר כזה :\

בתודה מראש!

פורסם

שתי לולאות

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

בסוף המחזור של הטור i אתה לוקח את המספר הכי קטן שמצאת ומכניס אותו למקום ה-(i,i) ועובר לטור הבא

פורסם

אתה לא צריך

אתה עושה כאילו אתה מחפש את המינימום במערך חד מימדי, כאשר האיברים בו הם a(i, i)


int a[10][10], i;
int min;
min = a[0][0];
for(i=1;i<10;i++)
if(a[i][i]<min)
min = a[i][i];

פורסם

אתה מודע לזה שלחפש מינימום במערך חד מימדי זה לרוץ בלולאה ::)

פורסם

אתה לא צריך

אתה עושה כאילו אתה מחפש את המינימום במערך חד מימדי, כאשר האיברים בו הם a(i, i)


int a[10][10], i;
int min;
min = a[0][0];
for(i=1;i<10;i++)
if(a[i][i]<min)
min = a[i][i];

אתה עובד אם ללולאה אחת שרצה N פעמים במקום שתי ללולאות שירוצו N*N פעמים.....מה עדיף?

פורסם

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

פורסם

אה.. אופס.. חשבתי שצריך להציג את המספר המינימלי באלכסון.


for(i=0;i<3;i++)// עובר על העמודות
{
min = arr[0][i];// -
for(j=1;j<3;j++)// |_ חיפוש המינימום
if(arr[j][i]<min)// |
min = arr[j][i];// -
arr[i][i] = min;//שם את המינימום באלכסון

}

כאשר הסוגריים הראשונות מייצגות את השורה

והשניים מייצגות את העמודה

(תלוי איך אתה קולט)

התשובה הנכונה

יש כאן 2 לולאות, אחת מקוננת בשניה.

עבור כל עמודה את מוצא את המינימום שלה, ושם את מה שמצאת בתא מתאים.

פורסם

אתה עובד אם ללולאה אחת שרצה N פעמים במקום שתי ללולאות שירוצו N*N פעמים.....מה עדיף?

לא הבנת

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

מה ניראה לך יש בתוך הפונקציה הזאת?

נכון מאד...לולאה

נו אתה רואה

בסופו של דבר גם ככה כתבת שתי לולאות(בדיוק מה שאמרתי)

פורסם

צודק

פורסם
  • מחבר

תודה לכולם. :yelclap:

ארכיון

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

דיונים חדשים

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.