找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
尊貴會員無限看帖不用回覆儲值後自動升級用戶組安全提問(回答) 和 永久尊貴會員 事宜
三上悠亞神奇寶貝一拳超人流出ntrge旬果
ipzz 248爆災雷鋼変態生活解壓縮程フェラ怪嬌嬌王妃zombie's

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

(4月新番)[繁]轉生為

[簡]狼與辛香料 Merch

在店內買個飲料也會出

[繁]格林童話變奏曲03

[繁]魔王學院的不適任

中和廣福路 不滿轎車
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 4406|回復: 9
打印上一主題下一主題

[求助]詢問兩題作法 (陣列)[複製鏈接]

Rank: 1

帖子
269
積分
188 點
潛水值
22390 米
跳轉到指定樓層
樓主
發表於 2016-12-7 05:47 PM|只看該作者|倒序瀏覽
如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。
本帖最後由 asdfg0205 於 2016-12-11 01:53 AM 編輯

我想請問各位大大們 第4題和第5題  還有能解釋一下第2題的題意給我一下嗎? 有點看不懂他在說什麼....請問 第4題 是要找 1-N 的質數 (N自行輸入) 在陣列上該怎麼應用!
第五題 我就不懂了 而且什麼是 方法十 .......





附件: 你需要登錄才可以下載或查看附件。沒有帳號?註冊
分享分享0收藏收藏0支持支持0
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php

使用道具檢舉

Rank: 1

帖子
61
積分
49 點
潛水值
26820 米
頭香
發表於 2016-12-8 08:58 AM|只看該作者
所有積分大於負-100的壞孩子,將可獲得重新機會成為懲罰生,權限跟幼兒生一樣。
第二題

先建立ORANK方法
  1. static int ORANK(int[] nums, int n)
  2. {
  3.             //題意是我猜的
  4.             Array.Sort(nums);//排序
  5.             nums= nums.Reverse().ToArray();//反轉 從大排到小
  6.             return nums.Contains(n) ? Array.IndexOf(nums, n) + 1 : Array.IndexOf(nums, n);//傳回名次或-1
  7. }
複製代碼
呼教方法
  1. int[] nums = new int[3] { 1, 2, 3 };
  2. Console.WriteLine(ORANK(nums, 3));
複製代碼
第四題
  1. int n = 2;
  2. int N = 300;
  3. int[] nums = new int[0];
  4. while (n <= N)
  5. {
  6.                 bool isPrime = true;//判斷是否為質數的變數
  7.                 //用for迴圈從2跑到n-1,在迴圈裡判斷n可不可以被迴圈變數整除
  8.                 //若可以被迴圈變數整除isPrime設為false並跳出迴圈
  9.                 //在迴圈外若isPrime為true印出n
  10.                 for (int i = 2; i < n; i++)
  11.                 {
  12.                     if (n % i == 0)
  13.                     {
  14.                         isPrime = false;
  15.                         break;
  16.                     }
  17.                 }
  18.                 if (isPrime)
  19.                 {
  20.                     //您說要用到陣列,我只想到用陣列存值,實際應用要用List<T>或其他集合類別,這樣一直改變陣列大小不好
  21.                     Array.Resize(ref nums, nums.Length + 1);//改變陣列大小
  22.                     nums[nums.Length - 1] = n;
  23.                     Console.WriteLine(n);
  24.                 }
  25.                 n++;
  26. }
複製代碼
第五題

先建立一個方法
  1. static void CheckValue(string[] source, string value)
  2. {
  3.             if (Array.IndexOf(source, value) > -1)
  4.             {
  5.                 Console.WriteLine(Array.IndexOf(source, value));
  6.             }
  7.             else
  8.             {
  9.                 Console.WriteLine("無此資料");
  10.             }
  11. }
複製代碼
呼叫方法
  1. string[] source = new string[] { "宏碁", "華碩", "鴻海" };
  2. CheckValue(source, "華碩");
  3. CheckValue(source, "台積電");
複製代碼
...
瀏覽完整內容,請先 註冊登入會員
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。

使用道具檢舉

Rank: 1

帖子
76
積分
193 點
潛水值
4402 米
3
發表於 2016-12-8 11:55 PM|只看該作者
只剩[3]可回答了,[1]的ORANK是什麼阿?我Google都找不到...
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;

  6. namespace Test2
  7. {
  8.     internal class Program
  9.     {
  10.         private static void Main(string[] args)
  11.         {
  12.             //GetMax-1
  13.             Console.WriteLine(GetMax(9, 98));
  14.             //GetMax-2
  15.             Console.WriteLine(GetMax(5, 6, 8, 100, 9487, 1, 2, 3, 4, 5, 6, 7, 8, 9));
  16.             //GetMax-3
  17.             Console.WriteLine(GetMax(new long[] { 16, 8765, 55688, 84 }));
  18.             Console.ReadKey();
  19.         }

  20.         //GetMax-1
  21.         private static int GetMax(int number1, int number2)
  22.         {
  23.             return (number1 > number2) ? number1 : number2;
  24.         }

  25.         //GetMax-2
  26.         private static int GetMax(params int[] numbers)
  27.         {
  28.             return numbers.Max();
  29.         }

  30.         //GetMax-3
  31.         private static long GetMax(long[] numbers)
  32.         {
  33.             return numbers.Max();
  34.         }
  35.     }
  36. }
複製代碼


...
瀏覽完整內容,請先 註冊登入會員
若新密碼無法使用,可能是數據未更新。請使用舊密碼看看。

使用道具檢舉

Rank: 1

帖子
76
積分
193 點
潛水值
4402 米
4
發表於 2016-12-9 12:32 AM|只看該作者
如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。
[4]有空再來優化程式碼看看,想睡了
  1. using System;
  2. using System.Collections.Generic;

  3. namespace Test4
  4. {
  5.     internal class Program
  6.     {
  7.         private static void Main(string[] args)
  8.         {
  9.             var n = 168;
  10.             var primeNumbers = new List<int>();
  11.             var prime = new List<int> { 2, 3, 5 };

  12.             var z = 1;
  13.             do
  14.             {
  15.                 var countPrime = 0;
  16.                 for (var j = 2; j <= 5; j++)
  17.                 {
  18.                     if (!prime.Contains(z))
  19.                     {
  20.                         if (z % j == 0)
  21.                         {
  22.                             countPrime++;
  23.                         }
  24.                     }
  25.                 }
  26.                 if (countPrime == 0)
  27.                 {
  28.                     primeNumbers.Add(z);
  29.                 }
  30.             } while (z++ < n);

  31.             foreach (var primeNumber in primeNumbers)
  32.             {
  33.                 Console.WriteLine(primeNumber);
  34.             }
  35.             Console.ReadKey();
  36.         }
  37.     }
  38. }
複製代碼
...
瀏覽完整內容,請先 註冊登入會員
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com

使用道具檢舉

Rank: 1

帖子
61
積分
49 點
潛水值
26820 米
5
發表於 2016-12-9 08:27 AM|只看該作者
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。
跨越青春嶺 發表於 2016-12-9 12:32 AM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

[4]有空再來優化程式碼看看,想睡了

您好,
只判斷能否整除2,3,5是不夠的喔
像7的平方(49),11的平方(121)都會被判別為質數...
瀏覽完整內容,請先 註冊登入會員





如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。

使用道具檢舉

Rank: 1

帖子
76
積分
193 點
潛水值
4402 米
6
發表於 2016-12-9 09:15 PM|只看該作者
分享使你變得更實在,可以使其他人感到快樂,分享是我們的動力。今天就來分享你的資訊、圖片或檔案吧。
Josie_2016 發表於 2016-12-9 08:27 AM
下載: 訪客無法瀏覽下載點,請先 註冊登入會員

您好,
只判斷能否整除2,3,5是不夠的喔
像7的平方(49),11的平方(121)都會被判別為質數 ...

對齁,沒想到那麼後面,難怪昨天網路上看的程式碼是要先對N開根號,才跑for迴圈判斷是否是質數,謝謝你耶...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

Rank: 1

帖子
61
積分
49 點
潛水值
26820 米
7
發表於 2016-12-10 06:12 PM|只看該作者
不只平方的問題,還有大於5的質數相乘的問題喔!
像7*11、7*13、7*17、11*13、11*17.......還有非常多組合
這些也都要考慮進去
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。

使用道具檢舉

Rank: 1

帖子
269
積分
188 點
潛水值
22390 米
8
發表於 2016-12-10 08:10 PM|只看該作者
不知道什麼時候 才能變得跟你們一樣 好厲害  
若新密碼無法使用,可能是數據未更新。請使用舊密碼看看。

使用道具檢舉

Rank: 1

帖子
61
積分
49 點
潛水值
26820 米
9
發表於 2016-12-11 10:46 AM|只看該作者
如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。
asdfg0205您好,
寫程式沒有捷徑,多看、多想及多練習,
比我厲害的人很多,不要和別人比,要求自己進步才是最重要的
其實上面我貼的程式內層迴圈數可以再減少(我後來才想到)
只要將下面程式
  1. for (int i = 2; i < n; i++)
  2. {
  3.                     if (n % i == 0)
  4.                     {
  5.                         isPrime = false;
  6.                         break;
  7.                     }
  8. }
複製代碼
改為如下(只除以質數)
  1. for (int i = 0; i < nums.Length; i++)
  2. {
  3.                     if (n % nums[i] == 0)
  4.                     {
  5.                         isPrime = false;
  6.                         break;
  7.                     }
  8. }
複製代碼
可以減少內層迴圈執行次數
...
瀏覽完整內容,請先 註冊登入會員
成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。

使用道具檢舉

Rank: 1

帖子
76
積分
193 點
潛水值
4402 米
10
發表於 2016-12-12 11:25 PM|只看該作者
如果你忘記伊莉的密碼,請在登入時按右邊出現的 '找回密碼'。輸入相關資料後送出,系統就會把密碼寄到你的E-Mail。
錯誤中學習後,這是我最終版本
  1. using System;
  2. using System.Collections.Generic;

  3. namespace Test4
  4. {
  5.     internal class Program
  6.     {
  7.         private static void Main(string[] args)
  8.         {
  9.             var n = 500;
  10.             var primeNumbers = new List<int>();
  11.             var count = 1;
  12.             do
  13.             {
  14.                 var isPrime = true;
  15.                 var boundary = (int)Math.Floor(Math.Sqrt(count));
  16.                 for (var j = 2; j <= boundary; j++)
  17.                 {
  18.                     if (count % j == 0)
  19.                     {
  20.                         isPrime = false;
  21.                         break;
  22.                     }
  23.                 }
  24.                 if (isPrime)
  25.                 {
  26.                     primeNumbers.Add(count);
  27.                 }
  28.             } while (count++ < n);

  29.             foreach (var primeNumber in primeNumbers)
  30.             {
  31.                 Console.WriteLine(primeNumber);
  32.             }
  33.             Console.ReadKey();
  34.         }
  35.     }
  36. }
複製代碼
...
瀏覽完整內容,請先 註冊登入會員





成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部