Love Calculator

Background

One day I asked Saima that how much she loves me. Her answer was "71.43 %". I was surprised as well as shocked by her answer. I could not understand why she didn’t tell 100% and why she told a particular and peculiar fraction like 71.43. Looking at my surprised, shocked and nervous face she burst out laughing and told that she loves me more than any thing in this universe and it was nothing but a silly and funny love calculation. Then she described me the calculation. In this problem you will have to write a program so that any one can calculate love between any two persons very quickly (of course a very silly game).   

 

Rules

You will be given two names. These two names can have white space or some other non-alphabetical characters like $ @ & % etc. But only the alphabets from a to z or A to Z will participate in love calculation. Each alphabet has a particular value. The values are from 1 to 26 in ascending order of the alphabets. Its like this, a = 1, b = 2, c = 3…….. z = 26. Both upper case and lower case holds the same values. Then make the sum of these numbers until it comes in one digit.[ For example, consider a name ‘bcz’. Here, b = 2, c = 3 & z = 26. So, the sum is (2+3+26) = 31 = (3+1) = 4.] Then the ratio of these two numbers in percentage will be the result.

 

Remember : Result can not be more than 100 % . Take the ratio carefully to avoid this problem.

 

Input

Your input will be two names. Each name holds not more than 25 characters. End of file will indicate the end of input.

 

Output

For each pair of names your program will have to calculate the love between those two persons and give the result as output. In result two digits to be displayed after the decimal point. All the results must be in new lines.

 

Sample input

saima

shanto

Pakistan

India

USA

USSR

Sample output

71.43 %

100.00 %

100.00 %

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace ConsoleApplication1

{

    class Program

    {

        static void Main(string[] args)

        {

            string name1 = "saima";

            string name2 = "shanto";

            float love1 = LoveCalculator(name1);

            float love2 = LoveCalculator(name2);

            Console.WriteLine(((Math.Min(love1, love2) * 100 / Math.Max(love1, love2))).ToString("N2") + " %");

        }

        public static int LoveCalculator(string name)

        {

            int love = 0;

            for (int i = 0; i < name.Length; i++)

            {

                love = love + GetValue(char.ToLower(name[i]));

            }

            while (love > 9)

            {

                int temp = 0;

                for (int i = 0; i < love.ToString().Length; i++)

                {

                    temp = temp + int.Parse(love.ToString()[i].ToString());

                }

                love = temp;

            }

            return love;

        }

        public static int GetValue(char ch)

        {

            string alphabets = "abcdefghijklmnopqrstuvwxyz";

            if (alphabets.Contains(ch))

            {

                return (alphabets.IndexOf(ch) + 1);

            }

            else

            {

                return 0;

            }

        }

    }

}

 

71.43 %
Press any key to continue . . .

Advertisements
This entry was posted in Information Technology. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s