Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.47 KB | None | 0 0
  1. package collatz;
  2.     import java.util.Scanner;
  3. public class collatzprob {
  4.  
  5.     public static void main(String[] args) {
  6.         Scanner scan = new Scanner(System.in);
  7.         int schleife = 1;
  8.         while(schleife == 1) {
  9.             System.out.println(
  10.                     "---------------------------------\n"+
  11.                             "(1) Collatz-Folge für n          \n"+
  12.                             "(2) Länge der Collatz-Folge für n\n"+
  13.                             "(3) Fertig                       \n"+
  14.                     "---------------------------------");
  15.             int auswahl = scan.nextInt();
  16.             switch(auswahl) {
  17.             case 1:
  18.                 System.out.println("Bitte eine ganze Zahl eingeben: ");
  19.                 int number = scan.nextInt();
  20.                 String ergebnis = berechneCollatz(number);
  21.                 System.out.println(ergebnis);
  22.                 break;
  23.             case 2:
  24.                 break;
  25.             case 3:
  26.                 System.out.println("Programm wird geschlossen...");
  27.                 schleife = 2;
  28.                 scan.close();
  29.                 break;
  30.             default:
  31.                 System.out.println("Ungültige Eingabe, bitte wiederholen sie die Eingabe");
  32.                 break;
  33.             }
  34.         }
  35.     }
  36.     public static String berechneCollatz(int number) {
  37.         String speicher = number+"-->";
  38.         while(number>=1) {
  39.             if(number%2 == 0) {
  40.                 if(number/2 >1) {
  41.                     speicher = speicher+number/2+"-->";
  42.                     number = number/2;
  43.                 }else {
  44.                     speicher = speicher+number/2;
  45.                     number = number/2;
  46.                 }
  47.             }else if(number%3 == 0) {
  48.                 speicher = speicher+number/3+"-->";
  49.                 number = number/3;
  50.             }else {
  51.                 speicher = speicher+number*3+1+"-->";
  52.                 number = number*3+1;
  53.             }
  54.         }
  55.         return speicher;
  56.     }
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement