Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Số Demlo (Bình phương của 11...1) trong C++


Số Demlo là các số đối xứng được tạo ra từ bình phương của số có dạng 11...1 (với điều kiện số chữ số nhỏ hơn 10).

Ý tưởng

Đầu tiên khai báo các biến chuỗi:

string demNum = "1111"; 
string square = "";

Vòng lặp đầu tiên duyệt qua độ dài chuỗi demNum, chuyển chỉ số i thành ký tự và nối vào square:

for(int i = 1; i <= demNum.length(); i++) {
    square += char(i + '0');
}

Vòng lặp thứ hai duyệt ngược từ độ dài chuỗi demNum, tiếp tục nối các ký số:

for (int i = demNum.length() - 1; i >= 1; i--)
    square += char(i + '0');

Ví dụ hoàn chỉnh

#include <iostream>
using namespace std;

int main() {
    string demNum = "1111";
    string square = "";
    for(int i = 1; i <= demNum.length(); i++) {
        square += char(i + '0');
    }
    for (int i = demNum.length() - 1; i >= 1; i--)
        square += char(i + '0');
    cout << square;
    return 0;
}

Kết quả

1234321