Quantcast

Got Homework?

Connect with other students for help. It's a free community.

  • across
    MIT Grad Student
    Online now
  • laura*
    Helped 1,000 students
    Online now
  • Hero
    College Math Guru
    Online now

Here's the question you clicked on:

55 members online
  • 0 replying
  • 0 viewing

liliy

can someone explain to me what this code does: public class D { static double dp[][]=new double[51][51];static { dp[1][1]=1; for (int i=2;i<=50;i++) for(int j=1;j<=50;j++) dp[i][j]=dp[i-1][j-1]+dp[i-1][j]*j; } public static void main(String args[]){ System.out.println("enterhow many lines:s"); Scanner sc= new Scanner(System.in); while (sc.hasNext()) { int n=sc.nextInt(); if(n==0) break; double ans=0; for(int i=1;i<=n;i++) ans+=dp[n][i]; System.out.printf("%d %.0f\n",n,ans); } }}

  • one year ago
  • one year ago

  • This Question is Closed
  1. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    alrighty.... Where did you see this? Crazy haha, lets begin.

    • one year ago
  2. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    static double dp[][]=new double[51][51];static { dp[1][1]=1; for (int i=2;i<=50;i++) for(int j=1;j<=50;j++) dp[i][j]=dp[i-1][j-1]+dp[i-1][j]*j; } not too sure why static, but it's basically creating 2 dimensional array starting at 1 not 0 for some reason. Then it's basically storing dp[i][j]=dp[i-1][j-1]+dp[i-1][j]*j; so for the first one it goes dp[2][1] = dp[1][0] + dp[0][1] * 1;

    • one year ago
  3. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    now the main is asking for you to enter a number n. if(n==0) break; double ans=0; for(int i=1;i<=n;i++) ans+=dp[n][i]; System.out.printf("%d %.0f\n",n,ans); } n cannot be 0, it starts at 1, then it runs through and saying ans (which is 0 at first) is = to ans + dp[n][i] which at first would be lets say n = 5, then ans = ans + dp[5][1] + dp[5][2] etc. Then prints it out.

    • one year ago
  4. liliy
    Best Response
    You've already chosen the best response.
    Medals 0

    so if it starts at dp [1][1]. what is stored in the zero? (or does that not matter since we dont actually use it. in addition: if i put in 5. then it does dp[5[ 2] but what is [5][2]/ where did we initialze any values?

    • one year ago
  5. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    you can start anywhere, which is why n cannot = 0. dp[1][1]=1; is the initialization.

    • one year ago
  6. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    however it shows a 0 atsome point in that loop, which it's most likely going to be 0, or null.

    • one year ago
  7. liliy
    Best Response
    You've already chosen the best response.
    Medals 0

    so when you put in a number, what does it do? what does the dp[][]actually do?

    • one year ago
  8. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    dp[i][j]=dp[i-1][j-1]+dp[i-1][j]*j;

    • one year ago
  9. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    dp[2][1] = dp[1][0] + dp[0][1] * 1;

    • one year ago
  10. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    dp[2][1] = 0 dp[1][1] = 1 * 1 = 1. then dp[2][2] = = dp[2][1] + dp[1][2] * 2 =.....

    • one year ago
  11. KonradZuse
    Best Response
    You've already chosen the best response.
    Medals 0

    it seems like it's printing out the line numbers.

    • one year ago
    • Attachments:

See more questions >>>

Your question is ready. Sign up for free to start getting answers.

spraguer (Moderator)
5 → View Detailed Profile

is replying to Can someone tell me what button the professor is hitting...

23

  • Teamwork 19 Teammate
  • Problem Solving 19 Hero
  • You have blocked this person.
  • ✔ You're a fan Checking fan status...

Thanks for being so helpful in mathematics. If you are getting quality help, make sure you spread the word about OpenStudy.

This is the testimonial you wrote.
You haven't written a testimonial for Owlfred.