none
星座判斷 RRS feed

  • 問題


  • 第一行輸入一個整數n(1<=n<=12),表示有幾筆測資。每筆測資輸入月及日期。

    輸出說明:

    依照星座標準,將月及日期轉成星座輸出

    Input

    Output

    2

    08 20

    06 24

    Leo

    Cancer

    我不會控制他重複輸入資料的部份,求解


    2018年8月11日 上午 04:38

所有回覆

  • 在你原先的輸入加上迴圈。

    把你該段程式碼貼出來。


    不精確的問法,就會得到隨便猜的答案;自己都不肯花時間好好描述問題,又何必期望網友會認真回答?

    2018年8月11日 下午 03:47
  •    string[] str = Console.ReadLine().Split(' ');

                if (str[0] == "" || str[0] == "0") return;

                int i = int.Parse(str[0]);

                string[] line = Console.ReadLine().Split(' ');

                if (i > 12) return;

            

                    int m = int.Parse(line[0]);

                    int d = int.Parse(line[1]);

               

               

             

             

                    if (m == 01 && d < 21)

                    {

                        Console.Write("Capricorn");

                    }

                    else if (m == 01 && d > 21)

                    {

                        Console.Write("Aquarius");

                    }

                    else if (m == 02 && d < 19)

                    {

                        Console.Write("Aquarius");

                    }

                    else if (m == 02 && d > 19)

                    {

                        Console.Write("Pisces");

                    }

                    else if (m == 03 && d < 21)

                    {

                        Console.Write("Pisces");

                    }

                    else if (m == 03 && d > 21)

                    {

                        Console.Write("Aries");

                    }

                    else if (m == 04 && d < 20)

                    {

                        Console.Write("Aries");

                    }

                    else if (m == 04 && d > 20)

                    {

                        Console.Write("Taurus");

                    }

                    else if (m == 05 && d < 21)

                    {

                        Console.Write("Taurus");

                    }

                    else if (m == 05 && d > 21)

                    {

                        Console.Write("Gemini");

                    }

                    else if (m == 06 && d < 21)

                    {

                        Console.Write("Gemini");

                    }

                    else if (m == 06 && d > 21)

                    {

                        Console.Write("Cancer");

                    }

                    else if (m == 07 && d < 22)

                    {

                        Console.Write("Cancer");

                    }

                    else if (m == 07 && d > 22)

                    {

                        Console.Write(" Leo");

                    }

                    else if (m == 08 && d < 24)

                    {

                        Console.Write(" Leo");

                    }

                    else if (m == 08 && d > 24)

                    {

                        Console.Write(" Virgo");

                    }

                    else if (m == 09 && d < 24)

                    {

                        Console.Write(" Virgo");

                    }

                    else if (m == 09 && d > 24)

                    {

                        Console.Write(" Libra");

                    }

                    else if (m == 10 && d < 24)

                    {

                        Console.Write(" Libra");

                    }

                    else if (m == 10 && d > 24)

                    {

                        Console.Write(" Scorpio");

                    }

                    else if (m == 11 && d < 23)

                    {

                        Console.Write(" Scorpio");

                    }

                    else if (m == 11 && d > 23)

                    {

                        Console.Write(" Sagittarius");

                    }

                    else if (m == 12 && d < 22)

                    {

                        Console.Write(" Sagittarius");

                    }

                    else if (m == 12 && d > 22)

                    {

                        Console.Write(" Capricorn");

                    }

               Console.ReadKey();

          

    這是我的程式碼,我想要得到的效果是,假設我第一個輸入

    是2,我就可以輸入兩個日期,得到兩個答案,所以說我的問題是,如何控制我的第一個輸入

    讓我可以重複輸入日期,而您的方式我試過了,但是還是不成功,懇請您可以解答我的問題

    這題是E-tutor 上 ITSA 63屆比賽的第一題,拜託了。

    2018年8月12日 上午 04:14
  • 1. 把星座抽出來當函數

    2. 使用 DateTime 型別,因此星座部分可以用日期陣列,改用迴圈跑,只要判斷是否小於陣列日期。

    3. 把次數當迴圈上限變數


    不精確的問法,就會得到隨便猜的答案;自己都不肯花時間好好描述問題,又何必期望網友會認真回答?

    2018年8月12日 下午 02:34
  • 謝謝,我會再試試,如果以後還有問題,還請您不吝賜教

    2018年8月13日 上午 05:05