Welcome to the Java Programming Forums


The professional, friendly Java community. 21,500 members and growing!


The Java Programming Forums are a community of Java programmers from all around the World. Our members have a wide range of skills and they all have one thing in common: A passion to learn and code Java. We invite beginner Java programmers right through to Java professionals to post here and share your knowledge. Become a part of the community, help others, expand your knowledge of Java and enjoy talking with like minded people. Registration is quick and best of all free. We look forward to meeting you.


>> REGISTER NOW TO START POSTING


Members have full access to the forums. Advertisements are removed for registered users.

Results 1 to 2 of 2

Thread: Rounding with printf

  1. #1
    Junior Member
    Join Date
    Sep 2013
    Posts
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default Rounding with printf

    import java.util.Scanner;
     
    public class BouncingBall
    {
      public static void main(String[] args)
      {
        Scanner keyboard = new Scanner(System.in);
        int bounce = 0, time = 0;
        double height = 0.0;
        double velocity = 0;
     
        System.out.println("Enter the initial velocity of the ball: ");
        velocity = keyboard.nextDouble();
     
        do
        {
          System.out.print("Time: % Height: 1.1f",
                                   time, height);
          time ++;
     
          height += velocity;
          velocity -= 32;
     
          if (height < 0)
          {
            height *= -0.5;
            velocity *= -0.5;
            bounce++;
     
            System.out.println("Bounce!");
          }
        } while (bounce < 5);
      }
    }

    I need all height values in this program to be rounded to the nearest 0.1. The part after printf is what I wrote down from what my professor said to do. However, the program is not running properly. The program does run properly when I do this instead:

    System.out.println("Time: " + time + " Height: " + height);
          time ++;

    However, the Height values don't get rounded to the nearest 0.1. How to I make it so the program rounds the height values to the nearest 0.1 using printf?


  2. #2
    Super Moderator
    Join Date
    Jun 2013
    Location
    So. Maryland, USA
    Posts
    5,775
    My Mood
    Mellow
    Thanks
    235
    Thanked 715 Times in 701 Posts

    Default Re: Rounding with printf

    I think your note taking wasn't so good. And you say there's a printf() statement in the code you posted, but I see a print(). Try playing with the following instead:

        do
        {
          System.out.printf("Time: %d Height: %1.1f\n",
                                   time, height);

Similar Threads

  1. Rounding with printf
    By Brandos12 in forum What's Wrong With My Code?
    Replies: 3
    Last Post: September 23rd, 2013, 07:22 PM
  2. Java printf
    By maple1100 in forum What's Wrong With My Code?
    Replies: 5
    Last Post: March 27th, 2013, 03:20 PM
  3. [SOLVED] printf error
    By Thor in forum What's Wrong With My Code?
    Replies: 3
    Last Post: October 10th, 2012, 10:05 PM
  4. How to align text? Printf?
    By shifat96 in forum What's Wrong With My Code?
    Replies: 1
    Last Post: February 20th, 2012, 11:51 AM
  5. about printf please help having errors
    By Macgrubber in forum What's Wrong With My Code?
    Replies: 2
    Last Post: November 15th, 2010, 10:01 PM