Member 14524731 Ответов: 1

Проблема кодирования: я устал это исправлять


Это и есть проблема кодирования.

We have a dog that likes to bark.  We need to wake up if the dog is barking at night!

Write a method shouldWakeUp that has 2 parameters.

1st parameter should be of type boolean and be named barking it represents if our dog is currently barking.
2nd parameter represents the hour of the day and is of type int with the name hourOfDay and has a valid range of 0-23.

We have to wake up if the dog is barking before 8 or after 22 hours so in that case return true.

In all other cases return false.

If the hourOfDay parameter is less than 0 or greater than 23 return false.

Examples of input/output:

* shouldWakeUp (true, 1); → should return true

* shouldWakeUp (false, 2); → should return false since the dog is not barking.

* shouldWakeUp (true, 8); → should return false, since it's not before 8.

* shouldWakeUp (true, -1); → should return false since the hourOfDay parameter needs to be in a range 0-23.


TIP: Use the if else statement with multiple conditions.

NOTE: The shouldWakeUp method  needs to be defined as public static like we have been doing so far in the course.

NOTE: Do not add a  main method to solution code.


МОЙ КОД:

public class BarkingDog {

    public static boolean ShouldWakeup(boolean barking, int hourOfDay) {


        if (barking) {
            int time = 24;

        } else if (hourOfDay > 8 || hourOfDay < 22) {
            return true;

        } else if (hourOfDay < 0 || hourOfDay > 23) {
            return false;

        }
        return false;

    }

}


Что я уже пробовал:

Это проблема кодирования на Udemy. Я представил свое решение, но я продолжаю получать ошибку, и она говорит, что мне не хватает фигурной скобки. Не могу понять, что я делаю не так. Я не хочу ответа, я хочу узнать, как его решить. Может ли кто-нибудь, пожалуйста, помочь мне, был бы очень признателен за помощь.

wseng

Я не вижу никаких ошибок в коде, который вы опубликовали.

Patrice T

это также говорит вам о положении.
и проблема может быть не в положении ошибки.

Member 14524731

Патрис, что ты подразумеваешь под должностью?

Dave Kreskowiak

Номер строки и столбец в файле.

Member 14524731

Строка 22. Когда я снимаю фигурную скобку, она показывает ошибку, и тогда я не могу скомпилировать код.

1 Ответов

Рейтинг:
1

OriginalGriff

Ошибки не всегда обнаруживаются именно там, где они указаны компилятором - то есть там, где компилятор обнаружил проблему, а не там, где она была вызвана.
В этом случае в наборе есть две фигурные скобки: '{' и '}' - если у вас есть открытая скобка, то отсутствие соответствующей закрытой скобки будет обнаружено в конце файла, а не в месте расположения "ложной" открытой скобки.

Поскольку это не полный код, я бы предположил, что весь ваш файл содержит больше: по крайней мере, небольшой набор using заявления, и, скорее всего, а namespace линия:

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;

namespace MyNamespace{

    public class BarkingDog {
    
        public static boolean ShouldWakeup(boolean barking, int hourOfDay) {
    
    
            if (barking) {
                int time = 24;
    
            } else if (hourOfDay > 8 || hourOfDay < 22) {
                return true;
    
            } else if (hourOfDay < 0 || hourOfDay > 23) {
                return false;
    
            }
            return false;
    
        }
    
    }
}  <<<--- If this one is missing, you will get the error.

Поэтому начните с просмотра всего кода и попробуйте поместить курсор на последнюю букву"} " в файле. Затем нажмите CTRL+}, который переместит курсор на соответствующий символ" {". Есть ли что-нибудь выше этого?