Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Exercism

Visual Basic

via Exercism

Overview

Build a Learning Habit
Download Class Central's free printable study calendar
Download for Free
VB.NET is a multi-paradigm, statically-typed programming language with object-oriented, declarative, functional, generic, lazy, integrated querying features and type inference. Statically-typed means that identifiers have a type set at compile time--like those in Java, C++ or Haskell--instead of holding data of any type like those in Python, Ruby or JavaScript.

Syllabus

  • Hello World
    • Exercism's classic introductory exercise. Just say "Hello, World!".
  • Allergies
    • Given a person's allergy score, determine whether or not they're allergic to a given item, and their full list of allergies.
  • Anagram
    • Given a word and a list of possible anagrams, select the correct sublist.
  • Atbash Cipher
    • Create an implementation of the Atbash cipher, an ancient encryption system created in the Middle East.
  • Binary
    • Convert a binary number, represented as a string (e.g. '101010'), to its decimal equivalent using first principles.
  • Bob
    • Bob is a lackadaisical teenager. In conversation, his responses are very limited.
  • Crypto Square
    • Implement the classic method for composing secret messages called a square code.
  • Difference of Squares
    • Find the difference between the square of the sum and the sum of the squares of the first N natural numbers.
  • Gigasecond
    • Given a moment, determine the moment that would be after a gigasecond has passed.
  • High Scores
    • Manage a player's High Score list.
  • Leap
    • Determine whether a given year is a leap year.
  • Resistor Color
    • Convert a resistor band's color to its numeric representation.
  • Resistor Color Duo
    • Convert color codes, as used on resistors, to a numeric value.
  • Resistor Color Trio
    • Convert color codes, as used on resistors, to a human-readable label.
  • Reverse String
    • Reverse a given string.
  • RNA Transcription
    • Given a DNA strand, return its RNA complement.
  • Series
    • Given a string of digits, output all the contiguous substrings of length `n` in that string.
  • Space Age
    • Given an age in seconds, calculate how old someone is in terms of a given planet's solar years.
  • Sum of Multiples
    • Given a number, find the sum of all the multiples of particular numbers up to but not including that number.
  • Two Fer
    • Create a sentence of the form "One for X, one for me.".
  • Armstrong Numbers
    • Determine if a number is an Armstrong number.
  • Collatz Conjecture
    • Calculate the number of steps to reach 1 using the Collatz conjecture.
  • Conway's Game of Life
    • Implement Conway's Game of Life.
  • Darts
    • Calculate the points scored in a single toss of a Darts game.
  • Eliud's Eggs
    • Help Eliud count the number of eggs in her chicken coop by counting the number of 1 bits in a binary representation.
  • ETL
    • Change the data format for scoring a game to more easily add other languages.
  • Grains
    • Calculate the number of grains of wheat on a chessboard given that the number on each square doubles.
  • Hamming
    • Calculate the Hamming distance between two DNA strands.
  • Nth Prime
    • Given a number n, determine what the nth prime is.
  • Nucleotide Count
    • Given a DNA string, compute how many times each nucleotide occurs in the string.
  • Pangram
    • Determine if a sentence is a pangram.
  • Raindrops
    • Convert a number into its corresponding raindrop sounds - Pling, Plang and Plong.
  • Square Root
    • Given a natural radicand, return its square root.
  • Binary Search
    • Implement a binary search algorithm.
  • Bottle Song
    • Produce the lyrics to the popular children's repetitive song: Ten Green Bottles.
  • D&D Character
    • Randomly generate Dungeons & Dragons characters.
  • Error Handling
    • Implement various kinds of error handling and resource management.
  • Grade School
    • Given students' names along with the grade that they are in, create a roster for the school.
  • Isogram
    • Determine if a word or phrase is an isogram.
  • Perfect Numbers
    • Determine if a number is perfect, abundant, or deficient based on Nicomachus' (60 - 120 CE) classification scheme for positive integers.
  • Phone Number
    • Clean up user-entered phone numbers so that they can be sent SMS messages.
  • Protein Translation
    • Translate RNA sequences into proteins.
  • Proverb
    • For want of a horseshoe nail, a kingdom was lost, or so the saying goes. Output the full text of this proverbial rhyme.
  • Queen Attack
    • Given the position of two queens on a chess board, indicate whether or not they are positioned so that they can attack each other.
  • Robot Name
    • Manage robot factory settings.
  • Robot Simulator
    • Write a robot simulator.
  • Scrabble Score
    • Given a word, compute the Scrabble score for that word.
  • Secret Handshake
    • Given a decimal number, convert it to the appropriate sequence of events for a secret handshake.
  • Sieve
    • Use the Sieve of Eratosthenes to find all the primes from 2 up to a given number.
  • Triangle
    • Determine if a triangle is equilateral, isosceles, or scalene.
  • Acronym
    • Convert a long phrase to its acronym.
  • Affine Cipher
    • Create an implementation of the Affine cipher, an ancient encryption algorithm from the Middle East.
  • All Your Base
    • Convert a number, represented as a sequence of digits in one base, to any other base.
  • Bank Account
    • Simulate a bank account supporting opening/closing, withdraws, and deposits of money. Watch out for concurrent transactions!
  • Circular Buffer
    • A data structure that uses a single, fixed-size buffer as if it were connected end-to-end.
  • Clock
    • Implement a clock that handles times without dates.
  • House
    • Output the nursery rhyme 'This is the House that Jack Built'.
  • ISBN Verifier
    • Check if a given string is a valid ISBN-10 number.
  • Largest Series Product
    • Given a string of digits, calculate the largest product for a contiguous substring of digits of length n.
  • Matrix
    • Given a string representing a matrix of numbers, return the rows and columns of that matrix.
  • Meetup
    • Calculate the date of meetups.
  • Prime Factors
    • Compute the prime factors of a given natural number.
  • Pythagorean Triplet
    • Given an integer N, find all Pythagorean triplets for which a + b + c = N.
  • Rotational Cipher
    • Create an implementation of the rotational cipher, also sometimes called the Caesar cipher.
  • Saddle Points
    • Detect saddle points in a matrix.
  • Simple Linked List
    • Write a simple linked list implementation that uses Elements and a List.
  • Twelve Days
    • Output the lyrics to 'The Twelve Days of Christmas'.
  • Word Count
    • Given a phrase, count the occurrences of each word in that phrase.
  • Accumulate
    • Implement the `accumulate` operation, which, given a collection and an operation to perform on each element of the collection, returns a new collection containing the result of applying that operation to each element of the input collection.
  • 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.
  • Diamond
    • Given a letter, print a diamond starting with 'A' with the supplied letter at the widest point.
  • Flatten Array
    • Take a nested list and return a single list with all values except nil/null.
  • Flower Field
    • Mark all the flowers in a garden.
  • Food Chain
    • Generate the lyrics of the song 'I Know an Old Lady Who Swallowed a Fly'.
  • Grep
    • Search a file for lines matching a regular expression pattern. Return the line number and contents of each matching line.
  • Ledger
    • Refactor a ledger printer.
  • Linked List
    • Implement a doubly linked list.
  • List Ops
    • Implement basic list operations.
  • Luhn
    • Given a number determine whether or not it is valid per the Luhn formula.
  • Matching Brackets
    • Make sure the brackets and braces all match.
  • OCR Numbers
    • Given a 3 x 4 grid of pipes, underscores, and spaces, determine which number is represented, or whether it is garbled.
  • Parallel Letter Frequency
    • Count the frequency of letters in texts using parallel computation.
  • Relative Distance
    • Given a family tree, calculate the degree of separation.
  • Roman Numerals
    • Convert modern Arabic numbers into Roman numerals.
  • Run-Length Encoding
    • Implement run-length encoding and decoding.
  • Simple Cipher
    • Implement the Vigenère cipher, a simple substitution cipher.
  • Spiral Matrix
    • Given the size, return a square matrix of numbers in spiral order.
  • Sublist
    • Write a function to determine if a list is a sublist of another list.
  • Tree Building
    • Refactor a tree building algorithm.
  • Yacht
    • Score a single throw of dice in the game Yacht.
  • Bowling
    • Score a bowling game.
  • Change
    • Correctly determine change to be given using the least number of coins.
  • Pig Latin
    • Implement a program that translates from English to Pig Latin.
  • Rail Fence Cipher
    • Implement encoding and decoding for the rail fence cipher.
  • REST API
    • Implement a RESTful API for tracking IOUs.
  • Tournament
    • Tally the results of a small football competition.
  • Transpose
    • Take input text and output it transposed.
  • Diffie-Hellman
    • Diffie-Hellman key exchange.
  • Poker
    • Pick the best hand(s) from a list of poker hands.
  • Rectangles
    • Count the rectangles in an ASCII diagram.
  • Variable Length Quantity
    • Implement variable length quantity encoding and decoding.
  • Wordy
    • Parse and evaluate simple math word problems returning the answer as an integer.
  • Say
    • Given a number from 0 to 999,999,999,999, spell out that number in English.
  • Two Bucket
    • Given two buckets of different size, demonstrate how to measure an exact number of liters.
  • Zebra Puzzle
    • Solve the zebra puzzle.
  • Zipper
    • Creating a zipper for a binary tree.

Reviews

Start your review of Visual Basic

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.