ABA


"יש בעיה במיון מערך עם מערך עזר בסי פלוס פלוס"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14157 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14157
uriel2 
חבר מתאריך 1.12.02
54 הודעות
   10:25   07.06.07   
אל הפורום  
  יש בעיה במיון מערך עם מערך עזר בסי פלוס פלוס  
 
   יש לי מערך לא ממוין ואני צריך למיין את המערך אבל במערך אחר... כאילו כל פעם למצוא את המספר הקטן ביותר במערך ולשים אותו במערך אחר וככה המערך האחר יהיה ממוין והמערך המקורי ישאר לא ממוין ...
הבעיה שלי שכל פעם שאני מחפש במערך את המספר הקטן ביותר הוא מוצא לי את אותו מספר קטן נגיד לדוגמא אם יש לי מערך :5,8,9,2,7,3,1,6 אז כל פעם הוא מוצא לי את מספר 1 במערך אני צריך שאחרי שהוא מצא לי את המספר שיחפש את המספר השני הכי קטן ואז השלישי וכו' ..

לדוגמא:#include "stdafx.h"
#include<iostream>
#include <stdlib.h>
using namespace std;

const int SIZE = 10;
int sum=0;
void main(){

int array1={6,5,9,3,5,8,0,2,1,7};
int temp;

for (int count=0;count<10;count++){
temp=array1;
for (int count2=0;count2<9;count2++){
if (temp>array1)
temp=array1;
}
}

}

מה אני צריך לשנות כדי שיעשה לי את זה??

תודה רבה!!


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  מן הסתם הוא ימצא לך את המספר הנמוך ביותר... Limp Bizkit 07.06.07 14:19 1
  מותר להשתמש במערך עזר שלישי? (ללא העתקת המספרים) FireAngel 07.06.07 16:09 2
  עשיתי את זה פעם בASM... כנס DLN 07.06.07 22:38 3
     לא יעיל... Limp Bizkit 08.06.07 05:27 4
         והערך המקסימלי שאתה תשים בתא הוא הערך המקסימלי DLN 08.06.07 15:56 5
             דבר ראשון ב-++C הגודל של int הוא 32 סיביות Nesher  08.06.07 16:03 6
                 כע באתי לרשום signed... ללא סימן זה 65536 כע DLN 08.06.07 16:16 7
                     INT = 4 BYTE = 32 BIT Net_Boy  08.06.07 16:30 8
                         כע אבל משהו לא מסתדר לי... DLN 08.06.07 19:30 9

       
Limp Bizkit
חבר מתאריך 2.9.02
3436 הודעות
   14:19   07.06.07   
אל הפורום  
  1. מן הסתם הוא ימצא לך את המספר הנמוך ביותר...  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 07.06.07 בשעה 14:20 בברכה, Limp Bizkit
 
האלגוריתם שלך עובד, אבל כל פעם שהוא עובר על המערך הוא באמת מוצא את המספר הנמוך ביותר - אחד, וככה התוכנית "נתקעת" על המספר 1

אני צריך לדעת את התשובה לשאלה הזו לפני שאני אוכל לעזור לך :

המערך המקורי - מותר לשנות את סדר האיברים ? או שכל האיברים חייבים להישאר במקומם ולעבור מיון "ישירות" למערך החדש ?

Ask any racer, any real racer. It doesn't matter if you win by an inch or a mile; winning's
winning.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
FireAngel

   16:09   07.06.07   
אל הפורום  
  2. מותר להשתמש במערך עזר שלישי? (ללא העתקת המספרים)  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 07.06.07 בשעה 16:17 בברכה, FireAngel
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   22:38   07.06.07   
אל הפורום  
  3. עשיתי את זה פעם בASM... כנס  
בתגובה להודעה מספר 0
 
   הפתרון הכי פשוט פה זה לשים בכל תא ערך גבוה כלשהו... בשביל זה אתה צריך כל פעם למצוא גם את האינדקס בו נמצא המינימום (המיקום של התא שבו הערך המינימלי) ובסוף הריצה של הלולאה שמוצאת את המספר הכי נמוך ומעתיקה אותו למערך העזר ולשים בתוך התא שנמצא בו הערך המינימלי ערך גדול כלשהו
32768 יתאים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Limp Bizkit
חבר מתאריך 2.9.02
3436 הודעות
   05:27   08.06.07   
אל הפורום  
  4. לא יעיל...  
בתגובה להודעה מספר 3
 
   התוכנית תהיה מוגבלת לערך המקסימלי שאתה תשים בתא!

כותב האשכול - בבקשה תענה על השאלה ששאלתי

Ask any racer, any real racer. It doesn't matter if you win by an inch or a mile; winning's
winning.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   15:56   08.06.07   
אל הפורום  
  5. והערך המקסימלי שאתה תשים בתא הוא הערך המקסימלי  
בתגובה להודעה מספר 4
 
   בכל מקרה
32768 זה הערך הכי גבוה שאפשר לשים בunsigned int בכל מקרה
ואם אתה תשתמש בdouble אז תשים את הערך הכי גבוה ששמים בדאבל
כמובן שיש עוד דרכים כמו להכניס את האינדקס של התא המינימלי לתוך מערך עזר שלישי ולדלג עליו.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Nesher  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 2.7.02
2 הודעות, 24 פידבק
   16:03   08.06.07   
אל הפורום  
  6. דבר ראשון ב-++C הגודל של int הוא 32 סיביות  
בתגובה להודעה מספר 5
 
ערכתי לאחרונה בתאריך 08.06.07 בשעה 16:04 בברכה, Nesher
 
או שאני מסטול קצת...
דבר שני גם אם זה 16 המקסימום זה לא 32768 אלא 65536 (זה ללא סימן כלומר כפול מהגודל המקסימלי האפשרי לבעל סימן שזה מה שרשמת)


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   16:16   08.06.07   
אל הפורום  
  7. כע באתי לרשום signed... ללא סימן זה 65536 כע  
בתגובה להודעה מספר 6
 
   ואני גם לא בטוח בקשר לסיביות :|


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   16:30   08.06.07   
אל הפורום  
  8. INT = 4 BYTE = 32 BIT  
בתגובה להודעה מספר 7
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   19:30   08.06.07   
אל הפורום  
  9. כע אבל משהו לא מסתדר לי...  
בתגובה להודעה מספר 8
 
   תמיד שהייתי משתמש בבורלנד זה היה 16 סיביות כלומר לא יכלתי לעלות מ32768...
וגם בספר הוד-עמי שיש לי פה רשום שני סוגי שלם אחד 16 סיביות ואחד 32...
אני מבין שזה תלוי במעבד יכול להיות שיש קומפיילרים שמגבילים את זה או משהו נאערף


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net