dorbird

Hamster 2 Aufgabe 3

Oct 31st, 2013
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.79 KB | None | 0 0
  1. int feldBreite=0;
  2. int anzahlUmlaeufe=0;
  3. int vorhandenekoerner=0;
  4. int benoetigteKoerner=0;
  5. void main() {
  6.    vorhandenekoerner=testeVorhandeneKoerener();
  7.    feldBreite=testeFeldBreite();
  8.    geheMitte();
  9.    while (vorhandenekoerner< berechneBenoetigteKoerner()){
  10.         feldBreite=feldBreite-2;
  11.    }
  12.    anzahlUmlaeufe=(feldBreite-1/2);
  13.    legeRaute();
  14. }
  15.  
  16. void laufeBisZurWand() {
  17.     while (vornFrei()){
  18.          vor();
  19.     }
  20. }
  21. int testeVorhandeneKoerener(){
  22.     int zaehler=0;
  23.     while (!maulLeer()){
  24.          gib();
  25.          zaehler++;
  26.     }
  27.     while (kornDa()){
  28.          nimm();
  29.     }
  30.     return zaehler;
  31. }
  32. int testeFeldBreite(){
  33.     int zaehler=0;
  34.     laufeBisZurWand();
  35.     linksUm();
  36.     laufeBisZurWand();
  37.     linksUm();    
  38.     while (vornFrei()){
  39.          vor();
  40.          zaehler++;
  41.     }
  42.     linksUm();
  43.     return zaehler;
  44. }
  45. int berechneBenoetigteKoerner(){
  46.    int i=0;
  47.    int benoetigteKoerner=1;
  48.    for(i=0;i<=(feldBreite-1/2);i++){      
  49.       benoetigteKoerner=benoetigteKoerner+i*4;
  50.    }
  51.    return benoetigteKoerner;
  52. }
  53. void geheMitte(){
  54.     int i=0;
  55.     int j=0;
  56.     for (i=0;i<=((feldBreite-1)/2) ;i++){
  57.        vor();
  58.     }
  59.     linksUm();
  60.     for (j=0;j<=((feldBreite-1)/2) ;j++){
  61.        vor();
  62.     }
  63. }
  64. void rechtsUm(){
  65.     linksUm();
  66.     linksUm();
  67.     linksUm();
  68. }
  69. void geheDiagonal(){
  70.     vor();
  71.     linksUm();
  72.     vor();
  73.     rechtsUm();
  74.     gib();
  75. }
  76. void legeRaute(){
  77.     int i=0;
  78.     int j=0;
  79.     int k=0;
  80.     gib();    
  81.     for (i=1;i<=anzahlUmlaeufe;i++){
  82.        if(vornFrei()){
  83.           vor();
  84.           linksUm();
  85.           for(j=1;j<=4;j++){
  86.              for (k=1;k<=i;k++){
  87.                  geheDiagonal();
  88.              }
  89.              linksUm();
  90.           }
  91.           rechtsUm();  
  92.         }      
  93.     }
  94. }
Advertisement
Add Comment
Please, Sign In to add comment