עבור לתוכן

שאלה בפונקציות C#

Featured Replies

פורסם

שלום לכולם,

שאלה:

כיתבו שיטה בשם Fill_Array .שמקבלת כפרמטר מספר שלם שמציין אורך של מערך רצוי ומחזירה מערך של double בגודל המתאים אשר מולא בערכים מה-Console ע"י מריץ התוכנית. הפונקציה לא אמורה להדפיס שום כלום למסך - רק לקרוא ל-()Console.ReadLine במספר הנכון של הפעמים ולהחזיר מערך מלא בערכים שהוקלדו. סדר האיברים במערך יהיה זהה לסדר האיברים שהוקלדו ב-Console.

האלגוריתם שעשיתי:

        static int[] Fill_Array(int mum)
        {
            int num = 0;
            int[] new_num = new int [num];
            for (int i = 0; i < new_num.Length ; i++)
            {
                new_num = int.Parse(Console.ReadLine());
            }
            return new_num;
        }

הבעיה:

1. לא מצליח לעשות שהפונקציה תחזיר לי מערך double

2. האם האלגוריתם נכון.

 

תודה לעוזרים,

 

פורסם

קודם כל, אם אתה רוצה מערך של double אז תגדיר את הפונקציה כך (ולא int).

הפונקציה הנ"ל זה בהינתן שהמשתמש מכניס ערך חוקי, אחרת צריך לשים עוד while על הקריאה לconsole שמוודאת שהערך הנכנס הוא double (ע"י שימוש ב tryparse).

        private double[] fillArray(int size)
        {
            double[] myArray = new double[size];

            int i = 0;
            while (i < size)
            {

                myArray[i] = double.Parse(Console.ReadLine());
                i++;
            }

            return myArray;

        }

      }

  • 2 שבועות מאוחר יותר...
פורסם
  • מחבר

אופיר שלום,

אני ביצעתי את זה בדרך הזאת:

   static Double[] Fill_Array(int num)
        {
            //תרגיל 1
            Double[] new_num = new Double [num];
            for (int i = 0; i < new_num.Length ; i++)
            {
                new_num = double.Parse(Console.ReadLine());
            }
            return new_num;
        }
והתשובה נכונה.

רציתי רק לדעת מה ההבדל בין מה שאתה רשמתה לי לבין מה שאני עשיתי?

התשובה של שניהם זהה.

 

תודה,

פורסם

אין הבדל מעשי, הוא השתמש בלולאת while, אתה השתמשת בלולאת for. לולאת for יותר מתאימה במקרה הזה מאשר לולאת while.

ארכיון

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

דיונים חדשים