Làm kiểu em không ổn đâu để anh hướng dẫn thuật toán nhé. Lâu rồi anh không dùng đến C++ nhiều lắm nên bây giờ quên rồi. Nếu như em học tốt thuật toán dùng nó khá dễ dàng.
Vấn đề 1: Chuyển số thành là mã.
-Kiểm tra chuỗi nhập vào có phải là số không. Thứ hai chuyển chuỗi string thành dạng number.
hàm kiểm tra:
boolean isNumber=true;
for(int i=0; i<input.length();i++){
if(input[i]<48||input[i]>57){
isNumber=false;
}
}
Hàm chuyển string thành integer và kiểm tra xem nó có lớn hơn 3000 không? (chắc chắn là em làm được)
- Chuyển chuỗi String thành chữ số la mã.
String Lama[]=[“”, “I”, “II”, “III”, “IV”, “V”, “VI”, “VII”, “VIII”, “IX”, “X”, “XX”, “XXX”, “XL”, “L”, “LX”, “LXX”, “LXXX”,”XC”, “C”, “CC”, “CCC”, “CD”, “D”, “DC”, “DCC”, “DCCC”, “CM”, “M”, “MM”, “MMM”]
int number[0, 1, 2, 3, 4, 5, 6 , 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000, 2000, 3000 ]
String save=””;
int num=10;
While(input>0){
int s= input%num;
for(int i=0;i<number.count(); i++){
if(number[i]==s){
save=Lama[i]+save;
intput= input-s;
num=num*10;
}
}
}
xong cái 1
|