פורסם 2011 ביוני 2814 שנים יש לי תרגיל שאני אמור לבנות ממספר מתודות, בגדול זה לקבל 2 תאריכים ולכתוב מספר מתודות, אחת מהם היא לקחת את התאריך שמוכנס כ-3 INTs ןלהמיר אותו לסטרינג, אני מנסה לקחת את ה-day ותו תו לשרשר אותו למשתנה והקומפיילר כותב לי: 'int' does not contain a definition for 'Lenth' and no extension method 'Lenth' accepting a first argument of type 'int' could be found (are you missing a using directive or an assembly reference?)using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace T270{ public class Date { public int Day; public int Month; public int Year; //method public void setDate(int dd, int mm, int yy) { this.Day = dd; this.Month = mm; this.Year = yy; } //convert date to string metod public string toString(int day, int month, int year) { string stDate = ""; for (int i = 0; i < day.Lenth; i++) { } return stDate; } } class Program { static void Main(string[] args) { Console.WriteLine("Enter The First Date: "); Console.Write("Enter Day: "); string dd = Console.ReadLine(); Console.Write("Enter Month: "); string mm = Console.ReadLine(); Console.Write("Enter Year: "); string yy = Console.ReadLine(); Console.WriteLine("Enter The Second Date: "); Console.Write("Enter Day: "); string dd2 = Console.ReadLine(); Console.Write("Enter Month: "); string mm2 = Console.ReadLine(); Console.Write("Enter Year: "); string yy2 = Console.ReadLine(); } }}הבעיה שלי נמצאת במתודה שנקראת toString כשאני רושם day.Lenth
פורסם 2011 ביוני 2814 שנים קודם כל, זה נקרא Length ולא Lenth.לגבי הבעיה שלך - day הוא int. למספרים אין "אורך".חוץ מזה, פונקציית toString לא אמורה לקבל ארגומנטים - היא אמורה להמיר את האובייקט עצמו למחרוזת, לא משהו שמגיע מחוץ לאובייקט.
פורסם 2011 ביוני 2814 שנים מחבר מה ז"א אמורה להמיר את האובייקט עצמו למחרוזת, לא משהו שמגיע מחוץ לאובייקט ? איך אני אמור לכתוב את זה ?
פורסם 2011 ביוני 2814 שנים מאיפה אתה לומד #C? פתח את הספר שממנו אתה לומד ותקרא שם על toString ואיך מממשים אותה.
פורסם 2011 ביוני 2814 שנים בשום מקום בספר לא מוסבר על הפונקציה ToString ואיך אמורים לממש אותה?מאיזה ספר אתה לומד?אני אשמח אם תכתוב כאן את התרגיל במלואו.בכל מקרה, זה לא ממש משנה. יש לך מחלקה בשם Date שיש לה שלושה שדות - יום, חודש ושנה. כמו שיש לך (או יכולות להיות לך) מתודות של המחלקה הזו שמחזירות את הערכים של Day/Month/Year, ככה צריכה להיות גם מתודה שמחזירה את הייצוג של התאריך כמחרוזת, מתוך הנתונים שיש בתוך האובייקט - כלומר, היא צריכה לבנות את המחרוזת מתוך השדות Day/Month/Year של האובייקט הנוכחי (this), ולא מתוך ארגומנטים שמגיעים מחוץ לפונקציה.
פורסם 2011 ביוני 2814 שנים מחבר זה התרגיל:Write a class for "Date". Assume that a year has 12 months of 30 days each.Keep 3 private field:int dd; int mm; int yy;Keep the following methods:void setDate(int dd, int mm, int yy);string toString(); //convert date to stringDate nextDay(); //returns the date of the next day.bool isEqual(Date d); //which returns true if both dates are equalbool isLater(Date d); //which returns true if object's date is later than dint difference (Date d); which returns the difference in days between the 2 dates (value will be positive if d is later than object's date)bool isLegalDate(int dd, int mm, int yy); return true if the values are legal as dates.
פורסם 2011 ביוני 2814 שנים אז למה אתה עושה דברים שהתרגיל במפורש אומר לעשות אחרת? לדוגמה, השמות של המשתנים שלך לא נכונים, הנראות (visibility) שלהם לא מתאימה (התרגיל דורש private, אתה עושה public...) וחוץ מזה התרגיל מבקש אומר לך בדיוק מה צריכה להיות החתימה של toString (כלומר, הוא לא מקבל ארגומנטים).תחשוב על איך ממירים מספר למחרוזת. עכשיו תחשוב על איך אתה מציג שלושה מספרים כמחרוזת אחת. אם אתה לא יודע, סימן שאתה צריך כנראה לחזור קצת אחורה בספר...נ.ב. ערוך בבקשה את הכותרת כך שתהיה אינפורמטיבית.
פורסם 2011 ביוני 2814 שנים מחבר טעות שלי, אני אמור לעשות public ולא private.איזה שמות משתנים שלי לא נכונים ?ובקשר למתודה toString תיקנתי אותה אבל אני לא מבין עם איזה משתנים לעבוד בפנים (אני יודע איך לשרשר למחרוזת) אני אמור לעבוד בפנים עם DAY, MONTH ו-YEAR ?
פורסם 2011 ביוני 2814 שנים מחבר תודה רבה.למה הוא אומר שיש שגיאה ב-dd, mm, yy ? The name 'dd' does not exist in the current context
פורסם 2011 ביוני 2814 שנים אז למה אתה עושה דברים שהתרגיל במפורש אומר לעשות אחרת? לדוגמה, השמות של המשתנים שלך לא נכונים
פורסם 2011 ביוני 2814 שנים כן (מצטער, אמרתי משתנים כשהתכוונתי שדות, קיוויתי שזה יהיה ברור בכל זאת).שים לב גם שהתרגיל דרש שהם יהיו private, לא public.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.