Solved

Converting 1000 to 1K

Posted on 2008-06-23
10
2,724 Views
Last Modified: 2013-12-16
Experts,

Any quick ideas how can i convert above 1000 values to number + K. 1000 to 1K or 10000 to 10K and so on ?
0
Comment
Question by:dotnetpro
[X]
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
10 Comments
 
LVL 18

Expert Comment

by:jcoehoorn
ID: 21846808
How would you want numbers like 1234 to look?  Do you need to convert 1000000 to 1M?  1000000000 to 1B?
0
 
LVL 6

Accepted Solution

by:
Bruce_1975 earned 65 total points
ID: 21846812
One possible solution:

Regards,
Bruce
public string ConvertNumber(int Number)
{
    if (Number >= 1000)
        return string.Concat(Number / 1000, "k");
    else
        return Number.ToString();
}

Open in new window

0
 
LVL 3

Expert Comment

by:darkmooink
ID: 21846819
i dont know how to do it in c# but here is the methodology
if n > 1000 then x=n/1000
result = x & "k"
0
Automating Terraform w Jenkins & AWS CodeCommit

How to configure Jenkins and CodeCommit to allow users to easily create and destroy infrastructure using Terraform code.

 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 21846896
what about with megas?
0
 
LVL 18

Assisted Solution

by:jcoehoorn
jcoehoorn earned 60 total points
ID: 21846973
This should scale a little farther:

string GetKNotation(long value)
{
    string[] suffix = {"", "K","M", "B", "T"}; // what's after T?
    int power = 3;
    while (Math.Pow(10, power) < value)
        power++;
    power--; //was one greater than what we needed
 
    return (value / (long)Math.Pow(10, power)).ToString() + suffix[power/3];
}

Open in new window

0
 
LVL 18

Expert Comment

by:jcoehoorn
ID: 21847019
Arg, got ahead of myself.  In trying to optimize the power variable to skip a few iterations I broke it for very small numbers (<100).  This is better:
string GetKNotation(long value)
{
    string[] suffix = {"", "K","M", "B", "T"}; // what's after T?
    int power = 1;
    while (Math.Pow(10, power) < value)
        power++;
    power--; //was one greater than what we needed
 
    return (value / (long)Math.Pow(10, power)).ToString() + suffix[power/3];
}

Open in new window

0
 
LVL 6

Expert Comment

by:Bruce_1975
ID: 21847061
What comes next... http://en.wikipedia.org/wiki/SI_prefix

Regards,
Bruce
0
 
LVL 6

Expert Comment

by:Bruce_1975
ID: 21847074
and if you can't get enough of big (and small) numbers: http://en.wikipedia.org/wiki/Non-SI_unit_prefix

Regards,
Bruce
0
 
LVL 18

Expert Comment

by:jcoehoorn
ID: 21847099
Hehe, yeah I can find that page.  But if I followed that guide I would have used a G for Billion (Giga)  instead of a B.  The next up is either P for Peta or Q for Quadrillion, so there's still some confusion.  Since I used a B for Billion I should probably choose a Q, but then what would you use for Quintillion?
0
 
LVL 6

Expert Comment

by:Bruce_1975
ID: 21847767
Hi jcoehoorn,
there was a little mistake in your code. I fixed it and added the missing extensions.

Regards,
Bruce
string GetKNotation(long value)
{
    string[] suffix = {"", "k","M", "G", "T" , "P", "E", "Z", "Y"}; // what's after Y?
    int power = 0;
    while (Math.Pow(10, power) < value)
        power += 3;
    power -= 3; //was one greater than what we needed
 
    return (value / (long)Math.Pow(10, power)).ToString() + suffix[power/3];
}

Open in new window

0

Featured Post

What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

Question has a verified solution.

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

For those of you who don't follow the news, or just happen to live under rocks, Microsoft Research released a beta SDK (http://www.microsoft.com/en-us/download/details.aspx?id=27876) for the Xbox 360 Kinect. If you don't know what a Kinect is (http:…
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
There are cases when e.g. an IT administrator wants to have full access and view into selected mailboxes on Exchange server, directly from his own email account in Outlook or Outlook Web Access. This proves useful when for example administrator want…
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…

623 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