用可变个数的ArrayList求素数

ArrayList可以充当一个可变的容器,有时候方便处理未知大小的一组数据。

 1using System;
 2using System.Collections;  //为了使用ArrayList
 3class prime
 4{
 5    
 6    public static ArrayList arr=new ArrayList();    
 7    public static void AddPrime(int arg){
 8        arr.Add(2);        
 9        for (int i=3;i <= arg ;i++)
10        {
11            if(IsPrime(i)){
12                arr.Add(i);
13            }
            
14        }

15        
16
17    }

18    public static bool IsPrime(int arg){        
19        int i=0;
20        
21        while(Convert.ToInt16(arr[i]) * Convert.ToInt16(arr[i]) <=arg){
22            if(arg % Convert.ToInt32(arr[i])==0return false;
23            i++;
24        }

25        
26        //下面的方法完全正确,不过我决定尝试下ArrayList方法。
27        /*
28        foreach (int i in arr)
29        {    
30            if(i*i <= arg){                
31            if(arg % i==0) return false;
32            }else{
33            break;
34            }        
35            
36        }
37        */

38        return true;
39    }

40    public static void Main(){        
41        AddPrime(50);        
42        Console.WriteLine("50以内的素数有:");
43        foreach(int i in arr){
44            Console.Write("{0} ",i);
45        }
    
46            Console.WriteLine();
47            Console.WriteLine("------------------------------------");
48            Console.WriteLine("以下是ArrayList 对象的演示。");
49            Console.Write("arr[1]:{0}  ------- ",arr[1]); //这个打印不规范,arr[1] 为Object,但是仍然能够输出值。
50            Console.Write("Convert.ToInt32(arr[1])*Convert.ToInt32(arr[1]):{0} ",Convert.ToInt32(arr[1])*Convert.ToInt32(arr[1])); //这个打印才是正确做法。
51            
52            
53    }

54}

55
代码下载:/Files/x116/prime.rar
posted @   普若伽门  阅读(206)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
点击右上角即可分享
微信分享提示