When you're logged in, you can say
exercism fetch delphi to get the next available exercise on the track.
Every time you submit a solution to an exercise, you will get the next in line the next time you fetch.
If you want to try a specific exercise, you can always fetch it directly (commands are listed below).
The exercises are ordered roughly in order of difficulty.
- Hello World The classical introductory exercise. Just say "Hello, World!"
- Two Fer Create a sentence of the form "One for X, one for me."
- Reverse String Reverse a string
- Bob Bob is a lackadaisical teenager. In conversation, his responses are very limited.
- Leap Given a year, report if it is a leap year.
- Space Age Given an age in seconds, calculate how old someone is in terms of a given planet's solar years.
- Isbn Verifier Check if a given string is a valid ISBN-10 number.
- Rna Transcription Given a DNA strand, return its RNA Complement Transcription.
- Raindrops Convert a number to a string, the contents of which depend on the number's factors.
- Hamming Calculate the Hamming difference between two DNA strands.
- Bank Account Simulate a bank account supporting opening/closing, withdraws, and deposits of money. Watch out for concurrent transactions!
- Nucleotide Count Given a DNA string, compute how many times each nucleotide occurs in the string.
- Etl We are going to do the `Transform` step of an Extract-Transform-Load.
- Grains Calculate the number of grains of wheat on a chessboard given that the number on each square doubles.
- Grade School Given students' names along with the grade that they are in, create a roster for the school
- Collatz Conjecture Calculate the number of steps to reach 1 using the Collatz conjecture
- Armstrong Numbers Determine if a number is an Armstrong number
- Beer Song Produce the lyrics to that beloved classic, that field-trip favorite: 99 Bottles of Beer on the Wall.
- Phone Number Clean up user-entered phone numbers so that they can be sent SMS messages.
- Proverb For want of a horseshoe nail, a kingdom was lost, or so the saying goes. Output the full text of this proverbial rhyme.
- Secret Handshake Given a decimal number, convert it to the appropriate sequence of events for a secret handshake.
- Perfect Numbers Determine if a number is perfect, abundant, or deficient based on Nicomachus' (60 - 120 CE) classification scheme for natural numbers.
- Binary Search Implement a binary search algorithm.
- Clock Implement a clock that handles times without dates.
- Triangle Determine if a triangle is equilateral, isosceles, or scalene.
- Allergies Given a person's allergy score, determine whether or not they're allergic to a given item, and their full list of allergies.
- Saddle Points Detect saddle points in a matrix.
- Word Count Given a phrase, count the occurrences of each word in that phrase.
- Circular Buffer A data structure that uses a single, fixed-size buffer as if it were connected end-to-end.
- Minesweeper Add the numbers to a minesweeper board
- Bracket Push Make sure the brackets and braces all match.
- Roman Numerals Write a function to convert from normal numbers to Roman Numerals.
- Bowling Score a bowling game
- Pig Latin Implement a program that translates from English to Pig Latin
- Book Store To try and encourage more sales of different books from a popular 5 book series, a bookshop has decided to offer discounts of multiple-book purchases.
- Wordy Parse and evaluate simple math word problems returning the answer as an integer.
- Poker Pick the best hand(s) from a list of poker hands.