C# coding challenges

226 challenges you can solve in C#, from first loops to graphs, dynamic programming and machine learning. Write your code in the browser, run the tests instantly and get an AI review.

Easy · 134 Medium · 68 Hard · 24

Skills you'll practise: CountingDigit extractionString splitting2D listsArithmeticFormulasListsLoopsConditionsDivisibilityFloating pointGradient descent
  • Python · C++ · C#
  • Automated tests
  • AI code review
  • Community solutions
226
Challenges
5
Solutions shared
3
Languages

All challenges

Search by topic, language, or difficulty.

226 challenges
Medium

K-Nearest Neighbors Classifier

Predict a label by majority vote of the k closest training points.

You'll learn KNNDistance metrics
aimachine learning
No solutions yet
Easy

Categorical Cross-Entropy Loss

Measure the loss of a multi-class classifier from its predicted probabilities and the true classes.

You'll learn Classification lossLogarithms
aimachine learning
No solutions yet
Easy

Matrix Multiplication

Multiply two matrices, the operation behind every layer of a neural network.

You'll learn MatricesLinear algebra
aimachine learning
No solutions yet
Easy

Cosine Similarity

Measure how similar two vectors are by the angle between them, as search engines do with embeddings.

You'll learn Vector similarityEmbeddings
aimachine learning
No solutions yet
Easy

Hours, Minutes, and Seconds

Convert a duration in seconds to a compact readable string.

You'll learn Time unitsString formatting
Beginnermath
No solutions yet
Easy

Word Tokenizer and Vocabulary

Split text into lowercase words and build a vocabulary sorted by frequency, the first step of any language model.

You'll learn TokenizationVocabulary building
aimachine learning
No solutions yet
Easy

Dot Product of Two Vectors

Multiply two vectors element by element and add the results: the core operation of every neuron.

You'll learn VectorsDot product
Neural networksaimachine learning
Medium

Weekly Payroll

Total a week's pay for salaried, hourly and commission employees, each paid by its own rule.

You'll learn PolymorphismOvertime math
ParsingSimulationmath
No solutions yet
Easy

Temperature Sensor Adapter

Adapt readings from Fahrenheit, Kelvin and Celsius sensors to one Celsius interface.

You'll learn Adapter patternUnit conversion
Design patternsParsingmath
No solutions yet
Easy

Shape Factory

Create shapes from text descriptions with a factory and return the area of each one.

You'll learn Factory methodPolymorphism
Design patternsParsingmath
No solutions yet
Easy

Event Subscribers

Deliver events to the subscribers of each topic, observer style, and count what everyone receives.

You'll learn Observer patternDictionaries
Design patternsSimulationStrings
No solutions yet
Easy

Growing a Dynamic Array

Simulate how a dynamic array doubles its capacity and count the reallocations and copied elements.

You'll learn Dynamic arraysAmortised cost
ArraysSimulationmath
No solutions yet
Medium

Composite Folder Sizes

Compute the total size of every folder in a tree where folders contain files and other folders.

You'll learn Composite patternTrees
Design patternsRecursionTrees
No solutions yet
Easy

Price Decorators

Wrap a base price in discount, tax, shipping and coupon decorators applied in order.

You'll learn Decorator patternPercentages
Design patternsSimulationmath
No solutions yet
Easy

First Invalid Age

Validate typed ages and report where the first bad entry is instead of letting the program crash.

You'll learn ValidationParsing
BeginnerParsingStrings
No solutions yet
Easy

Flatten a 2D Array

Combine the rows of a 2D integer array into one array.

You'll learn 2D arraysNested loops
ArraysLoops
No solutions yet
Medium

SQL Query Builder

Assemble a SQL query from parts given in any order, the way a builder object collects settings step by step.

You'll learn Builder patternString assembly
Design patternsParsingStrings
No solutions yet
Easy

Smallest Digit

Find the smallest decimal digit of a positive integer.

You'll learn Digit extractionTracking a minimum
Beginner
No solutions yet