Desafios de programação em C#

226 desafios que você pode resolver em C#, dos primeiros laços a grafos, programação dinâmica e machine learning. Escreva seu código no navegador, rode os testes na hora e receba uma revisão por IA.

Fácil · 134 Médio · 68 Difícil · 24

Habilidades que você vai praticar: ContagemExtrair dígitosAritméticaFórmulasLaçosListasListas 2DAcompanhar o máximoCondiçõesDescida de gradienteDividir stringsDivisibilidade
  • Python · C++ · C#
  • Testes automáticos
  • Revisão de código por IA
  • Soluções da comunidade
226
Desafios
2
Soluções compartilhadas
3
Linguagens

Todos os desafios

Busque por tema, linguagem ou dificuldade.

226 desafios
Fácil

Somar os números válidos

Some as entradas que são números inteiros e ignore todo o resto, do jeito que try/except lida com entrada inválida.

Você vai aprender Try/exceptValidação de entrada
BeginnerParsingStrings
Ainda sem soluções
Fácil

Operações em uma lista ligada

Simule uma lista ligada: adicione nas duas pontas, remova do início ou por valor e inverta.

Você vai aprender Listas ligadasSimulação
Data-structuresSimulation
Ainda sem soluções
Fácil

Regras de uma conta bancária

Proteja o saldo de uma conta com regras de depósito e saque, rejeitando operações inválidas.

Você vai aprender EncapsulamentoRegras de negócio
BeginnerSimulation
Ainda sem soluções
Fácil

Crescimento de um array dinâmico

Simule como um array dinâmico dobra sua capacidade e conte as realocações e os elementos copiados.

Você vai aprender Arrays dinâmicosCusto amortizado
ArraysSimulationmath
Ainda sem soluções
Fácil

Tempo total com WhenAll

Descubra quanto tempo um programa leva quando cada grupo de tarefas executa junto com Task.WhenAll e os grupos executam um após o outro.

Você vai aprender Async/awaitTask.WhenAll
ArraysBeginner
Ainda sem soluções
Fácil

Registros únicos

Remova registros duplicados que sejam iguais por valor, mantendo o primeiro de cada na ordem.

Você vai aprender RecordsIgualdade por valor
BeginnerStrings
Ainda sem soluções
Fácil

Lista de tarefas

Mantenha uma lista de tarefas: adicione, marque como feitas, remova e informe o que ainda está pendente.

Você vai aprender Coleções tipadasRecords
BeginnerSimulationStrings
Ainda sem soluções
Fácil

Dividir uma lista em blocos

Corte uma lista em grupos consecutivos de tamanho fixo, com um último grupo menor se necessário.

Você vai aprender FatiamentoProcessamento em lotes
ArraysBeginner
Ainda sem soluções
Fácil

Ordenar por uma chave escolhida

Ordene pessoas por nome ou por idade com um comparador escolhido em tempo de execução, quebrando empates de forma consistente.

Você vai aprender ComparadoresOrdenação
ArraysSorting
Ainda sem soluções
Fácil

Formatar uma fatura

Imprima as linhas de uma fatura e o total, com valores guardados em centavos e exibidos em dólares e centavos.

Você vai aprender Dinheiro em centavosFormatação de strings
BeginnerStrings
Ainda sem soluções