clear; 
clc;

zeichen = { 'A', 'M', 'D', 'C', 'L', 'X', 'V', 'I'}; 
zahlen = { 5000, 1000, 500, 100, 50, 10, 5, 1 };
ausnahmen49 = { 4000, 900, 400, 90, 40, 9, 4 };
zeichen49 = { 'MA', 'CM', 'CD', 'XC', 'XL', 'IX', 'IV'};

dez=(input('Geben sie eine Zahl zwischen 0 und 1000 ein: '         )); 
roem=[]; 
i=1;
j=1;

while dez>0 
    
    if dez/zahlen{i} >= 1  
        roem=[roem zeichen{i}]; 
        dez=dez-zahlen{i};
        continue;
    else
        i=i+1; 
    end

    if j<8
        if (floor(dez/zahlen{ceil(i/2)*2})*zahlen{ceil(i/2)*2} == ausnahmen49{j})
            roem=[roem zeichen49{j}];
            dez=dez-ausnahmen49{j};
        end
        j=j+1;
    end
end

disp('Römische Ziffer:');
disp(roem);