php programming project

Avg Bid (USD)
Project Budget (USD)
$30 - $250

Project Description:
Here are descriptions of three classes in an object-oriented program that you will write.
=== Deck ===
- The Deck class represents a standard 52-card deck; Ace high
- Each card is in one of two states -- dealt (D) and not-yet-dealt (ND)
- Cards are ordered. The D and ND cards each have their own order
- When created, all 52 cards are ND, and are in order, by suit
(clubs 2 through A, diamonds 2 through A,
hearts 2 through A, spades 2 through A)
dealOne() -- moves the top card from ND to D and returns the card
print() -- prints non-dealt cards and dealt-cards (in order, as
separate lists)
shuffle() -- Shuffles the deck randomly
Make your own shuffle algorithm. Be prepared
to explain how it works.
=== Card ===
- The Card class represents a single card
print() -- prints the type of card
=== Hand ===

- The Hand class represents a set of cards. From 0 to 52 cards, total
- Cards are always in a definite order
print() -- prints the hand (in order)
addCard(card) -- adds a card to the hand
sortBySuit() -- sorts the cards by suit (see intro for suit order), and then by value (see
intro for value order)
sortByValue() -- sorts by value, then by suit
Write your own custom sort algorithm. Be prepared
to explain how it works.

hasStraight(len, sameSuit) -- returns true if hand
contains a straight of the given length.
If sameSuit is true, counts only straights
with cards in the same suit (flushes);
If sameSuit if not true, any straight is counted
1) Write a program that
- Implements the classes above and creates and shuffles a deck and then
deals two or more 5-card hands from the deck.
- Write all the code yourself including the code to shuffle and
and sort
- Should be a simple command-line utility, not a gui app. If you
generate any graphs, you can use any utility, such as a spreadsheet,
matlab, matplotlib, gnuplot, etc.
- Code must be written in php
- Design is important; get the interfaces right
- Code readability is important
- A simple implementation that gets the job done (and meets other
requirements) is better than a complex implementation.
- Comments not necessary unless there is something that might not be
obvious to a reader. Make a note of any assumptions that may not
be obvious from a method signature.
- Careful error checking not required, but if error checking helps you
develop the code, it's fine to leave it in.
- Don't over-engineer -- this is a limited problem, not the start of a
commercial poker system
- If you write test code to make sure things are working, go ahead and
include that.

Additional Project Description:
10/04/2012 at 20:20 PET
This project has to be completed by saturday. Please reply soon or reply to

Skills required:
Anything Goes, Javascript, PHP, Software Architecture, Website Management
Hire adityabombay
Project posted by:
adityabombay India
Public Clarification Board
Bids are hidden by the project creator. Log in as the employer to view bids or to bid on this project.
You will not be able to bid on this project if you are not qualified in one of the job categories. To see your qualifications click here.

$ 450
in 20 days
Hire matematico
$ 149
in 1 days
$ 500
in 1 days
Hire tCognition
$ 1000
in 10 days
$ 150
in 1 days
$ 150
in 6 days
$ 250
in 6 days
Hire isurudeveloper
$ 60
in 5 days
Hire ERf41Jn3U
$ 250
in 1 days
Hire eliotevertou
$ 80
in 4 days