Submission

Status:

-----------------xxx

Subtask/Task Score:

0/100

Score: 0

User: Hxluk.ka

Problemset: Abacus

Language: c

Time: 0.002 second

Submitted On: 2025-10-07 21:18:31

#include <stdio.h>
#include <string.h>

int main() {
	int a;
	scanf("%d", &a);
	if (a < 0 || a > 9999999) return -1;

	int abacus[8][2];
	memset(abacus, 0, sizeof(abacus));
	for (int i = 0; a; i++, a/=10) {
		int digit = a%10;
		
		if (digit >= 5) {
			abacus[7-i][1] = 1;
			abacus[7-i][0] = digit-5;
		} else {
			abacus[7-i][0] = digit;
		}
	}

	printf("********\n");
	for (int i = 0; i < 8; i++) {
		if (abacus[i][1]) {
			printf(" ");
		} else {
			printf("*");
		}
	}
	printf("\n");
	for (int i = 0; i < 8; i++) {
		if (abacus[i][1]) {
			printf("*");
		} else {
			printf(" ");
		}
	}
	printf("\n--------\n");
	for (int i = 0; i < 8; i++) {
		if (abacus[i][0]) {
			printf("*");
		} else {
			printf(" ");
		}
	}
	printf("\n");
	for (int i = 0; i < 4; i++) {
		for (int j = 0; j < 8; j++) {
			if (abacus[j][0] == i+1) {
				printf(" ");
			} else {
				printf("*");
			}
		}
		printf("\n");
	}

	return 0;
}