Гид по технологиям

Как вывести таблицу умножения числа (Python, C++, JavaScript, C)

• 4 min read • Программирование • Обновлено 21 Nov 2025
Таблица умножения в коде — Python, C++, JS, C
Таблица умножения в коде — Python, C++, JS, C

Мальчик играет с таблицей умножения

Краткая цель

Показать простые и переносимые способы вывести таблицу умножения числа: сначала до 10, затем — до произвольного диапазона. Примеры охватывают распространённые языки и содержат вывод, тесты и рекомендации.

Важное

Важно проверять граничные значения (0, отрицательные числа, очень большие range) и выбирать формат вывода в зависимости от цели — консольный вывод, строка для UI или сохранение в файл.

Отображение таблицы умножения до 10

Условие

Вам дано целое число num. Нужно вывести таблицу умножения для num от 1 до 10 включительно.

Пример: num = 5

Ожидаемый вывод:

5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50

Подход (коротко)

  1. Запустить цикл от 1 до 10.
  2. На каждой итерации вычислять произведение num * i.
  3. Выводить форматированную строку “num * i = результат”.

C++: вывод до 10

// C++ program to print the multiplication table of a number up to 10
#include 
using namespace std;

// Function to print the multiplication table of a number up to 10
void printTable(int num)
{
    for (int i = 1; i <= 10; ++i)
    {
        cout << num << " * " << i << " = " << num * i << endl;
    }
}

// Driver Code
int main()
{
    int num = 5;
    cout << "Number: " << num << endl;
    cout << "Multiplication table of " << num << endl;
    printTable(num);

    return 0;
}

Вывод программы C++:

Number: 5
Multiplication table of 5
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50

Python: вывод до 10

# Python program to print the multiplication table of a number up to 10

# Function to print the multiplication table of a number up to 10
def printTable(num):
    for i in range(1, 11):
        print(num, "*", i, "=", num*i)

# Driver Code
num = 5
print("Number:", num)
print("Multiplication table of", num)
printTable(num)

Вывод программы Python:

Number: 5
Multiplication table of 5
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50

JavaScript: вывод до 10

// JavaScript program to print the multiplication table of a number up to 10

// Function to print the multiplication table of a number up to 10
function printTable(num) {
    for (let i = 1; i <= 10; ++i) {
        console.log(num + " * " + i + " = " + num * i);
    }
}

// Driver Code
var num = 5;
console.log("Number: " + num);
console.log("Multiplication table of " + num);
printTable(num);

Пример вывода в консоли:

Number: 5
Multiplication table of 5
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50

C: вывод до 10

// C program to print the multiplication table of a number up to 10
#include 

// Function to print the multiplication table of a number up to 10
void printTable(int num)
{
    for (int i = 1; i <= 10; ++i)
    {
        printf("%d * %d = %d\n", num, i, num*i);
    }
}

// Driver Code
int main()
{
    int num = 5;
    printf("Number: %d\n", num);
    printf("Multiplication table of %d\n", num);
    printTable(num);

    return 0;
}

Вывод программы C:

Number: 5
Multiplication table of 5
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50

Таблица умножения до заданного диапазона

Условие

Дано число num и диапазон range (положительное целое). Нужно вывести таблицу умножения для num от 1 до range.

Пример: num = 5, range = 14

Ожидаемый вывод:

5 * 1 = 5
...
5 * 14 = 70

Подход

  1. Запустить цикл i от 1 до range.
  2. На каждой итерации вычислить num * i и вывести строку.
  3. Позволяет гибко менять длину результата.

C++: с параметром range

// C++ program to print the multiplication table of a number
#include 
using namespace std;

// Function to print the multiplication table of a number
void printTable(int num, int range)
{
    for (int i = 1; i <= range; ++i)
    {
        cout << num << " * " << i << " = " << num * i << endl;
    }
}

// Driver Code
int main()
{
    int num = 5;
    int range = 14;
    cout << "Number: " << num << endl;
    cout << "Range: " << range << endl;
    cout << "Multiplication table of " << num << endl;
    printTable(num, range);

    return 0;
}

Вывод C++:

Number: 5
Range: 14
Multiplication table of 5
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
5 * 6 = 30
5 * 7 = 35
5 * 8 = 40
5 * 9 = 45
5 * 10 = 50
5 * 11 = 55
5 * 12 = 60
5 * 13 = 65
5 * 14 = 70

Python: с параметром range

# Python program to print the multiplication table of a number

def printTable(num, r):
    for i in range(1, r+1):
        print(num, "*", i, "=", num*i)

# Driver Code
num = 5
r = 14
print("Number:", num)
print("Range:", r)
print("Multiplication table of", num)
printTable(num, r)

JavaScript: с параметром range

// JavaScript program to print the multiplication table of a number

function printTable(num, range) {
    for (let i = 1; i <= range; ++i) {
        console.log(num + " * " + i + " = " + num * i);
    }
}

// Driver Code
var num = 5;
var range = 14;
console.log("Number: " + num);
console.log("Range: " + range);
console.log("Multiplication table of " + num);
printTable(num, range);

C: с параметром range

// C program to print the multiplication table of a number
#include 

void printTable(int num, int range)
{
    for (int i = 1; i <= range; ++i)
    {
        printf("%d * %d = %d\n", num, i, num*i);
    }
}

int main()
{
    int num = 5;
    int range = 14;
    printf("Number: %d\n", num);
    printf("Range: %d\n", range);
    printf("Multiplication table of %d\n", num);
    printTable(num, range);

    return 0;
}

Альтернативные подходы и улучшения

  • Рекурсия: можно рекурсивно печатать строки, но для больших range это неэффективно и приводит к глубокому стэку.
  • Генерация строки целиком: собрать все строки в список/вектор и вывести единым вызовом. Полезно, если нужен один результирующий текст для UI или файла.
  • Форматирование таблицы: выравнивание столбцов с помощью форматирования (printf/format) улучшит читаемость при больших числах.
  • Параллелизм: для очень больших диапазонов можно распараллелить вычисления, но для простого вывода это излишне.

Типичные ошибки и когда решение не сработает

  • Неправильный тип входа: дробные числа или строки потребуют валидации и, возможно, округления.
  • Очень большой range: потребление памяти при сборе всех строк в список; вывод лучше стримить.
  • Неправильная локализация: в некоторых локалях разделитель тысяч или формат чисел может отличаться.

Проверки и тесты (Критерии приёмки)

  • Ввод: num = 0 -> строки от 0 1 = 0 до 0 range = 0.
  • Ввод: num отрицательное -> корректный знак в выводе (например, -5 * 3 = -15).
  • Ввод: range = 1 -> только одна строка.
  • Невалидный ввод (нечисло) -> программа должна либо обработать ошибку, либо сообщить о неверных данных.
  • Производительность: range = 1_000_000 — программа не должна падать по памяти при потоковом выводе.

Чек‑лист по ролям

  • Учитель: убедитесь, что примеры просты и пояснены; добавьте задания: вывести таблицу для нескольких чисел.
  • Студент: протестируйте как минимум три разных num и два range; проверьте нулевые и отрицательные значения.
  • Разработчик: добавьте модульную функцию, покрытие тестами и обработку невалидного ввода.

Краткий набор приёмов (Cheat sheet)

  • Python: list comprehension для строки — “\n”.join([f”{num} {i} = {numi}” for i in range(1, r+1)])
  • C/C++: использовать std::ostringstream (C++) или printf для контролируемого форматирования.
  • JS: для браузера — document.write или формировать DOM; для Node.js — console.log или записать в файл.

Глоссарий (1‑строчная)

  • Цикл: конструкция, повторяющая набор действий несколько раз.
  • Итерация: один проход цикла.
  • range: верхняя граница для количества итераций.

Ментальная модель

Таблица умножения в коде — это просто рекурсивно независимые пары (i, num * i). Представляйте её как поток строк, который можно печатать или собирать.

Пример выбора подхода (Mermaid)

flowchart TD
  A[Нужно вывести таблицу?] --> B{Для консоли или UI?}
  B -->|Консоль| C[Простой цикл и печать]
  B -->|UI или файл| D[Собрать строки в буфер и вернуть]
  D --> E{Range большой?}
  E -->|Да| F[Стримить в файл]
  E -->|Нет| G[Вернуть одну строку]

Итог

Вы научились печатать таблицу умножения числа до 10 и до произвольного диапазона на Python, C++, JavaScript и C. Проверяйте граничные случаи, выбирайте формат вывода по задаче и используйте сбор строк, если нужен единый текст для UI или файла.

Важно: придерживайтесь принципов простоты и читаемости кода (KISS, DRY), разбивайте функциональность на тестируемые функции и покрывайте критичные случаи тестами.

Спасибо за внимание — попробуйте реализовать вариант с пользовательским вводом и сохранением результата в файл как практическое упражнение.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро