Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

JavaScript to figure percentage

Posted on 2014-11-06
6
96 Views
Last Modified: 2014-11-29
I have 4 Labels.
Label1 will always have a value of 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, or 10 though this value will ultimately represent a percent.

Label2 will always have a whole number value (0-infinity).

Label3 is also always going to be a whole number, and should be a result of the value of label2 times the value of .1, .02, .03, .04, .05, .06, .07, .08, or .09 (and always rounded up when needed. Basically I'm trying to figure out a percentage.

Label4 is just the value of Label3 + the value of Label2

For example:
Label1 = 4
Label2 = 60
Label3 should equal "3" (60 * .04 = 2.4...rounded up is 3)
Label4 should be 63 (Label2 is 60 + Label3 which is 3 = 63)


Any mathletes out there wanna give it a shot?
TIA
0
Comment
Question by:Mike Miller
  • 3
  • 2
6 Comments
 
LVL 83

Expert Comment

by:Dave Baldwin
ID: 40427799
The percentage of 'x' in 'y' is "(x/y)*100".  I don't see where your data is going to get that for you.
0
 
LVL 35

Accepted Solution

by:
Kimputer earned 500 total points
ID: 40428105
Independently:
Your answer is for Label3 = Math.ceil((Label1/100)*Label2)
Your answer is for Label4 = Math.ceil((1+(Label1/100))*Label2)

Dependently:
Your answer is for Label3 = Math.ceil((Label1/100)*Label2)
Your answer is for Label4 = Label2 + Label3
0
 

Author Comment

by:Mike Miller
ID: 40428322
Dave, technically the percent is given (Label1) so I suppose the title was slightly misrepresented. In my example Label3 is "3" because the given paramater (Label1) is "4" and the other given paramenter (Label2) is 60. 60 * 4% is 2.40. Since we're rounding up no matter what, the answer (Label3) is "3".

And Label4 is just Label2 + Label3

Sorry for the confusion, that makes sense.
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:Mike Miller
ID: 40453822
Here's what I'm currently doing on the server side if it helps to make sense.

        If lblPercentOveralge.Text <> "0%" Then
            If lblFinalOrderQuantity.Text <> "0" Then
                Dim strPO As String = ".0" & lblPercentOveralge.Text.Replace("%", "")
                If lblPercentOveralge.Text = "10%" Then
                    strPO = ".1"
                End If
                Dim intPO As Decimal = Convert.ToDecimal(strPO)
                Dim intAQ As Integer = Convert.ToInt32(lblFinalOrderQuantity.Text)
                Dim intOQ As Double = Math.Ceiling(intAQ * intPO)
                lblOverageQty.Text = "(+" & intOQ.ToString & ")"
            Else
                lblOverageQty.Text = "(+0)"
            End If
        Else
            lblOverageQty.Text = "(+0)"
        End If
        lblActualProductionQuantity.Text = Convert.ToInt32(lblFinalOrderQuantity.Text) + Convert.ToInt32(lblOverageQty.Text.Replace("(+", "").Replace(")", ""))

Open in new window


I'm trying to replicate this process on the client side.
0
 
LVL 35

Expert Comment

by:Kimputer
ID: 40454861
But I already gave you the code? You never tried it?
0
 

Author Comment

by:Mike Miller
ID: 40455020
My apologies. I wasn't aware you could do

Label3 = Math.ceil((Label1/100)*Label2)

Open in new window


in JavaScript. I'll try it today.
0

Featured Post

The New “Normal” in Modern Enterprise Operations

DevOps for the modern enterprise offers many benefits — increased agility, productivity, and more, but digital transformation isn’t easy, especially if you’re not addressing the right issues. Register for the webinar to dive into the “new normal” for enterprise modern ops.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Binding a Grid in Javascript 5 42
removing a class in javascript 4 48
asp.net open new page without popup blocker 8 18
How to filter by key press ? 6 19
Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
Finding original email is quite difficult due to their duplicates. From this article, you will come to know why multiple duplicates of same emails appear and how to delete duplicate emails from Outlook securely and instantly while vital emails remai…
In this tutorial viewers will learn how to position overlapping items using z-index in CSS. They will also learn the restrictions on the z-index property.  Create a new HTML document with an internal stylesheet.: Create a div in CSS and name it Red.…
The viewer will learn the benefit of using external CSS files and the relationship between class and ID selectors. Create your external css file by saving it as style.css then set up your style tags: (CODE) Reference the nav tag and set your prop…

856 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question