Problem of the Day
A new programming or logic puzzle every Mon-Fri

Multiplication Table

Today's problem is going to bring us back the old school. Create a function that takes in an integer N, and outputs a multiplication table for N. Here's an example with N = 12.

   1   2   3   4   5   6   7   8   9  10  11  12
2 4 6 8 10 12 14 16 18 20 22 24
3 6 9 12 15 18 21 24 27 30 33 36
4 8 12 16 20 24 28 32 36 40 44 48
5 10 15 20 25 30 35 40 45 50 55 60
6 12 18 24 30 36 42 48 54 60 66 72
7 14 21 28 35 42 49 56 63 70 77 84
8 16 24 32 40 48 56 64 72 80 88 96
9 18 27 36 45 54 63 72 81 90 99 108
10 20 30 40 50 60 70 80 90 100 110 120
11 22 33 44 55 66 77 88 99 110 121 132
12 24 36 48 60 72 84 96 108 120 132 144

For bonus points make sure numbers are right aligned in their columns.

Permalink: http://problemotd.com/problem/multiplication-table/

Comments:

  • MintJoint - 8 years, 11 months ago

    Quick C#. This implementation aligns numbers from left rather than right but it still works.

                int num = 2;
                num = Convert.ToInt32(Console.ReadLine()); // User Input Interger N
    
                for (int i = 1; i <= num; i++)
                {
                    for (int j = 1; j <= num; j++)
                    {
                        if (j*i > 0 && j*i < 10) // One digit ints
                            Console.Write(j * i + "   ");
    
                        else if (j*i > 9 && j*i < 100) // Two digit ints
                            Console.Write(j * i + "  ");
    
                        else if (j*i > 99)  // Three digit ints
                            Console.Write(j * i + " ");
                    }
                    Console.Write('\n');
                }
    

    reply permalink

  • Anonymous - 8 years, 11 months ago

    a = int(raw_input("Enter a number> "))
    
    row = 1
    
    rows = []
    for i in range(a):
        rows.append(i+1)
    
    count = 1
    while count <= a:
    
        timestable = [x * count for x in rows] 
        for p in timestable:
            print "%3s" % p +"\t",
        print "\n"
        count = count + 1
    

    reply permalink

Content curated by @MaxBurstein