Pirámide de números

#include <iostream>
using namespace std;

int main() {
    int filas;

    // Solicitar al usuario el número de filas para la pirámide
    cout << "Ingrese el número de filas para la pirámide: ";
    cin >> filas;

    // Iterar a través de las filas
    for (int i = 1; i <= filas; ++i) {
        // Imprimir espacios en blanco
        for (int j = 1; j <= filas - i; ++j) {
            cout << " ";
        }
        // Imprimir números ascendentes
        for (int k = 1; k <= i; ++k) {
            cout << k << " ";
        }
        // Imprimir números descendentes
        for (int l = i - 1; l >= 1; --l) {
            cout << l << " ";
        }
        // Ir a la siguiente línea después de imprimir cada fila
        cout << endl;
    }

    return 0;
}

En el primer for, en vez de imprimir un solo espacio, imprima dos; esto porque en los otros for està imprimiendo dos letras (el numero y un espacio).

// Imprimir espacios en blanco
for (int j = 1; j <= filas - i; ++j) {
    cout << " ";
}