Почему не работает простой код?
Вот встал вопрос - как переделать код, изменяющий формат даты
Вот что написал я (это кусок кода) {c= a+" час";if(a>1&&a<=4)c=a+" часа";else if(a>4&&a<=20)c=a+" часов";else if(a===21)c=a+" час";else if(a>21)c=a+" часа"} Странность заключается в том, что выводится 7 часов, но 18 часа:cray: Что не так? Пробовал без элсов делать, === заменял на == - не помогает Целый день смотрел логику жавы, все вроде по правилам... До этого работал только с Си Помогите пожалуйста Дополнение - в переменной а содержится само значение, в с - комбинация, насколько я понял |
|
Это ссылка на окончания, я правильно понял? Так оно и у меня вроде реализовано...
|
Это ссылка на формы слов рядом с числительными.
|
перепиши тоже самое с фигурными скобками в ветвлениях стандарт с++ подойдёт
|
Kolyaj, это я понял. Но дело в том что код похоже не совсем обычный. Там со скобками вообще плохо... Я это для виджета делаю
Кстати, чем == отличается от === ??? Нигде не нашел про это. насчет скобок, фигурные надо? А то никак не работает... |
надо в формате
if(){ ..... } else{ if(){ .... } else{ ..... } } стандарт ещё никто не отменял |
dmitriymar, сейчас пробую
|
если за ветвлением один оператор то скобки не обязательны. если группа то обязательное обрамление части этого кода
|
Получилось так
{c=a+" час";if (a>1&&a<=4){c=a+" часа"};else {if(a>4&&a<=20){c=a+" часов"};else {if(a===21){c=a+" час"};else {if(a>21)c=a+" часа"}}}} Проверить сейчас уже не получится, так как телефон заряжен... Посмотрим, примет ли вообще код А пробелы имеют значение? ---------------- Не запустилось вообще. |
Часовой пояс GMT +3, время: 13:56. |