Возникли проблемы при добавлении цикла for в программу

У меня проблемы с добавлением цикла for в мою старую программу. Я должен сделать так, чтобы в конце у пользователя была возможность задать вопрос снова. Это то, что я до сих пор также только начал учиться на петли извините, если вопрос глупый

http://gyazo.com/a71e2a0b06ed41c47d62ccc05d8ffec8

1 ответ

Решение

Ваш вопрос не глупый, я думаю, у вас просто неправильная идея.

В любом случае, вот ваш код, редактируемый и копируемый

import java.util.Scanner;

public class DogYears
{

   public static void main(String[] args)
   {

      Scanner scan = new Scanner(System.in);
      System.out.println("Enter your dog's age in human years: ");
      int age = scan.nextInt();
      int dogAge = age * 7;
      System.out.println("Your dog is " + age + " in human years and " + dogAge 
         + " in dog years!");
   //       scan.close();   <--- don't close it, you want to be able to do it again, right??
      if(dogAge>=150)
      {

         System.out.println("Likely story");

      }

      else if(dogAge>=80 && dogAge<150)
      {

         System.out.println("Hello grand-dog");

      }

      else if(dogAge>=40 && dogAge<80)
      {

         System.out.println("Boring!");

      }

      else if(dogAge>=20 && dogAge<40)
      {

         System.out.println("Get a job!");

      }

      else if(dogAge<20)
      {

         System.out.println("Just a pup!");

      }

   }

}

/* 

this is the code you had trouble including

for(int age = scan.nextInt(); int dogAge = age * 7; i++);
{

System.out.print("Enter your dog's age in human years: ");

}

 */

В любом случае, так вот ваш код. Все, что вам нужно сделать, это скопировать вставить, а затем выделить весь код, а затем нажмите 2 скобки в небольшом поле над текстовым полем.

Теперь, что касается вашего фактического вопроса, простой способ сделать все это возможным - бросить цикл for вокруг всего, что вы хотите, чтобы программа повторила (и метод, который я добавил, чтобы убедиться, что он числовой), вот что я имею в виду,

    import java.util.Scanner;

public class DogYears
{

   public static void main(String[] args)
   {

      Scanner scan = new Scanner(System.in);

      System.out.println("Enter your dog's age in human years. ");

      int age = scan.nextInt();

      for(int i = 0; i < 10000; i++)
      {



         int dogAge = age * 7;
         System.out.println("Your dog is " + age + " in human years and " + dogAge 
            + " in dog years!");

      //       scan.close();   <--- don't close it, you want to be able to do it again, right??

         if(dogAge>=150)
         {

            System.out.println("Likely story");

         }

         else if(dogAge>=80 && dogAge<150)
         {

            System.out.println("Hello grand-dog");

         }

         else if(dogAge>=40 && dogAge<80)
         {

            System.out.println("Boring!");

         }

         else if(dogAge>=20 && dogAge<40)
         {

            System.out.println("Get a job!");

         }

         else if(dogAge<20)
         {

            System.out.println("Just a pup!");

         }

         System.out.print("Enter your dog's age in human years. (Enter a negative number to stop the program)\n");

         String response = scan.next();

         age = Integer.parseInt(response);

         if(age < 0)
         {

            i = 10001;

         }




      }

   }


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