2013-02-14 2 views
0

Я должен написать код, чтобы сделать таблицу умножения 10х10 и его дисплей должен выглядеть следующим образом:Таблица умножения Отображение Некорректно

enter image description here

Однако, я не могу понять, как правильно отображать мой код , Вот мой код ниже. Я знаю, что я рядом, я просто не уверен, что я делаю неправильно.

/* 
* This program displays a multiplication table of the product of every integer from 1 through 10 
* multiplied by every integer from 1 through 10. 
* 
*/ 


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace DisplayMultiplicationTable 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      int value = 10; 

      for (int x = 1; x <= value; ++x) 

       Console.Write("{0, 4}", x); 
      Console.WriteLine(); 
      Console.WriteLine("_________________________________________"); 

      for (int x = 1; x <= value; ++x) 

       Console.WriteLine("{0, 4}", x); 

      for (int row = 1; row <= value; ++row) 
      { 
       for (int column = 1; column <= value; ++column) 
       { 

        Console.Write("{0, 4}", row * column); 

       } 
       Console.WriteLine(); 

      } 
      Console.ReadLine(); 
     } 

    } 
} 
+1

Не могли бы вы описать, что это неправильно о дисплее, генерируемого кода выше? –

+0

его дисплей не так, как ожидалось! –

+0

Вторая петля печатает 1-10 на новых строках, затем печатает таблицу ниже. Просто нужно переупорядочить записи заголовков строк. – GalacticJello

ответ

1

Добавлено:

Console.Write("{0, 4}", row); 

после начала row для постановки

Фиксированный Код:

static void Main(string[] args) 
    { 
     int value = 10; 

     Console.Write(" "); 
     for (int x = 1; x <= value; ++x) 
      Console.Write("{0, 4}", x); 

     Console.WriteLine(); 
     Console.WriteLine("_____________________________________________"); 

     for (int row = 1; row <= value; ++row) 
     { 
      Console.Write("{0, 4}", row); 
      for (int column = 1; column <= value; ++column) 
      { 
       Console.Write("{0, 4}", row * column); 
      } 
      Console.WriteLine(); 
     } 
     Console.ReadLine(); 
    } 

Результат:

display

+0

Как и список значений выше строки, мне также нужно, чтобы 1-10 выполнялся сверху вниз как первый столбец. Как таблица умножения. – Kattermelon

+0

@ Kattermelon - исправлено! –

+0

@downvoter - помогите объяснить? –

1
int value = 10; 

    // Indent column headers 
    Console.Write("{0, 4}", null); 

    // Write column headers 
    for (int x = 1; x <= value; ++x) 
     Console.Write("{0, 4}", x); 

    // Write column header seperator 
    Console.WriteLine(); 
    Console.WriteLine("_____________________________________________"); 

    // Write the table 
    for (int row = 1; row <= value; ++row) 
    { 
     // Write the row header 
     Console.Write("{0, 4}", row); 

     for (int column = 1; column <= value; ++column) 
     { 
      // Write the row values 
      Console.Write("{0, 4}", row * column); 
     } 
     // Finish the line 
     Console.WriteLine(); 

    } 

enter image description here

Смежные вопросы