Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class NumbersInWords {
- private int numberToConvert;
- private int millions;
- private int thousands;
- private int lessThanThousand;
- private int hundreds;
- private int dozens;
- private int digits;
- String[] wordDigits = {"","jeden","dwa","trzy","cztery","pięć","sześć","siedem","osiem","dziewięć"};
- String[] wordTeens = {"dziesięć","jedenaście","dwanaście","trzynaście","czternaście","piętnaście","szesnaście","siedemnaście","osiemnaście","dziewiętnaście"};
- String[] wordDozens = {"","","dwadzieścia","trzydzieści","czterdzieści"};
- String[] wordHundreds = {"","sto","dwieście","trzysta","czterysta"};
- public String toWord(int number){
- numberToConvert = number;
- return convertMillions() + convertThousands() + convertLessThanThousand();
- }
- private void setMillions(){
- millions = numberToConvert / 1000000;
- }
- private void setThousands(){
- thousands = (numberToConvert % 1000000) / 1000;
- }
- private void setLessThanThousand(){
- lessThanThousand = (numberToConvert % 1000000) % 1000;
- }
- private String convertNumber(int num){
- hundreds = num / 100 ;
- dozens = (num % 100) / 10;
- digits = (num % 100) % 10;
- String wordNumber = "";
- if (hundreds >0) {
- if (hundreds < 5){
- wordNumber += wordHundreds[hundreds] + " ";
- }
- else {
- wordNumber += wordDigits[hundreds] +"set ";
- }
- }
- switch (dozens) {
- case 0:
- wordNumber += wordDigits[digits];
- break;
- case 1:
- wordNumber += wordTeens[digits];
- break;
- default:
- if (dozens < 5){
- wordNumber += wordDozens[dozens] + " " + wordDigits[digits];
- }
- else {
- wordNumber += wordDigits[dozens] + "dziesiąt " + wordDigits[digits];
- }
- }
- return wordNumber;
- }
- private String convertMillions(){
- String wordMillions = "";
- setMillions();
- if (millions > 0){
- wordMillions = convertNumber(millions);
- if (millions == 1){
- wordMillions += " milion ";
- }
- else if ((millions < 5) || ((dozens != 1) & (digits < 5)&(digits > 0))){
- wordMillions += " miliony ";
- }
- else wordMillions += " milionów ";
- }
- return wordMillions;
- }
- private String convertThousands(){
- String wordThousands = "";
- setThousands();
- if (thousands > 0){
- wordThousands = convertNumber(thousands);
- if (thousands == 1){
- wordThousands += " tysiąc ";
- }
- else if ((thousands < 5) || ((dozens != 1) & (digits < 5)&(digits > 0))){
- wordThousands += " tysiące ";
- }
- else wordThousands += " tysięcy ";
- }
- return wordThousands;
- }
- private String convertLessThanThousand(){
- String wordLessThanThousand = "";
- setLessThanThousand();
- if (lessThanThousand > 0){
- wordLessThanThousand = convertNumber(lessThanThousand);
- }
- return wordLessThanThousand;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement