2015-03-19 3 views
-1

Я довольно новичок в этом сайте, и мне нужна помощь в этой программе, над которой я работаю. Я пытаюсь запустить программу «if-else», которая запрашивает радиус или диаметр, а затем выводит окружность. Я получил довольно простой старт, но даже когда я смотрю по всему Интернету на ответы, я все еще смущен.Проблемы с запуском кода

здесь код

import java.util.Scanner; 
class Circumference 
{ 
public static void main(String[] args) 
{ 
    double radius; 
    double diameter; 
    double c1 = (3.14 * (radius * radius)); 
    double c2 = (3.14 * diameter); 
    Scanner in = new Scanner(System.in); 
    String answer = String.valueOf(1); 

    System.out.println("Do you have the radius, y/n?"); 
    answer = in.nextLine(); 
    { 
     if(answer.equalsIgnoreCase("y")) 
     { 
      System.out.println("Then give me the radius"); 
      float radius = in.nextInt(); 
      System.out.println("Circumference is : " + c1); 
      { 
       else if(answer.equalsIgnoreCase("n")) 
       { 
        System.out.println("Do you know the diameter then, y/n?"); 
        string answer = in.nextLine(); 
        { 
         else if(answer.equalsIgnoreCase("y")) 
         { 
          System.out.println("Then input the diameter"); 
          float diameter = in.nextInt(); 
          System.out.println("Circumference is : " + c2); 
          { 
           else if(answer.equalsIgnoreCase("n")) 
           { 
            System.out.println("Then find it"); 
            } 
           } 
          } 
         } 
        } 
       } 
      } 
     } 
    } 
} 

Когда я пытаюсь изменить строку, она не распознает его и сказать: «не может изменить строку в целое», или что радиус в «c1» может при выполнении.

Вся помощь приветствуется!

+4

Я думаю, вам нужно понять, как работают операторы 'if-else' – MadProgrammer

+0

Кроме того, вы не можете вычислять' c1' и 'c2', не получив сначала вход (диаметр и радиус) от пользователя. – DigitalNinja

+0

«Думаю» вам также нужно понять, как переменные объявляются в Java. – Alexander

ответ

0

Просматривая свой код, очень ясно, что вы очень новичок в java. Как @ m0skit0 сказал (а):

Мы понимаем, что вы довольно новы, но это неправильное место для изучения Java.

Ваше понимание основных условных обозначений java в корне ошибочно, например, понятие if/else и объявление/инициализация переменных. Я рекомендую вам поговорить с вашим профессором или кем бы он ни был, кто учит вас java. Программа, которую вы предоставили, вообще не компилируется. Ошибки компилятора должны быть очень просто исправить, потому что большинство Иды в основном исправить их для вас ... Вот некоторые вещи, которые вы должны исправить это, чтобы работать:

В строке 19: float radius = in.nextInt(); Здесь вы декларирование и инициализацией поплавок но вы уже имеете двойной радиус. Вы не можете иметь переменные с одним и тем же именем в java.

В строке 21: По какой-то неизвестной мне причине вы вставляете {, который никогда не закрывается. Эта скобка не имеет никакой цели и является излишней.

В строке 22: У вас нет другого без if.

В строке 25: String является классом и, следовательно, заглавными, в отличие от C. Почему вы создаете новый ответ типа String, когда вы уже объявили его? Еще раз вам не придется иметь переменные с тем же именем.

В строке 26: Еще одна абсолютно ненужная фигурная скобка.

В строке 30: В третий раз вы не можете иметь несколько переменных, названных одинаковыми.

В строке 32: Еще одна абсолютно бесполезная фигурная скобка.

В строке 33: У вас нет другого без if.

+0

Я знал, что буду критиковать код, который я собрал, и я рад это слышать. Я также знаю, что это не место для изучения Java, но я просто хотел знать, как этот фрагмент кода можно исправить, поэтому я могу построить из этого, потому что я только начинаю больше изучать Java. Спасибо! (P.S. Я использую textwrangler, чтобы создать это, но я действительно должен использовать что-то еще: /) – Testrun123

+0

@ Testrun12 Нет проблем :) Я рекомендую вам использовать eclipse вместо текстового wrangler - это сделает вашу жизнь намного проще – Nyx

+0

Да. Мой класс использует textwrangler, и это боль, чтобы даже не знать, что не так в половине случаев – Testrun123

Смежные вопросы