Menu
Coddy logo textTech

Operador Módulo

Parte da seção Fundamentos do Journey de Dart da Coddy — lição 18 de 94.

O operador módulo (%) nos dá o resto após a divisão. Vamos explorar como ele funciona com alguns exemplos diretos.

Operação Básica de Módulo

void main() {
  int dividend = 10;
  int divisor = 3;
  int remainder = dividend % divisor;
  
  print('Remainder of $dividend ÷ $divisor = $remainder');
}

Saída: Remainder of 10 ÷ 3 = 1

Quando dividimos 10 por 3, obtemos 3 com um resto de 1. O operador módulo % captura esse valor de resto.

Verificando Números Pares e Ímpares

Podemos determinar se um número é par ou ímpar usando o operador módulo:

void main() {
  int number = 15;
  int remainder = number % 2;
  
  print('$number % 2 = $remainder');
  
  // Números pares têm resto 0 quando divididos por 2
  bool isEven = remainder == 0;
  
  // Usando avaliação booleana direta em vez de if/else
  String result = isEven ? '$number is even' : '$number is odd';
  print(result);
}

Saída:

15 % 2 = 1
15 is odd
challenge icon

Desafio

Fácil

Crie um programa que usa o operador módulo (%) para resolver os seguintes problemas:

  1. Declare uma variável inteira totalMinutes com um valor de 197
  2. Calcule e armazene o número de horas completas em totalMinutes usando divisão inteira
  3. Calcule e armazene os minutos restantes usando o operador módulo
  4. Imprima o tempo em horas e minutos no EXATO seguinte formato:
197 minutes is 3 hours and 17 minutes.

Então:

  1. Declare uma variável inteira coins com um valor de 57
  2. Calcule e armazene quantas moedas de 25 (25 moedas) podem ser formadas a partir de coins
  3. Calcule e armazene as moedas restantes usando o operador módulo
  4. Imprima o resultado no EXATO seguinte formato:
57 coins can be divided into 2 quarters and 7 remaining coins.

Folha de consulta

O operador módulo (%) retorna o resto após a divisão:

int remainder = 10 % 3; // remainder = 1

Verificando Números Pares/Ímpares:

int number = 15;
bool isEven = (number % 2) == 0; // false, 15 é ímpar

Exemplo de Conversão de Tempo:

int totalMinutes = 197;
int hours = totalMinutes ~/ 60;     // Divisão inteira: 3
int minutes = totalMinutes % 60;    // Resto: 17

Experimente você mesmo

void main() {
  // Declare suas variáveis aqui
  int totalMinutes = ?;
  
  // Calcule as horas e os minutos restantes
  int hours = totalMinutes ? 60;
  int remainingMinutes = totalMinutes ? 60;
  
  // Imprima o resultado do tempo
  print("$totalMinutes minutes is $hours hours and $remainingMinutes minutes.");
  
  // Calcule as moedas de 25 centavos e as moedas restantes
  int coins = ?;
  int quarters = coins ~/ ?;
  int remainingCoins = coins % ?;
  
  // Imprima o resultado das moedas
  print("$coins coins can be divided into $quarters quarters and $remainingCoins remaining coins.");
}
quiz iconTeste seus conhecimentos

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