您的位置:首页 > 编程语言 > C#

c#学习摘录:类\继承\接口\字段、方法、属性\浅深复制(4)

2017-05-11 09:10 441 查看
修改之上扑克牌代码:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 控制台
{
public class 生成一副牌
{
public readonly 牌13 牌值;
public readonly 花色 牌色;

private 生成一副牌()
{

}

public 生成一副牌(牌13 新牌值, 花色 新牌色)
{
牌值 = 新牌值;
牌色 = 新牌色;
}

public override string ToString()
{ return 牌值 + "." + 牌色; }
}
public class 定义强类型牌 : CollectionBase
{
public void Add(生成一副牌 新牌值)
{ List.Add(新牌值); }
public void Remove(生成一副牌 新牌值)
{ List.Remove(新牌值); }
public 定义强类型牌() { }
public 生成一副牌 this[int 组序]
{
get { return (生成一副牌)List[组序]; }
set { List[组序] = value; }
}
public void CopyTo(定义强类型牌 强类型牌)
{
for (int 序 = 0; 序 < this.Count; 序++) 强类型牌[序] = this[序];
}
public bool Contains(牌13 卡片)
{ return InnerList.Contains(卡片); }
}
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 控制台
{
public class 发牌
{
private 生成一副牌[] 牌组;

//public 发牌()
//{
// 牌组 = new 生成一副牌[52];
// for (int 色花 = 0; 色花 < 4; 色花++)
// for (int 牌值 = 1; 牌值 < 14; 牌值++)
// 牌组[色花 * 13 + 牌值 - 1] = new 生成一副牌((牌13)牌值, (花色)色花);
//}

//public 生成一副牌 读牌(int 牌发)
//{
// if (牌发 >= 0 && 牌发 <= 51) return 牌组[牌发];
// else throw new System.NotImplementedException();
//}

//public void 拖曳()
//{
// 生成一副牌[] 新牌 = new 生成一副牌[52];
// bool[] 标记 = new bool[52];
// Random 随机数 = new Random();
// for (int 值 = 0; 值 < 52; 值++)
// {
// int 发 = 0; bool 记 = false;
// while (记 == false)
// {
// 发 = 随机数.Next(52);
// if (标记[发] == false) 记 = true;
// }
// 标记[发] = true;
// 新牌[发] = 牌组[值];
// }
// 新牌.CopyTo(牌组, 0);
//}

private 定义强类型牌 卡片集 = new 定义强类型牌();
public 发牌()
{
for (int 色花 = 0; 色花 < 4; 色花++)
for (int 牌值 = 1; 牌值 < 14; 牌值++)
卡片集.Add(new 生成一副牌((牌13)牌值, (花色)色花));
}
public 生成一副牌 读牌(int 牌发)
{
if (牌发 >= 0 && 牌发 <= 51) return 卡片集[牌发];
else throw new System.NotImplementedException();
}
public void 拖曳()
{
定义强类型牌 新的牌 = new 定义强类型牌();
bool[] 标记 = new bool[52];
Random 随机数 = new Random();
for (int 值 = 0; 值 < 52; 值++)
{
int 发 = 0; bool 记 = false;
while (记 == false)
{
发 = 随机数.Next(52);
if (标记[发] == false) 记 = true;
}
标记[发] = true;
新的牌.Add((生成一副牌)卡片集[发]);
}
新的牌.CopyTo(卡片集);
}
}
}

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 集合示例
{
class 求素数
{
private long 最小, 最大;
public 求素数() : this(2, 100) { }
public 求素数(long 最低限度, long 最大限度)
{
if (最小 < 2) 最小 = 2; else 最小 = 最大限度;
最大 = 最大限度;
}
public IEnumerator GetEnumerator()
{
for (long 可能素数 = 最小; 可能素数 <= 最大; 可能素数++)
{
bool 逻辑 = true;
for (long 可能因素 = 2; 可能因素 <= (long)Math.Floor(Math.Sqrt(可能素数)); 可能因素++)
{
long 求余 = 可能素数 % 可能因素;
if (求余 == 0)
{
逻辑 = false;
break;
}
}
if (逻辑) yield return 可能素数;
}
}
}
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐