aboutsummaryrefslogtreecommitdiff
path: root/analyzer/utils/roman.c
diff options
context:
space:
mode:
Diffstat (limited to 'analyzer/utils/roman.c')
-rw-r--r--analyzer/utils/roman.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/analyzer/utils/roman.c b/analyzer/utils/roman.c
index 9ea2bbb..4fbe5c0 100644
--- a/analyzer/utils/roman.c
+++ b/analyzer/utils/roman.c
@@ -1,16 +1,15 @@
#include "utils/roman.h"
-#include <stddef.h>
#include <string.h>
+#include "utils/memory.h"
+
void to_roman(char *buffer, int number) {
buffer[0] = '\0';
- int nums[ROMAN_CHAR_COUNT] = ROMAN_NUMS;
- char *chars[ROMAN_CHAR_COUNT] = ROMAN_CHARS;
- for (size_t i = 0; i < ROMAN_CHAR_COUNT; i++) {
- for (size_t j = 0; j < number / nums[i]; j++) {
- strcat(buffer, chars[i]);
+ for (size_t i = 0; i < ARR_LEN(roman_symbols); i++) {
+ for (size_t j = 0; j < number / roman_symbols[i].num; j++) {
+ strcat(buffer, roman_symbols[i].symbol);
}
- number %= nums[i];
+ number %= roman_symbols[i].num;
}
}