Java: счетчик шагов

Вопрос:

Шагомер рассматривает ходьбу 2000 шагов как ходьбу 1 милю. Напишите программу, входными данными которой является количество шагов, а выходными данными - пройденные мили.

Выведите каждое значение с плавающей запятой с двумя цифрами после десятичной запятой, что может быть достигнуто следующим образом: System.out.printf ("%. 2f", вашеЗначение);

ввод: 5345 выход: 2.67

Код:

import java.util.Scanner;

public class LabProgram {
   
   /* Define your method here */
   double stepsToMiles(int userSteps) {
      double stepsPerMile = 2000;
      double milesWalked = 0;
      milesWalked = userSteps/stepsPerMile;
      return milesWalked;
   }
   
   public static void main(String[] args) {
      /* Type your code here. */
      int userSteps = 0;
      Scanner scnr = new Scanner(System.in);
      userSteps = scnr.nextInt();
      System.out.printf("%.2f", stepsToMiles(userSteps));
   }
}

Ошибка: LabProgram.java:18: ошибка: на нестатический метод stepsToMiles (int) нельзя ссылаться из статического контекста System.out.printf ("%. 2f", stepsToMiles (userSteps));

Я не уверен, что это мне говорит, пожалуйста, помогите.

Я бы рекомендовал изучить, что такое статические методы и какие классы есть в Java. Проблема здесь в том, что вам нужен экземпляр LabProgram для вызова любых методов на нем.

Henry Twist 30.03.2021 04:39

Отвечает ли это на ваш вопрос? На нестатическую переменную нельзя ссылаться из статического контекста

Henry Twist 30.03.2021 04:39

этот открытый класс LabPrograms установлен по умолчанию в онлайн-книге Zybooks, и я не думал, что он имеет какое-либо отношение к построенному мной методу, а затем к коду для вызова этого метода.

Rogelio Luna 30.03.2021 04:42

Я думаю, что это помогает, поэтому, если я сделаю метод public static double stepsToMiles ... я думаю, это сработает - я пойду посмотрю, сработает ли это.

Rogelio Luna 30.03.2021 04:46

да, спасибо, что помог мне прояснить это @HenryTwist

Rogelio Luna 30.03.2021 04:54
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
7
5
29
0

Другие вопросы по теме