Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <vector>
- #include <stdexcept>
- std::string Rimski(int n)
- {
- if(n < 1 || n > 3999) throw std::domain_error("Broj nije u zadanom opsegu!");
- std::vector<std::string> RimskiBrojevi {"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
- std::vector<int> Arapski {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1};
- std::string RimskiRezultat;
- int MojBroj(n);
- for(unsigned int i(0); i < Arapski.size(); i++)
- {
- while(MojBroj >= Arapski[i])
- {
- MojBroj-=Arapski[i];
- RimskiRezultat+=RimskiBrojevi[i];
- }
- }
- return RimskiRezultat;
- }
- int main()
- {
- try
- {
- int n;
- std::cout << "Unesite broj koji zelite pretvoriti u rimski: ";
- std::cin >> n;
- std::cout << "Uneseni broj u rimskom zapisu: " << Rimski(n);
- }
- catch(std::domain_error izuzetak)
- {
- std::cout << izuzetak.what() << std::endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement