Submission
Status:
--------------------
Subtask/Task Score:
0/100
Score: 0
User: Miter
Problemset: Abacus
Language: cpp
Time: 0.005 second
Submitted On: 2026-10-06 10:15:35
#include <iostream>
using namespace std;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);
int num;
int number[8] = {0};
if (cin >> num) {
// แยกตัวเลขใส่ array จากหลักหน่วย (index 7) ไปหลักสิบล้าน (index 0)
for (int i = 7; i >= 0; i--)
{
number[i] = num % 10;
num /= 10;
}
}
// วาดแสดงผลตามหลักแต่ละหลัก
// ส่วนบนมี 2 แถว
for (int row = 0; row < 2; row++) {
for (int i = 0; i < 8; i++) {
int top_m = number[i] / 5; // 1 ถ้า >= 5, 0 ถ้า < 5
if (row == 0) {
cout << (top_m == 1 ? ' ' : '*') << (i == 7 ? "" : " ");
} else {
cout << (top_m == 1 ? '*' : ' ') << (i == 7 ? "" : " ");
}
}
cout << "\n";
}
// แกนกลาง 17 ตัว ("-----------------")
cout << "-----------------\n";
// ส่วนล่างมี 5 แถว
for (int row = 0; row < 5; row++) {
for (int i = 0; i < 8; i++) {
int button_m = number[i] % 5; // จำนวนเม็ดที่ถูกดันขึ้นชิดแกนกลาง
// ช่องว่าง ' ' จะเกิดที่แถว index (4 - button_m)
if (row == 4 - button_m) {
cout << ' ' << (i == 7 ? "" : " ");
} else {
cout << '*' << (i == 7 ? "" : " ");
}
}
cout << "\n";
}
return 0;
}