import 'dart:io'; void main() { // Default device states bool lightsOn = false; int thermostatTemp = 20; bool securityArmed = false; print('Welcome to the Smart Home System!'); while (true) { print('\nPlease choose an action:'); print('1. Toggle lights'); print('2. Set thermostat temperature'); print('3. Arm/disarm security system'); print('4. View system status'); print('5. Exit'); stdout.write('Enter your choice: '); String? choice = stdin.readLineSync(); if (choice == null) continue; switch (choice) { case '1': lightsOn = !lightsOn; print('Lights are now ${lightsOn ? "ON" : "OFF"}.'); break; case '2': stdout.write('Set thermostat temperature (15°C - 30°C): '); String? tempInput = stdin.readLineSync(); if (tempInput == null) break; int? newTemp = int.tryParse(tempInput); if (newTemp == null) { print('Invalid input. Please enter a number.'); break; } if (newTemp >= 15 && newTemp <= 30) { thermostatTemp = newTemp; print('Thermostat set to $thermostatTemp°C.'); } else { print('Temperature must be between 15°C and 30°C.'); } break; case '3': securityArmed = !securityArmed; print('Security system is now ${securityArmed ? "ARMED" : "DISARMED"}.'); break; case '4': String lightsStatus = lightsOn ? "ON" : "OFF"; String securityStatus = securityArmed ? "ARMED" : "DISARMED"; String dayType = ''; if (thermostatTemp % 3 == 0 && thermostatTemp % 5 == 0) { dayType = 'Perfect Day'; } else if (thermostatTemp % 3 == 0) { dayType = 'Cool Day'; } else if (thermostatTemp % 5 == 0) { dayType = 'Warm Day'; } print('\nSystem Status:'); print('Lights: $lightsStatus'); print('Thermostat: $thermostatTemp°C${dayType.isNotEmpty ? " ($dayType)" : ""}'); print('Security System: $securityStatus'); break; case '5': print('Exiting the system. Goodbye!'); return; default: print('Invalid choice. Please select a number between 1 and 5.'); } } }