Desafio: FizzBuzz
Parte da seção Lógica & Fluxo do Journey de Dart da Coddy — lição 65 de 65.
Desafio
FácilCrie um programa que implemente o clássico desafio FizzBuzz com estrutura de loop e lógica condicional adequadas. Este desafio testa sua habilidade de combinar loops, declarações condicionais e o operador módulo para resolver um problema de programação bem conhecido.
Sua tarefa é:
- Usar um loop
forpara iterar através dos números de 1 a 50 (inclusive) - Para cada número, aplique as seguintes regras em ordem:
- Se o número for divisível por ambos 3 e 5, imprima
FizzBuzz - Se o número for divisível apenas por 3, imprima
Fizz - Se o número for divisível apenas por 5, imprima
Buzz - Se o número não for divisível por 3 ou 5, imprima o próprio número
- Se o número for divisível por ambos 3 e 5, imprima
- Cada saída deve estar em uma linha separada
- Use o operador módulo (
%) para verificar a divisibilidade - Estruture suas declarações condicionais usando
if,else ifeelsena ordem correta
As primeiras linhas da sua saída devem ser parecidas com isto:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzzLembre-se de que a chave para resolver o FizzBuzz corretamente é verificar o caso de "ambas as condições" (divisível por 3 e 5) primeiro, antes de verificar as condições individuais. Um número é divisível por outro número se o resto da divisão por esse número for igual a zero.
Seu programa deve demonstrar o uso adequado de loops para iteração, o operador módulo para teste de divisibilidade e declarações condicionais estruturadas na ordem lógica correta para lidar com todos os casos possíveis.
Experimente você mesmo
void main() {
// TODO: Escreva seu código abaixo
// Use um loop for para iterar de 1 a 50
// Verifique a divisibilidade usando o operador módulo (%)
// Lembre-se de verificar tanto 3 E 5 primeiro, depois as condições individuais
// Imprima cada resultado em uma linha separada
}Todas as lições de Lógica & Fluxo
1Manipulação Avançada de Listas
Propriedades de Lista: first & lastEstado da Lista: isEmpty & isNotEmptyInvertendo uma ListaAdicionando a uma Lista: insertRemoção em Listas: removeWhereBuscando em uma Lista: indexOfOrdenando uma ListaEmbaralhando uma ListaRecapitulação - Organizador de Listas4Manipulação Avançada de Mapas
Iterando sobre um MapVerificando Chaves e ValoresPropriedades do Map: keys & valuesAdição Condicional: putIfAbsentRemovendo Entradas de um MapMaps AninhadosRecapitulação - Atualização de Inventário2Operações Funcionais em Listas
Transformando com 'map'Filtrando com 'where'Usando '.toList()'Verificando Condições com 'any'Condições com 'every'Encontrando com 'firstWhere'Recapitulação - Filtragem de Dados5Projeto: Cálculo de Carrinho de Compras
Configuração do ProjetoAdicionando Itens ao Carrinho3Conjuntos
O que é um Conjunto?Criando um ConjuntoAdicionando e Removendo de ConjuntosVerificando Elementos em um ConjuntoConvertendo uma Lista para um ConjuntoUnião de ConjuntosInterseção de ConjuntosDiferença de ConjuntosRecapitulação - Lista de Convidados Únicos