порогом, то в дальнейшем уже законченная партия может неожиданно продолжиться до нового числа очков, что не соответствует правилам.
if( input >= 50 && input <= 1000 ) {
Referee.GAME_FINISH_SCORE = input;
Referee.NewGame() ;
Showlnfo() ;
}
В противном случае, когда значение input не укладывается в допустимые рамки, пользователь должен увидеть предупреждение о том, что введенное число не соответствует диапазону:
else ShowMessage(BAD_NUMBER_STR) ;
Избегайте глубокой вложенности условных операторов.„Это значительно усложняет логику работы программы и процесс отладки. Оптимально использовать не более одного уровня такой вложенности. В принципе любой код всегда можно переделать так, чтобы он вообще не допускал вложенных операторов if. Например, кусочек данного метода, где обрабатывается нажатие ОК, можно переписать следующим образом:
// если НЕ нажата кнопка ОК, то завершить работу метода if( InputForm->ShowModal() != mrOk ) return;
intinput;
input = StrToInt( InputForm->Input->Text);
if( input >= 50 && input <= 1000 )
Referee.GAME_FINISH_SCORE = input;
else ShowMessage(BAD_NUMBER_STR);
Теперь вложенных операторов if удалось избежать, а структура исходного текста стала более очевидной.
Подготовка законченного приложения
«•
Позиционируем окна
Чтобы программа при запуске выглядела красиво, неплохо, чтобы главное окно (да и остальные тоже) располагалось в центре экрана (по умолчанию
167