首先,在VS2005中建立一個控制台應用程式:
應用程式的名字為:PlayCoin
(1)實現拋硬幣的完整代碼如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace PlayCoin
{
class Program
{
private int negative=0;
private int position=0;
private int turn;
public Program(int turn)
{
this.turn = turn;
}
public void tossing()
{
Random rand = new Random();
for (int i = 0; i < turn; i++)
{
getResult(rand.Next(2));
}
}
public void getResult(int i)
{
if (i == 0)
negative++;
else if (i == 1)
position++;
else
Console.WriteLine("錯誤的結果!");
}
public void showResults()
{
Console.WriteLine("拋出硬幣的次數:{0}",turn);
Console.WriteLine("正面出現的次數:{0}",negative);
Console.WriteLine("正面出現的機率:{0}%",(float)negative/(float)turn*100);
Console.WriteLine("反面出現的次數:{0}",position);
Console.WriteLine("反面出現的機率:{0}%",(float)position/(float)turn*100);
}
public void setNumber()
{
int j;
Console.WriteLine("請輸入數字1開始拋擲:");
j = Convert.ToInt32(Console.ReadLine());
if (j == 1)
{
Console.WriteLine("輸入拋擲硬幣的次數:");
turn = Convert.ToInt32(Console.ReadLine());
tossing();
Console.WriteLine("輸入數字2顯示拋擲的結果:");
j = Convert.ToInt32(Console.ReadLine());
}
if (j == 2)
{
showResults();
}
}
static void Main(string[] args)
{
Program co = new Program(0);
co.setNumber();
Console.Read();
}
}
}
(2)運行程式(按F5鍵):
請輸入數字1開始拋硬幣:
1(斷行符號鍵)
輸入拋擲硬幣的次數:
888(斷行符號鍵)
輸入數字2顯示拋擲的結果:
2(斷行符號鍵)
拋出硬幣的次數:888
正面出現的次數:446
正面出現的機率:50.22522%
反面出現的次數:442
反面出現的機率:49.77478%
(斷行符號鍵)結束程式的運行。
(3)說明:
該程式的重點是演算法的實現。