aboutsummaryrefslogtreecommitdiff
path: root/analyzer/utils/roman.c
blob: 9ea2bbbb800cfa7a0f2144c52f004b33d336ba4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "utils/roman.h"

#include <stddef.h>
#include <string.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]);
        }
        number %= nums[i];
    }
}