Advertisement
Guest User

Untitled

a guest
Nov 16th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.30 KB | None | 0 0
  1. /*
  2.     Aufgabe 2) Neugestaltung von Spaghetti-Code durch Methoden
  3. */
  4. public class Aufgabe2 {
  5.    
  6.     public static void main(String[] args) {
  7.        
  8.         String text1 = "Have a great day!";
  9.         String text2 = "This is a Teststring";
  10.         int num1 = 35061;
  11.         int num2 = 1010;
  12.         String separators = "#.+";
  13.         spacing(text1, '-');
  14.         spacing(num1, '*');
  15.         spacing(text2, '.');
  16.         spacing(text1, separators);
  17.         spacing(num2, '#');
  18.        
  19.         /*for (int i = 0; i < text1.length()-1; i++) {
  20.             System.out.print(text1.charAt(i));
  21.             System.out.print('-');
  22.         }
  23.         System.out.println(text1.charAt(text1.length()-1));
  24.         int decades = 1;
  25.         int digitCount = 0;
  26.         while(num1 > decades) {
  27.             decades = decades * 10;         //decades wird auf die selbe anzahl stellen gebracht wie num
  28.             digitCount++;                   //zählt wie viele Ziffern die Zahl hat
  29.         }
  30.         decades /= 10;  //eine stelle kleiner num
  31.         while(num1 > 0) {
  32.             System.out.print(num1 / decades);   //vorderste ziffer wird ausgegeben
  33.             num1 %= decades;                    //vorderste ziffer wird entfernt
  34.             digitCount--;                       //übrige ziffern -1
  35.             if (num1 > 0) {
  36.                 System.out.print('*');          //trennzeichen
  37.             }
  38.             else if(digitCount > 0){
  39.               System.out.println("*0");         //trennzeichen und 0 weil wenn die letzte ziffer 0 ist ist num1 nicht größer 0
  40.             }
  41.             decades/=10;                        //decades -1 stelle
  42.         }
  43.         System.out.println();
  44.         int len = text2.length()-1;
  45.         while (len > -1) {
  46.             System.out.print(text2.charAt(text2.length()-1-len));  //beginnt bei char at 0
  47.             if(len > 0) {               //kein Punkt nach dem letzten Zeichen
  48.                 System.out.print('.');
  49.             }
  50.             len--;                                                  //da es verkleinert wird wird ich nächsten durchlauf der nächste char ausgegeben
  51.         }
  52.         System.out.println();
  53.         //String separators = "#.+";
  54.         for (int i = 0; i < separators.length(); i++) {         //geht alle seperators durch
  55.             for (int j = 0; j < text1.length()-1; j++) {        //wie oben
  56.                 System.out.print(text1.charAt(j));
  57.                 System.out.print(separators.charAt(i));
  58.             }
  59.             System.out.println(text1.charAt(text1.length()-1));
  60.         }
  61.         int dec = 1;
  62.         int numDigits = 0;
  63.         while(num2 > dec) {
  64.             dec *= 10;
  65.             numDigits += 1;
  66.         }
  67.         dec = dec / 10;
  68.         while(num2 > 0) {
  69.             numDigits--;
  70.             System.out.print(num2 / dec);
  71.             num2 = num2 % dec;
  72.             if (num2 > 0) {
  73.                 System.out.print('#');
  74.             }
  75.             else if(numDigits > 0){
  76.               System.out.print('#');
  77.               System.out.println('0');
  78.             }
  79.             dec /= 10;
  80.         }
  81.         System.out.println();
  82.         */
  83.     }
  84.    
  85.     //TODO: Implementieren Sie hier Ihre Methoden
  86.     private static void spacing(String baseString, char space){
  87.         for (int i = 0; i < baseString.length()-1; i++) {
  88.             System.out.print(baseString.charAt(i));
  89.             System.out.print(space);
  90.         }
  91.         System.out.println(baseString.charAt(baseString.length()-1));
  92.     }
  93.     private static void spacing(String baseString, String spaces){
  94.         for (int i = 0; i < spaces.length(); i++) {
  95.             spacing(baseString, spaces.charAt(i));
  96.         }
  97.     }
  98.     private static void spacing(int base, char space){
  99.         int decades = 1;
  100.         int digitCount = 0;
  101.         while(base > decades) {
  102.             decades = decades * 10;
  103.             digitCount++;
  104.         }
  105.         decades /= 10;
  106.         while(base > 0) {
  107.             System.out.print(base / decades);
  108.             base %= decades;
  109.             digitCount--;
  110.             if (base > 0) {
  111.                 System.out.print(space);
  112.             }
  113.             else if(digitCount > 0){
  114.                 System.out.println(space + "0");
  115.             }
  116.             decades/=10;
  117.         }
  118.         System.out.println();
  119.     }
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement