We help IT Professionals succeed at work.

algorithm

MuhammadAdil
MuhammadAdil asked
on
Medium Priority
270 Views
Last Modified: 2010-04-16
Hello EE

i need algorithm regarding tablelayout or (Matrix algorithm) when i insert input value i required following outputs columns and rows.

input                                  Output Rows                                    Output Columns
1                                         1                                         1
2                                         1                                         2
3                                         2                                         2
4                                         2                                         2                                        
5                                         2                                         3
6                                         2                                         3
7                                         3                                         3
8                                         3                                         3
9                                         3                                         3
10                                       3                                         4
12                                       3                                         4
13                                       4                                         4
14                                       4                                         4
15                                       4                                         4
16                                       4                                         4
17                                       4                                         5
18                                       4                                         5
19                                       4                                         5
20                                       4                                         5
21                                       5                                         5
22                                       5                                         5
23                                       5                                         5
24                                       5                                         5
25                                       5                                         5

Comment
Watch Question

Commented:
       static void CountLayout(int items, out int rows, out int columns)
        {
            rows = 1;
            columns = 1;

            while ( true )
            {
                if ( rows * columns >= items )
                {
                    return;
                }

                if ( columns > rows )
                {
                    rows++;
                }
                else
                {
                    columns++;
                }
            }
        }
Commented:
class Program
    {
        static void Main(string[] args)
        {
            int floor;
            for (int i = 1; i < 26; i++)
            {
                floor = (int)Math.Sqrt(i);
                if (floor * floor >= i)
                    output(i,floor,floor);
                else if (floor * (floor + 1) >= i)
                    output(i, floor, floor+1);
                else
                    output(i, floor+1, floor+1);
            }
            Console.Read();
        }
        static void output(int input, int row, int column)
        {
            Console.Write(input);
            Console.Write("    ");
            Console.Write(row);
            Console.Write("    ");
            Console.WriteLine(column);
        }
    }

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.