I am a beginner java programmer, studying off basic youtube videos and overflow forums, and i came across a question on an textbook sheet that asked me to use a for loop program and print this table out as well as fill in each blank

Number Square Cube (n+1)/(2n-18) ______________________________________ 1 # # # 2 # # # 3 # # # 4 # # # 5 # # #

I thought I should try it out to test myself. I came up with the following program that works perfectly for the Number, Square and Cube part of the table, but I don’t understand how to generate the numbers using the given formula. The formula I initialized as a variable (double) doesn’t print the actual results, and I honestly don’t have a clue as to what to do. I’d rather a simple explanation than a complex one and simple changes to the code rather than complex. As I said I am a beginner, and many different methods may go right over my head. Thank you so much in advance (also an extra task asks that I print out the sums of each column. I don’t know how to do that at all, and would like an explanation if possible, but wouldn’t mind if I don’t receive one)

int number; int maxValue; Scanner keyboard = new Scanner(System.in); System.out.println("how many numbers do you want the max value to be"); maxValue = keyboard.nextInt(); System.out.println("NumbertSquaretCube (n+1)/(2n-18)"); System.out.println("--------------------------------"); for (number = 1; number <= maxValue; number++) { double formula = (number + 1) / (number * 2); System.out.println( number + "ttt" + number * number + "ttt" + number * number * number + "ttt" + formula); }

## Answer

Your formula does not match the textbook. Try this:

System.out.println("NumbertSquaretCube (n+1)/(2n-18)"); System.out.println("--------------------------------"); for (int number=1; number <= maxValue; number++) { double square = Math.pow(number, 2); double cube = Math.pow(number, 3); double formula = (number + 1) / (number * 2 - 18); System.out.println(number + "ttt" + square + "ttt" + cube + "ttt" + formula); }

Note: As pointed out by @MauricePerry an input of 9 would cause a divide by zero. Rather than try to catch this unchecked exception, I think you should control your input values so that this does not happen.