seeding.cs

来自「c#设计模式随书源码 c#设计模式随书源码」· CS 代码 · 共 39 行

CS
39
字号
using System;
using System.Collections ;
namespace Seeding
{
	/// <summary>
	/// Summary description for Seeding.
	/// </summary>
	public abstract class Seeding 	{
		protected int       numLanes;                      
		protected int[]     lanes;
		public abstract IEnumerator getSwimmers();
		public abstract int getCount();
		public abstract int getHeats();
		protected abstract void seed();
		//--------------------------------
		protected void calcLaneOrder() {
			lanes = new int[numLanes];
			int mid = numLanes / 2;
			if (odd(numLanes))
				mid = mid + 1;       //start in middle lane
			int incr = 1;
			int ln = mid;
			//create array of lanes from
			//center to outside
			for (int i=0; i< numLanes; i++) {
				lanes[i] = ln;
				ln = mid + incr;
				incr = - incr;
				if (incr > 0)
					incr=incr+1;
			}
		}
		//--------------------------------
		private bool odd(int x) {
			return(((x / 2)*2) != x);
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?