long lcm(long d,int dd)
for(int i=1;i<=dd;i++) // finds the smallest divisible number between 1 to 10
c=c+1; //counts the number of times the d variable gets divisible and sum them
if(c==dd) // if sum comes out to be 10 then we know the d variable is completely divisible by every number from 1 to 10
return div;// return the number
++div; // increment the number
c=0; // reset
Stacey Warren - Expert brainly.com
Hey! We 've verified this expert answer for you, click below to unlock the details :)
At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga.
Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus.
Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
I got my questions answered at brainly.com in under 10 minutes. Go to brainly.com now for free help!
Hi! What's your point?
sir i have attached a java file and i want to calculate the least number divisile by 1 to 20 each , I am able to calculate for 1 to10 but when i do it for 1 to 20 it gave me stackoverflow error
Perhaps it's related to the allowed memory for java.
Try with the -Xms and -Xmx from the java command.
If it doesn't change, then it's related to your program itself.
I will have a look at your file as soon as I get my coffee break :)
Not the answer you are looking for? Search for more explanations.
You've decided to implement this algorithm recursively. That's fine, but if it takes more recursive calls to reach a number divisible by all numbers from 1 to 10 than there is allowed stack space on the JVM, you'll get a StackOverflow error.
If your prints show that you pass a number divisible by all numbers from 1-10 and don't stop, then you logic for checking that is wrong. If, however, that doesn't happen, then you'll have to implement the algorithm iteratively (= with a loop) instead of recursively in order to reach the answer.
Find the primes that go into each of the numbers 1-20 and then look for overlap. Remove the overlap and multiply the remaining numbers out to get the final number.