O Laço 'while'
Parte da seção Fundamentos do Journey de Dart da Coddy — lição 43 de 94.
O laço while no Dart executa repetidamente o código enquanto uma condição for verdadeira, ideal quando o número de iterações é desconhecido.
void main() {
int count = 1;
while (count <= 5) {
print(count);
count++;
}
}Saída:
1
2
3
4
5Estrutura básica:
while (condition) {
// Code to repeat
}Calculando uma soma:
void main() {
int sum = 0;
int i = 1;
while (i <= 5) {
sum += i;
i++;
}
print("Sum: $sum");
}Saída:
Sum: 15Desafio
InicianteNeste desafio, você praticará o uso do loop while em Dart para contar regressivamente de um número dado até 1.
Sua tarefa é criar um programa que:
- Lê um único inteiro
nda entrada - Usa um loop
whilepara imprimir uma contagem regressiva denaté 1, cada um em uma nova linha - Após a contagem regressiva, imprime
Blastoff! - Finalmente, imprime a soma de todos os números na contagem regressiva
Por exemplo, se a entrada for 5, seu programa deve produzir a saída:
5
4
3
2
1
Blastoff!
Sum: 15Observe que cada número é impresso em uma nova linha, seguido por "Blastoff!" em sua própria linha, e depois a soma é impressa no formato Sum: X onde X é a soma calculada.
Folha de consulta
O loop while executa repetidamente o código enquanto uma condição for verdadeira:
while (condition) {
// Código a repetir
}Exemplo básico de contagem:
int count = 1;
while (count <= 5) {
print(count);
count++;
}Calculando uma soma com loop while:
int sum = 0;
int i = 1;
while (i <= 5) {
sum += i;
i++;
}
print("Sum: $sum");Experimente você mesmo
import 'dart:io';
void main() {
// Ler a entrada
String? input = stdin.readLineSync();
// Converter a entrada para inteiro
var n = int.tryParse(input ?? '0') ?? 0;
// TODO: Implementar um loop while para fazer a contagem regressiva de n até 1
// e calcular a soma de todos os números
// TODO: Imprimir "Blastoff!" após a contagem regressiva
// TODO: Imprimir a soma com o formato "Soma: X"
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 2
Operadores de ComparaçãoAND LógicoOR LógicoNOT LógicoOperadores de Teste de TipoResumo - Fazendo Comparações7Trabalhando com Strings
Concatenação de StringsInterpolação de StringsStrings Multi-linhaPropriedades de StringsMétodos Básicos de Strings10Coleções - Básicos de Mapas
O que são Mapas?Criando um MapaAcessando Valores por ChavePares Chave-ValorObtendo o Tamanho do MapaObtendo as ChavesObtendo os ValoresVerificando se uma Chave Existe2Variáveis e Tipos de Dados Básicos
O que são Variáveis?StringsInteiros (int)Double (double)Booleanos (bool)Inferência de Tipo com 'var'Variáveis finalVariáveis constantesConvenções de NomenclaturaNull Safety BásicaResumo - Declarando Variáveis8Fluxo de Controle - Laços
O Laço 'for'O Laço 'while'O Laço 'do-while'Usando 'break' em LaçosUsando 'continue' em LaçosResumo - Repetindo Código3Operadores Parte 1
Operadores AritméticosDivisão InteiraOperador MóduloIncremento e DecrementoAtalhos de AtribuiçãoResumo - Cálculos Simples6Fluxo de Controle - Tomada de Decisões
A Instrução 'if'A Instrução 'else'A Instrução 'else if'Resumo - Decisões SimplesInstruções 'if' AninhadasA Instrução 'switch'9Coleções - Listas Básicas
O que são Listas?Criando uma ListaAcessando por ÍndiceObtendo o Tamanho da ListaAdicionando ElementosRemovendo ElementosVerificando se uma Lista Está VaziaIterando Sobre uma Lista12Funções Avançadas
Parâmetros Posicionais OpcionaisParâmetros NomeadosParâmetros Nomeados ObrigatóriosValores Padrão de ParâmetrosResumo - Parâmetros de Função15Projeto: Calculadora Simples
ConfigurandoDeclarando Número