Guest User

Untitled

a guest
May 16th, 2018
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.67 KB | None | 0 0
  1. package cisla;
  2.  
  3. import java.util.Scanner;
  4.  
  5. public class Cisla {
  6.  
  7. public static Scanner sc = new Scanner(System.in);
  8.  
  9. public static String pisTriCislice(int tricisla, int rang) {
  10. String vychod = "";
  11. String[] jednicky = {"", "jedna ", "dve ", "tri ", "ctyri ", "pet ", "sest ", "sedm ", "osm ", "devet ", "deset ", "jedenact ", "dvanact ", "trinact ", "ctyrnact ", "patnact ", "sestnact ", "sedmnact ", "osmnact ", "devatenact "};
  12. String[] jednicky2 = {"", "jeden ", "dva ", "tri ", "ctyri ", "pet ", "sest ", "sedm ", "osm ", "devet ", "deset ", "jedenact ", "dvanact ", "trinact ", "ctyrnact ", "patnact ", "sestnact ", "sedmnact ", "osmnact ", "devatenact "};
  13. String[] desitky = {"", "", "dvacet ", "tricet ", "ctyricet ", "padesat ", "sedesat ", "sedmdesat ", "osmdesat ", "devadesat "};
  14. String[] stovky = {"", "sto ", "dve ste ", "tri sta ", "ctyri sta ", "pet set ", "sest set ", "sedm set ", "osm set ", "devet set "};
  15. String[][] neco = {{"", "", ""},
  16. {"tisic ", "tisice ", "tisic "},
  17. {"milion ", "miliony ", "milionu "},
  18. {"miliarda ", "miliardy ", "miliard "},
  19. {"trilion ", "triliony ", "trilionu "},
  20. {"kvadrilion ", "kvadriliony ", "kvadrilionu "},
  21. {"kvintilion ", "kvintiliony ", "kvintilionu "}};
  22.  
  23. vychod = stovky[tricisla / 100];
  24. tricisla = tricisla % 100;
  25.  
  26. if (tricisla > 0 && tricisla <= 19) {
  27. if (tricisla >= 5 && tricisla <= 19) {
  28. vychod = vychod + jednicky[tricisla] + neco[rang][2];
  29. }
  30. if (tricisla >= 3 && tricisla <= 4) {
  31. vychod = vychod + jednicky[tricisla] + neco[rang][1];
  32. }
  33. if (tricisla == 2) {
  34. if (rang == 0 || rang == 3) {
  35. vychod = vychod + jednicky[tricisla] + neco[rang][1];
  36. } else {
  37. vychod = vychod + jednicky2[tricisla] + neco[rang][1];
  38. }
  39. }
  40. if (tricisla == 1) {
  41. if (rang == 0 || rang == 3) {
  42. vychod = vychod + jednicky[tricisla] + neco[rang][0];
  43. } else {
  44. vychod = vychod + jednicky2[tricisla] + neco[rang][0];
  45. }
  46. }
  47. } else {
  48. if (rang == 0 || rang == 3) { //женский род
  49. vychod = vychod +desitky[tricisla / 10] + jednicky[tricisla % 10] + neco[rang][2];
  50. if(tricisla%10>=2 && tricisla%10<=4){ //исправление для 22 милиарда
  51. vychod = desitky[tricisla / 10] + jednicky[tricisla % 10] + neco[rang][1];
  52. }
  53. }
  54. else {
  55. vychod = vychod + desitky[tricisla / 10] + jednicky2[tricisla % 10] + neco[rang][2];
  56. }
  57. }
  58.  
  59. return vychod;
  60. }
  61.  
  62. public static void main(String[] args) {
  63. System.out.println("Vvedite cislo");
  64. String rad = "";
  65. long cislo = sc.nextLong();
  66. if(cislo<0) {
  67. cislo=Math.abs(cislo);
  68. System.out.print("minus ");
  69. }
  70. if(cislo==0)
  71. System.out.print("nula");
  72. //if(cislo==null) {
  73. // throw new IllegalArgumentException("chyba");
  74. // }
  75. int rang = 0;
  76. long cisloL = 0;
  77. do {
  78. cisloL = cislo % 1000;
  79. if (cisloL != 0) {
  80. rad = pisTriCislice((int) (cisloL), rang) + rad;
  81. }
  82. cislo = cislo / 1000;
  83. rang++;
  84. } while (cislo != 0);
  85.  
  86. System.out.println(rad);
  87. }
  88. }
Add Comment
Please, Sign In to add comment