Cyber Monday

ATÉ 40% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Lista de exercícios - Questão 1

  1. Calculando idade para carteira de motorista
import "dart:io";

void main(){
  print("\n╔════════════════════════════════════╗");
  print("║    CONSULTA DE  HABILITAÇÃO        ║");
  print("╚════════════════════════════════════╝");

  print('\nVocê já possui Carteira Nacional de Habilitação? (sim/não)');
  String resposta = stdin.readLineSync()!.toLowerCase(); // !.toLowerCase() transforma a resposta em minuscula
  bool temCnh = (resposta == 'sim' || resposta == 's'); // bool  retorna true ou false

  print('Qual é a sua idade atual?');
  var idade = int.tryParse(stdin.readLineSync() ?? ''); // tryParse() tenta converter uma string em um inteiro

if (idade == null || idade < 0 || idade > 90) {
    print('\n  Erro: Entrada de dados inválido!');
    print('Fim da verificação');
    return;
  }

print('\n──────────── RESULTADO ────────────');
if (temCnh) {
    if (idade >= 18) {
        print('Parabéns! Você já possui CNH.');
    } else {
        print('Dados inconsistentes!');
        print('Não é possível ter CNH com menos de 18 anos.');
    }
} else if (idade >= 18) {
    print('Você já pode aplicar para habilitação de veículos.');
} else {
    int falta = 18 - idade;
    print('Faltam $falta ${falta == 1 ? 'ano' : 'anos'} para você poder se habilitar.');
}

print('\nFim da verificação.');
}
2 respostas
solução!

Olá, José, como vai?

Seu código está muito bem estruturado e demonstra um ótimo domínio das estruturas condicionais e do uso de funções de leitura e conversão de dados no Dart. A lógica de verificação da idade e da posse da CNH foi implementada de maneira clara e consistente.

Gostei bastante do cuidado em validar a entrada de dados, incluindo o tratamento de idades inválidas e a limitação de faixa etária. Isso mostra atenção aos detalhes e preocupação com a experiência do usuário. O uso de tryParse e o controle de fluxos com if e return estão corretos.

Continue compartilhando seus exercícios por aqui. O fórum está à disposição para acompanhar sua evolução e trocar mais ideias sobre Dart e boas práticas de programação.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Obrigado