נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: פרויקט בשפת C

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
ורד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 18 July 2006 בשעה 16:50 | IP רשוּם
ציטוט ורד

היי לכולם...

אני מכינה פרויקט ב C - ספר טלפונים ממוחשב...

הבסיס הינו מערך בגודל 26 מסוג רשימה מקושרת.. כל תא במערך מכיל אות לועזית מ A ל Z כאשר כל אות היא רשימה מקושרת לכל האנשים ששמם מתחיל באות הזו...

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

חזרה לתחילת העמוד הצג את כרטיס החבר של ורד חפש הודעות אחרות של ורד בקר בדף הבית של ורד
 
pitbull
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 14 May 2005
משתמש: מנותק/ת
הודעות: 209
נשלח בתאריך: 18 July 2006 בשעה 17:00 | IP רשוּם
ציטוט pitbull

לפי דעתי הרעיון שלך טוב, צריך להוסיף עוד מבנה נתונים שיתאר כל מספר טלפון
שם
כתובת
מספר וכל מה שתרצי..
ככה שיש לך עכשיו
מערך מ A עד Z
כל תא במערך הוא רשימה מקושרת כך שכל תא ברשימה הוא ממבנה הנתונים של "מספר טלפון".

איפה בדיוק את צריכה את העזרה? אולי תהיה ספציפית יותר..
חזרה לתחילת העמוד הצג את כרטיס החבר של pitbull חפש הודעות אחרות של pitbull
 
ורד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 20 July 2006 בשעה 08:49 | IP רשוּם
ציטוט ורד

תודה על התגובה...

אכן בניתי מבנה נתונים מסוג person המכיל שם, כתובת וטלפון

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

הגדרתי מערך בגודל 26 מסוג List כך שכל node ברשימה מכיל בשדה האינפורמציה את מבנה הנתונים Person ופוינטר next לשדה הבא...

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

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

אולי זה ארוך אבל.. בכל זאת

תודה

 

 

חזרה לתחילת העמוד הצג את כרטיס החבר של ורד חפש הודעות אחרות של ורד בקר בדף הבית של ורד
 
pitbull
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 14 May 2005
משתמש: מנותק/ת
הודעות: 209
נשלח בתאריך: 20 July 2006 בשעה 14:55 | IP רשוּם
ציטוט pitbull

אז כל תא במערך הוא struct, שדה אחד הוא ה list והשדה השני הוא אות [A..Z].
כדי לעשות ככה שברגע שמכניסים בנאדם חדש לספר, הוא יכנס למקום המתאים לו ברשימה
אז צריך לבנות פונקצייה שתסרוק את הרשימה ותשווה מחרוזת אחרי מחרוזת עם המחרוזת  החדשה [זאת שמחפשים את מיקומה], כל פעם עושים השוואה על ידי הפונקצייה strcmp();
שפשוט משווה איזה סטרינג גדול יותר, צריך להתקדם ברשימה כל עוד המחרוזת שמחפשים את מיקומה "גדולה" מהמחרוזת שנמצאת ברשימה, ברגע שיש מצב שהמחרוזת החדשה "קטנה" מהמחרוזת שנמצאת ברשימה אז פשוט מכניסים את המספר לרשימה.

מקווה שעזרתי לפחות קצת
חזרה לתחילת העמוד הצג את כרטיס החבר של pitbull חפש הודעות אחרות של pitbull
 
ורד
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 23 July 2006 בשעה 10:35 | IP רשוּם
ציטוט ורד

 

אכן עזרת לי.. נקווה לטוב..

תודה על התגובה המהירה והאיכפתית...

שבוע טוב

חזרה לתחילת העמוד הצג את כרטיס החבר של ורד חפש הודעות אחרות של ורד בקר בדף הבית של ורד
 
לירן
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 05 August 2006 בשעה 09:05 | IP רשוּם
ציטוט לירן

את המערך  שמחזיק  את הרשימות המקשורות היתי הופוך למערך של STRACT 

שיכיל את האות ומצביע לאיבר בריאשון ברשימה

חזרה לתחילת העמוד הצג את כרטיס החבר של לירן חפש הודעות אחרות של לירן בקר בדף הבית של לירן
 

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

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

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