2016-11-24 2 views
0

Я программист noob, но я застрял на этом одном фрагменте кода. Как вы возвращаетесь назад, чтобы начать? Я пробовал несколько разных методов, но все они либо занимают нелепый код, либо не работают должным образом. Я пытался реализовать этот «простой» кусок кода во всех своих назначениях программирования, но он не работал. Благодаря!Как вернуться к старту?

p.s. Я уже закончил задание. Я просто пытаюсь сделать его более «полным».

public class OddProduct { 


    public static void main(String[] args) { 
     //Inputs from user 
     System.out.println("Enter an odd number"); 
     Scanner input_odd = new Scanner(System.in); 
     int odd = input_odd.nextInt(); 

     int oddproduct = 1; 

     //Multiplies all odd integers 
     for (int counter = 1; counter <= odd; counter = counter + 2){ 
      oddproduct = oddproduct * counter; 
     }//end of for- loop 
     System.out.printf("\nThe product of all the odd integers up to %d is %d\n", 
       odd, oddproduct); 

     /* MY NOTES FOR RECURSE 
     if (odd%2 == 1){ proceed normally} 
     else if (odd%2 != 1) { HOW TO LOOP BACK???} 
     else { println = "Application closed"} 
     */ 
    }//end of main method 

}//end of OddProduct class 
+1

Как 'recursion' является специализированной техникой программирования, я не думаю, что вы имеете в виду' рекурсию обратно start' а 'return', чтобы начать? В любом случае, возможно, что вы хотите, это цикл, который принимает ваш вход (и делает логику) до тех пор, пока не будет введен какой-либо символ? –

+0

@ScaryWombat да, я подумал, что мне понадобится функция while, но я не уверен, что добавить в нее. Я буквально потратил на это несколько часов. Я бы сделал другие проблемы, чтобы разобраться. Я просто хочу посмотреть, как это делается, как метод счетчика, чтобы остановить циклы. –

ответ

0

На основе ваших Notes Я думаю, что это то, что вам требуется

Scanner input_odd = new Scanner(System.in); 
    int odd = 0; 

    while (odd % 2 != 1) { // fails first time && if user enters even number 
     System.out.println("Enter an odd number"); 
     odd = input_odd.nextInt(); 
    } 
+0

Спасибо. Раньше я делал что-то очень похожее, но, наверное, мне нужно быть осторожным, где его разместить. –

+0

Да, если вы замените свои первые 4 строки своего основного, это должно сработать. Также, если этот ответ был полезен, пожалуйста, подумайте над тем, чтобы поддержать и/или принять. Спасибо –

+0

Просто сделал. Большое спасибо @ScaryWombat –

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