Why is my C# application code not working with my GUI?
Ok so I am adding on to my last project, where I created a shark race. Everything ran smoothly, and then it got fancy.

Here are the requirements:
1) Declare all of the instance variables to be public properties defined with get and set
accessor methods along with corresponding private backing fields.
2) Remove the MyBet instance variable from the Guy class and instead provide an
array within the Form1 class that holds each Bet instance. The betting parlor should
now allow for each Guy to place multiple bets. However, the Amount of each Bet
should be deducted from the Cash property of each Guy at the time the Bet is made.
Winnings are thus only positive quantities that are paid out after the race.
3) Have a scoreboard (or some type of visual display) that indicates the order in which
each racer finished, allowing for the possibility that there are ties for 1st, 2nd, or 3rd
places.

I'm getting about 50 of the same error, and it seems like they are all very quick fixes, but for some reason I can't figure them out. Thanks in advance!

With that in mind, here are my forms:

Forms Class:

    using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace project1
{
    public partial class Game : Form
    {
        private Shark[] sharks;
        private Guy[] guys;
        private Guy selectedGuy;
        private Bet[] bets;
        private int[] winners = new int[4];
        
        public Game()
        {
            InitializeComponent();

            Random moreRandom = new Random();

            int start = myTrack.Location.X;
            int finish = myTrack.Width - 65;

            sharks = new Shark[4]
                {
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark1, myPBStart = start, trackLength = finish},
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark2, myPBStart = start, trackLength = finish},
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark3, myPBStart = start, trackLength = finish},
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark4, myPBStart = start, trackLength = finish}
                };

            guys = new Guy[3]
                {
                    new Guy() {Name="Joe", Moneys=50, MyRB=rbGuy1, GuyLabel=labelBet1},
                    new Guy() {Name="Bob", Moneys=75, MyRB=rbGuy2, GuyLabel=labelBet2},
                    new Guy() {Name="Al", Moneys=45, MyRB=rbGuy3, GuyLabel=labelBet3}
                };
                
            bets = new Bet[12];
            
            for (int = 0; i<bets.Length; i++)
            {
                bets[i] = Bet.EmptyBet;
            }
            
            selectedGuy = guys[0];
            rbGuy1.Tag = guys[0];
            rbGuy2.Tag = guys[1];
            rbGuy3.Tag = guys[2];            

            updateGui();
        }

        private void myChanged(object sender, EventArgs e)
        {
            selectedGuy = getSelectedGuy(sender);
            betterLabel.Text = selectedGuy.Name;
        }

        private void betAmountValue(object sender, EventArgs e)
        {
            updateMin();
        }

        private void bet_Click(object sender, EventArgs e)
        {
            int bet = (int) betAmount.Value;
            int myFish = (int) sharkNumber.Value;
            Bet temp = selectedGuy.placeBet(bet,myFish);
            if (!temp == Bet.EmptyBet)
            {
            for (int i = 0; i<3; i++)
            {
                if (guys[i].Name == selectedGuy.Name)
                {
                    bets[i + (3 * myFish)] = temp;
                }
            }
            
                /*for (int = 0; i<bets.Length, i++)
                {
                bets[i] = temp;
                }*/
                
            }
            //selectedGuy.placeBet(bet, myFish);
            updateGui();
        }

        private void raceBtn_Click(object sender, EventArgs e)
        {
            betBtn.Enabled = false;
            Application.DoEvents();
            //bool noWinner = true;
            
            Random rand = new Random();
            /*int winner = rand.Next(1,5);
            
            showWinner(winner-1);
            collectBets(winner-1);
            */
            for(int i=0; i<4; i++)
                winners[i] = 0;
            
            for(int i=0; i<4; i++)
            {
                bool placed = false;
                int temp;
                while (!placed)
                {
                    temp = rand.Next(0,4);
                    if (winners[temp] == 0)
                    {
                        winners[temp] = i;
                        placed = true;
                    }
                }
            }
            
            showWinner(winners[0] - 1);
            collectBets(winners[0] - 1);
            
            /*while(noWinner)
            {
                for (int fish = 0; fish < sharks.Length; fish++)
                {
                    Application.DoEvents();
                    if(sharks[fish].Swim())
                    {
                        showWinner(fish);
                        collectBets(fish);
                        noWinner = false;
                    }
                }
            }*/

            updateGui();

            betBtn.Enabled = true;
        }
        
        

        private void showWinner(int fish)
        {
            MessageBox.Show(string.Format("Winner Winner People Dinner! \nShark {0} won!", fish + 1));
            
        }

        private void collectBets(int fish)
        {
            for (int guyNumber = 0; guyNumber < guys.Length; guyNumber++)
            {
                guys[guyNumber].collect(betTotal(), winningSharkTotal());
                guys[guyNumber].resetBet();
                
            }
        }

        private void updateMin()
        {
            minBetLabel.Text = string.Format("Minimum bet: 5 bucks", betAmount.Value);
        }

        private Guy getSelectedGuy(object sender)
        {
            RadioButton rb = (RadioButton)sender;
            return (Guy)rb.Tag;
        }

        private void updateGui()
        {
            for (int guyNumber = 0; guyNumber < guys.Length; guyNumber++)
            {
                guys[guyNumber].updateLabels();
            }

            for (int fish = 0; fish < sharks.Length; fish++)
            {
                sharks[fish].startPosition();
            }

            /*betTable1 = bets[0];
            betTable2 = bets[1];
            betTable3 = bets[2];*/
            
            
            bet1_1.Text = string.Format(bets[0].Amount);
            bet1_2.Text = bets[1].Amount;
            bet1_3.Text = bets[2].Amount;
            bet2_1.Text = bets[3].Amount;
            bet2_2.Text = bets[4].Amount;
            bet2_3.Text = bets[5].Amount;
            bet3_1.Text = bets[6].Amount;
            bet3_2.Text = bets[7].Amount;
            bet3_3.Text = bets[8].Amount;
            bet4_1.Text = bets[9].Amount;
            bet4_2.Text = bets[10].Amount;
            bet4_3.Text = bets[11].Amount;
        
            updateMin();
            
            firstWinner.Text = winners[0];
            secondWinner.Text = winners[1];
            thirdWinner.Text = winners[2];
            fourthWinner.Text = winners[3];
            
        }
    
        private int betTotal()
        {
        int Result = 0;
        for (int i=0; i<bets.Length; i++)
        {
        Result += bets[i].Amount;
        }
        return Result;
        }
    
        private int winningSharkTotal(int Winner)
        {
        int Result = 0;
        
        
        for (int i = 0; i<3; i++)
        {
            Result += bets[i+(winner*3)];
        
        }
        return Result;
        
        
        }
      
    }
}


Sharks Class:

    using System;
using System.Drawing;
using System.Threading;
using System.Windows.Forms;

namespace project1
{
    public class Shark
    {
        public int myPBStart; // Where the PictureBox starts
        public int trackLength; // How long the racetrack is
        public PictureBox myPictureBox = null; // The PictureBox object
        public int location = 0; // My location on the racetrack
        public Random myRandom; // An instance of Random

        public Shark()
        {
            location = 0;
            myPictureBox = new PictureBox();
            myRandom = new Random();
            trackLength = 100;
            myPBStart = 0;
        }

        public bool Swim()
        {
            int distance = myRandom.Next(1, 4);
            location += distance;

            movePB(distance);

            return location > trackLength;
        }

        private void movePB(int distance)
        {
            Point p = myPictureBox.Location;
            p.X += distance;
            myPictureBox.Location = p;
        }

        public void startPosition()
        {
            location = myPBStart;

            Point p = myPictureBox.Location;
            p.X = location;
            myPictureBox.Location = p;
        }
    }
}


Guy Class: 

    using System.Windows.Forms;

namespace project1
{
    public class Guy
    {
        private string myName;
        //public Bet myBet;
        private int cash;

        // The last two fields are the the guy's GUI controls on the form
        private RadioButton myRadioButton;
        private Label myLabel;
        const int minBet = 5;
        const int maxBet = 15;

        public Guy()
        {
            //myBet = emptyBet();

            //myBet = new Bet() { amount = 0, fish = 0, better = this };
        
        }

        public void updateLabels()
        {
            get{
            // Set my label to my bet's description and its label
            myLabel.Text = myBet.Description();

            // cash radio buttons
            myRadioButton.Text = radioButtonText();
            }
        }

        public void resetBet()
        {
            // reset my bet to 0
            myBet = Bet.EmptyBet;
        }
        
        public string Name{
        get{
        return myName;
        }

        }

        public int Moneys
        {
            get
            {
                return cash;
            }
        }

        public RadioButton MyRB
        {
            get
            {
                return myRadioButton;
            }
        }

        public Label GuyLabel
        {
            get
            {
                return myLabel;
            }
        }

        public Bet placeBet(int amount, int fish)
        {
            if (amount > cash || amount < minBet || amount > maxBet)
            {
                return Bet.EmptyBet;
                //return false;
            }
            
            cash -= amount;
            return new Bet() {Amount=amount, Fish=fish, better=this};

            //return true;
        }

        public void collect(int pool, int sharkPool)
        {
            get{
            return cash += myBet.payout(pool, sharkPool);
            }
        }

        
        private string radioButtonText()
        {
            return string.Format("{0} has {1} bucks", myName, cash);
        }
    }
}


Bet Class:

    namespace project1
{
    public class Bet
    {
        private int amount; // The amount of cash that was bet
        private int fish; // The number of the shark the bet is on.
        public Guy better; // The guy who placed the bet

        public static Bet EmptyBet{
        get
            {
                return new Bet() { amount = 0, fish = 0, better = this };
            }

        }

        public string Description
        {
        get
            {
                if (noBet())
                {
                return string.Format("{0} hasn't placed a bet", better.Name);    
                }
                else
                {
                return string.Format("{0} bets {1} bucks on shark #{2}", better.Name, amount, fish);    
                }
            }
        }

        public int payout(int pool, int sharkPool)
        {
            get{
            
            return ((pool * (0.85))/sharkPool) * amount;
            
            /*if (myShark(pool))
            {
                return amount;
            }
            else
            {
                return -amount;
            }*/
            }
        }
        
        /*private bool myShark(int winner)
        {
            return winner == fish;
        }*/

        private bool noBet()
        {
            return amount == 0;
        }
        
        public int Amount 
        {
           get
            {
            return amount;
            }
        }

        public int Fish
        {
            get
            {
                return fish;
            }
        }
       
    }
}


And last but not least, my errors:

    Error    2    ; expected    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    89    7    lab3
Error    3    ; expected    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    27    7    lab3
Error    4    ; expected    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    34    7    lab3
Error    36    Argument 1: cannot convert from 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    193    32    lab3
Error    8    Cannot implicitly convert type 'double' to 'int'. An explicit conversion exists (are you missing a cast?)    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    36    11    lab3
Error    37    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    194    18    lab3
Error    38    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    195    18    lab3
Error    39    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    196    18    lab3
Error    40    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    197    18    lab3
Error    41    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    198    18    lab3
Error    42    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    199    18    lab3
Error    43    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    200    18    lab3
Error    44    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    201    18    lab3
Error    45    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    202    27    lab3
Error    46    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    203    27    lab3
Error    47    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    204    27    lab3
Error    48    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    208    23    lab3
Error    49    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    209    24    lab3
Error    50    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    210    23    lab3
Error    51    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    211    24    lab3
Error    1    Invalid expression term 'int'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    46    13    lab3
Error    5    Keyword 'this' is not valid in a static property, static method, or static field initializer    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    12    61    lab3
Error    34    No overload for method 'winningSharkTotal' takes 0 arguments    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    159    41    lab3
Error    6    Only assignment, call, increment, decrement, and new object expressions can be used as a statement    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    34    4    lab3
Error    9    Only assignment, call, increment, decrement, and new object expressions can be used as a statement    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    27    4    lab3
Error    15    Only assignment, call, increment, decrement, and new object expressions can be used as a statement    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    89    4    lab3
Error    33    Operator '!' cannot be applied to operand of type 'project1.Bet'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    75    8    lab3
Error    13    Property or indexer 'Amount' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    82    22    lab3
Error    14    Property or indexer 'Fish' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    82    37    lab3
Error    21    Property or indexer 'GuyLabel' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    53    lab3
Error    25    Property or indexer 'GuyLabel' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    53    lab3
Error    29    Property or indexer 'GuyLabel' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    52    lab3
Error    19    Property or indexer 'Moneys' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    29    lab3
Error    23    Property or indexer 'Moneys' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    29    lab3
Error    27    Property or indexer 'Moneys' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    28    lab3
Error    20    Property or indexer 'MyRB' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    40    lab3
Error    24    Property or indexer 'MyRB' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    40    lab3
Error    28    Property or indexer 'MyRB' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    39    lab3
Error    18    Property or indexer 'Name' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    17    lab3
Error    22    Property or indexer 'Name' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    17    lab3
Error    26    Property or indexer 'Name' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    17    lab3
Error    35    The best overloaded method match for 'string.Format(string, params object[])' has some invalid arguments    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    193    18    lab3
Error    7    The name 'get' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    34    4    lab3
Error    10    The name 'get' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    27    4    lab3
Error    16    The name 'get' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    89    4    lab3
Error    30    The name 'i' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    46    18    lab3
Error    31    The name 'i' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    46    33    lab3
Error    32    The name 'i' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    48    10    lab3
Error    11    The name 'myBet' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    29    19    lab3
Error    12    The name 'myBet' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    39    4    lab3
Error    17    The name 'myBet' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    90    19    lab3
Error    52    The name 'winner' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    232    22    lab3









Here are the files: http://www.megaupload.com/?d=0IJ3SHA7
Why is my C# application code not working with my GUI?
===

Ok so I am adding on to my last project, where I created a shark race. Everything ran smoothly, and then it got fancy.

Here are the requirements:
1) Declare all of the instance variables to be public properties defined with get and set
accessor methods along with corresponding private backing fields.
2) Remove the MyBet instance variable from the Guy class and instead provide an
array within the Form1 class that holds each Bet instance. The betting parlor should
now allow for each Guy to place multiple bets. However, the Amount of each Bet
should be deducted from the Cash property of each Guy at the time the Bet is made.
Winnings are thus only positive quantities that are paid out after the race.
3) Have a scoreboard (or some type of visual display) that indicates the order in which
each racer finished, allowing for the possibility that there are ties for 1st, 2nd, or 3rd
places.

I'm getting about 50 of the same error, and it seems like they are all very quick fixes, but for some reason I can't figure them out. Thanks in advance!

With that in mind, here are my forms:

Forms Class:

    using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace project1
{
    public partial class Game : Form
    {
        private Shark[] sharks;
        private Guy[] guys;
        private Guy selectedGuy;
        private Bet[] bets;
        private int[] winners = new int[4];
        
        public Game()
        {
            InitializeComponent();

            Random moreRandom = new Random();

            int start = myTrack.Location.X;
            int finish = myTrack.Width - 65;

            sharks = new Shark[4]
                {
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark1, myPBStart = start, trackLength = finish},
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark2, myPBStart = start, trackLength = finish},
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark3, myPBStart = start, trackLength = finish},
                    new Shark() {myRandom = moreRandom, myPictureBox = myShark4, myPBStart = start, trackLength = finish}
                };

            guys = new Guy[3]
                {
                    new Guy() {Name="Joe", Moneys=50, MyRB=rbGuy1, GuyLabel=labelBet1},
                    new Guy() {Name="Bob", Moneys=75, MyRB=rbGuy2, GuyLabel=labelBet2},
                    new Guy() {Name="Al", Moneys=45, MyRB=rbGuy3, GuyLabel=labelBet3}
                };
                
            bets = new Bet[12];
            
            for (int = 0; i<bets.Length; i++)
            {
                bets[i] = Bet.EmptyBet;
            }
            
            selectedGuy = guys[0];
            rbGuy1.Tag = guys[0];
            rbGuy2.Tag = guys[1];
            rbGuy3.Tag = guys[2];            

            updateGui();
        }

        private void myChanged(object sender, EventArgs e)
        {
            selectedGuy = getSelectedGuy(sender);
            betterLabel.Text = selectedGuy.Name;
        }

        private void betAmountValue(object sender, EventArgs e)
        {
            updateMin();
        }

        private void bet_Click(object sender, EventArgs e)
        {
            int bet = (int) betAmount.Value;
            int myFish = (int) sharkNumber.Value;
            Bet temp = selectedGuy.placeBet(bet,myFish);
            if (!temp == Bet.EmptyBet)
            {
            for (int i = 0; i<3; i++)
            {
                if (guys[i].Name == selectedGuy.Name)
                {
                    bets[i + (3 * myFish)] = temp;
                }
            }
            
                /*for (int = 0; i<bets.Length, i++)
                {
                bets[i] = temp;
                }*/
                
            }
            //selectedGuy.placeBet(bet, myFish);
            updateGui();
        }

        private void raceBtn_Click(object sender, EventArgs e)
        {
            betBtn.Enabled = false;
            Application.DoEvents();
            //bool noWinner = true;
            
            Random rand = new Random();
            /*int winner = rand.Next(1,5);
            
            showWinner(winner-1);
            collectBets(winner-1);
            */
            for(int i=0; i<4; i++)
                winners[i] = 0;
            
            for(int i=0; i<4; i++)
            {
                bool placed = false;
                int temp;
                while (!placed)
                {
                    temp = rand.Next(0,4);
                    if (winners[temp] == 0)
                    {
                        winners[temp] = i;
                        placed = true;
                    }
                }
            }
            
            showWinner(winners[0] - 1);
            collectBets(winners[0] - 1);
            
            /*while(noWinner)
            {
                for (int fish = 0; fish < sharks.Length; fish++)
                {
                    Application.DoEvents();
                    if(sharks[fish].Swim())
                    {
                        showWinner(fish);
                        collectBets(fish);
                        noWinner = false;
                    }
                }
            }*/

            updateGui();

            betBtn.Enabled = true;
        }
        
        

        private void showWinner(int fish)
        {
            MessageBox.Show(string.Format("Winner Winner People Dinner! \nShark {0} won!", fish + 1));
            
        }

        private void collectBets(int fish)
        {
            for (int guyNumber = 0; guyNumber < guys.Length; guyNumber++)
            {
                guys[guyNumber].collect(betTotal(), winningSharkTotal());
                guys[guyNumber].resetBet();
                
            }
        }

        private void updateMin()
        {
            minBetLabel.Text = string.Format("Minimum bet: 5 bucks", betAmount.Value);
        }

        private Guy getSelectedGuy(object sender)
        {
            RadioButton rb = (RadioButton)sender;
            return (Guy)rb.Tag;
        }

        private void updateGui()
        {
            for (int guyNumber = 0; guyNumber < guys.Length; guyNumber++)
            {
                guys[guyNumber].updateLabels();
            }

            for (int fish = 0; fish < sharks.Length; fish++)
            {
                sharks[fish].startPosition();
            }

            /*betTable1 = bets[0];
            betTable2 = bets[1];
            betTable3 = bets[2];*/
            
            
            bet1_1.Text = string.Format(bets[0].Amount);
            bet1_2.Text = bets[1].Amount;
            bet1_3.Text = bets[2].Amount;
            bet2_1.Text = bets[3].Amount;
            bet2_2.Text = bets[4].Amount;
            bet2_3.Text = bets[5].Amount;
            bet3_1.Text = bets[6].Amount;
            bet3_2.Text = bets[7].Amount;
            bet3_3.Text = bets[8].Amount;
            bet4_1.Text = bets[9].Amount;
            bet4_2.Text = bets[10].Amount;
            bet4_3.Text = bets[11].Amount;
        
            updateMin();
            
            firstWinner.Text = winners[0];
            secondWinner.Text = winners[1];
            thirdWinner.Text = winners[2];
            fourthWinner.Text = winners[3];
            
        }
    
        private int betTotal()
        {
        int Result = 0;
        for (int i=0; i<bets.Length; i++)
        {
        Result += bets[i].Amount;
        }
        return Result;
        }
    
        private int winningSharkTotal(int Winner)
        {
        int Result = 0;
        
        
        for (int i = 0; i<3; i++)
        {
            Result += bets[i+(winner*3)];
        
        }
        return Result;
        
        
        }
      
    }
}


Sharks Class:

    using System;
using System.Drawing;
using System.Threading;
using System.Windows.Forms;

namespace project1
{
    public class Shark
    {
        public int myPBStart; // Where the PictureBox starts
        public int trackLength; // How long the racetrack is
        public PictureBox myPictureBox = null; // The PictureBox object
        public int location = 0; // My location on the racetrack
        public Random myRandom; // An instance of Random

        public Shark()
        {
            location = 0;
            myPictureBox = new PictureBox();
            myRandom = new Random();
            trackLength = 100;
            myPBStart = 0;
        }

        public bool Swim()
        {
            int distance = myRandom.Next(1, 4);
            location += distance;

            movePB(distance);

            return location > trackLength;
        }

        private void movePB(int distance)
        {
            Point p = myPictureBox.Location;
            p.X += distance;
            myPictureBox.Location = p;
        }

        public void startPosition()
        {
            location = myPBStart;

            Point p = myPictureBox.Location;
            p.X = location;
            myPictureBox.Location = p;
        }
    }
}


Guy Class: 

    using System.Windows.Forms;

namespace project1
{
    public class Guy
    {
        private string myName;
        //public Bet myBet;
        private int cash;

        // The last two fields are the the guy's GUI controls on the form
        private RadioButton myRadioButton;
        private Label myLabel;
        const int minBet = 5;
        const int maxBet = 15;

        public Guy()
        {
            //myBet = emptyBet();

            //myBet = new Bet() { amount = 0, fish = 0, better = this };
        
        }

        public void updateLabels()
        {
            get{
            // Set my label to my bet's description and its label
            myLabel.Text = myBet.Description();

            // cash radio buttons
            myRadioButton.Text = radioButtonText();
            }
        }

        public void resetBet()
        {
            // reset my bet to 0
            myBet = Bet.EmptyBet;
        }
        
        public string Name{
        get{
        return myName;
        }

        }

        public int Moneys
        {
            get
            {
                return cash;
            }
        }

        public RadioButton MyRB
        {
            get
            {
                return myRadioButton;
            }
        }

        public Label GuyLabel
        {
            get
            {
                return myLabel;
            }
        }

        public Bet placeBet(int amount, int fish)
        {
            if (amount > cash || amount < minBet || amount > maxBet)
            {
                return Bet.EmptyBet;
                //return false;
            }
            
            cash -= amount;
            return new Bet() {Amount=amount, Fish=fish, better=this};

            //return true;
        }

        public void collect(int pool, int sharkPool)
        {
            get{
            return cash += myBet.payout(pool, sharkPool);
            }
        }

        
        private string radioButtonText()
        {
            return string.Format("{0} has {1} bucks", myName, cash);
        }
    }
}


Bet Class:

    namespace project1
{
    public class Bet
    {
        private int amount; // The amount of cash that was bet
        private int fish; // The number of the shark the bet is on.
        public Guy better; // The guy who placed the bet

        public static Bet EmptyBet{
        get
            {
                return new Bet() { amount = 0, fish = 0, better = this };
            }

        }

        public string Description
        {
        get
            {
                if (noBet())
                {
                return string.Format("{0} hasn't placed a bet", better.Name);    
                }
                else
                {
                return string.Format("{0} bets {1} bucks on shark #{2}", better.Name, amount, fish);    
                }
            }
        }

        public int payout(int pool, int sharkPool)
        {
            get{
            
            return ((pool * (0.85))/sharkPool) * amount;
            
            /*if (myShark(pool))
            {
                return amount;
            }
            else
            {
                return -amount;
            }*/
            }
        }
        
        /*private bool myShark(int winner)
        {
            return winner == fish;
        }*/

        private bool noBet()
        {
            return amount == 0;
        }
        
        public int Amount 
        {
           get
            {
            return amount;
            }
        }

        public int Fish
        {
            get
            {
                return fish;
            }
        }
       
    }
}


And last but not least, my errors:

    Error    2    ; expected    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    89    7    lab3
Error    3    ; expected    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    27    7    lab3
Error    4    ; expected    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    34    7    lab3
Error    36    Argument 1: cannot convert from 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    193    32    lab3
Error    8    Cannot implicitly convert type 'double' to 'int'. An explicit conversion exists (are you missing a cast?)    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    36    11    lab3
Error    37    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    194    18    lab3
Error    38    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    195    18    lab3
Error    39    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    196    18    lab3
Error    40    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    197    18    lab3
Error    41    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    198    18    lab3
Error    42    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    199    18    lab3
Error    43    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    200    18    lab3
Error    44    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    201    18    lab3
Error    45    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    202    27    lab3
Error    46    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    203    27    lab3
Error    47    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    204    27    lab3
Error    48    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    208    23    lab3
Error    49    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    209    24    lab3
Error    50    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    210    23    lab3
Error    51    Cannot implicitly convert type 'int' to 'string'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    211    24    lab3
Error    1    Invalid expression term 'int'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    46    13    lab3
Error    5    Keyword 'this' is not valid in a static property, static method, or static field initializer    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    12    61    lab3
Error    34    No overload for method 'winningSharkTotal' takes 0 arguments    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    159    41    lab3
Error    6    Only assignment, call, increment, decrement, and new object expressions can be used as a statement    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    34    4    lab3
Error    9    Only assignment, call, increment, decrement, and new object expressions can be used as a statement    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    27    4    lab3
Error    15    Only assignment, call, increment, decrement, and new object expressions can be used as a statement    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    89    4    lab3
Error    33    Operator '!' cannot be applied to operand of type 'project1.Bet'    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    75    8    lab3
Error    13    Property or indexer 'Amount' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    82    22    lab3
Error    14    Property or indexer 'Fish' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    82    37    lab3
Error    21    Property or indexer 'GuyLabel' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    53    lab3
Error    25    Property or indexer 'GuyLabel' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    53    lab3
Error    29    Property or indexer 'GuyLabel' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    52    lab3
Error    19    Property or indexer 'Moneys' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    29    lab3
Error    23    Property or indexer 'Moneys' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    29    lab3
Error    27    Property or indexer 'Moneys' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    28    lab3
Error    20    Property or indexer 'MyRB' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    40    lab3
Error    24    Property or indexer 'MyRB' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    40    lab3
Error    28    Property or indexer 'MyRB' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    39    lab3
Error    18    Property or indexer 'Name' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    39    17    lab3
Error    22    Property or indexer 'Name' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    40    17    lab3
Error    26    Property or indexer 'Name' cannot be assigned to -- it is read only    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    41    17    lab3
Error    35    The best overloaded method match for 'string.Format(string, params object[])' has some invalid arguments    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    193    18    lab3
Error    7    The name 'get' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Bet.cs    34    4    lab3
Error    10    The name 'get' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    27    4    lab3
Error    16    The name 'get' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    89    4    lab3
Error    30    The name 'i' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    46    18    lab3
Error    31    The name 'i' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    46    33    lab3
Error    32    The name 'i' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    48    10    lab3
Error    11    The name 'myBet' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    29    19    lab3
Error    12    The name 'myBet' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    39    4    lab3
Error    17    The name 'myBet' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Guy.cs    90    19    lab3
Error    52    The name 'winner' does not exist in the current context    \\vmware-host\Shared Folders\Desktop\Revised_Lab3\Lab 3\Form.cs    232    22    lab3









Here are the files: http://www.megaupload.com/?d=0IJ3SHA7