요약 - 안전한 나눗셈
Coddy Dart 여정의 로직 & 흐름 섹션에 포함된 레슨 — 65개 중 43번째.
챌린지
쉬움예외 처리를 사용하여 안전한 나눗셈 계산기를 구현하는 프로그램을 작성하세요. 프로그램은 0으로 나누기 오류를 적절하게 처리하고 오류가 발생했을 때 사용자에게 명확한 피드백을 제공해야 합니다.
- 첫 번째 숫자(피제수)를 나타내는 문자열 입력을 읽습니다.
- 두 번째 숫자(제수)를 나타내는 문자열 입력을 읽습니다.
- 두 개의 double 매개변수를 받고 double 결과를 반환하는
safeDivision이라는 함수를 만듭니다. - 함수는 잠재적인 나눗셈 오류를 처리하기 위해
try-catch블록을 사용해야 합니다: try블록에서: 제수가 0인지 확인하고, 만약 그렇다면"Division by zero is not allowed"라는 메시지와 함께 예외를 던지고(throw), 그렇지 않으면 나눗셈을 수행합니다.catch블록에서: 예외를 처리하고 안전한 기본값으로0.0을 반환합니다.double.parse()를 사용하여 입력 문자열을 double 값으로 변환합니다.- 변환된 값으로
safeDivision함수를 호출합니다. - 아래에 표시된 정확한 형식으로 결과를 표시합니다.
예를 들어, 입력이 "10.0"과 "2.0"인 경우 프로그램은 다음과 같이 출력해야 합니다:
Safe Division Calculator
========================
First number: 10.0
Second number: 2.0
Performing division...
Result: 5.0
Operation completed successfully입력이 "15.0"과 "0.0"인 경우 프로그램은 다음과 같이 출력해야 합니다:
Safe Division Calculator
========================
First number: 15.0
Second number: 0.0
Performing division...
Error: Division by zero is not allowed
Using safe default value: 0.0
Operation completed with error handling입력이 "7.5"과 "2.5"인 경우 프로그램은 다음과 같이 출력해야 합니다:
Safe Division Calculator
========================
First number: 7.5
Second number: 2.5
Performing division...
Result: 3.0
Operation completed successfully프로그램은 0으로 나누기를 처리하기 위해 try-catch 블록을 사용하는 safeDivision 함수를 구현해야 합니다. try 블록에서 제수가 0.0과 같은지 확인하고, 만약 그렇다면 throw 키워드를 사용하여 수동으로 예외를 발생시킵니다. catch 블록에서는 오류 메시지를 출력하고 안전한 대체 값으로 0.0을 반환합니다. 메인 프로그램은 이 함수를 호출하고 오류 발생 여부에 따라 서로 다른 완료 메시지를 표시해야 합니다.
직접 해보기
import 'dart:io';
// TODO: 여기에 safeDivision 함수를 생성하세요
void main() {
// 입력 읽기
String? firstInput = stdin.readLineSync();
String? secondInput = stdin.readLineSync();
// 문자열을 double로 변환
double firstNumber = double.parse(firstInput!);
double secondNumber = double.parse(secondInput!);
// 헤더 표시
print("Safe Division Calculator");
print("========================");
print("First number: $firstNumber");
print("Second number: $secondNumber");
print("Performing division...");
// TODO: safeDivision 함수를 호출하고 결과를 처리하세요
// 오류가 발생했는지 확인하여 적절한 완료 메시지를 표시해야 함을 기억하세요
}로직 & 흐름의 모든 레슨
1고급 리스트 조작
리스트 속성: first 및 last리스트 상태: isEmpty 및 isNotEmpty리스트 뒤집기리스트에 추가: insert리스트 요소 제거: removeWhere리스트에서 찾기: indexOf리스트 정렬리스트 섞기요약 - 리스트 정리 도구