Advertisement
BrokkoliMan

inf ob5

Apr 10th, 2014
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.02 KB | None | 0 0
  1. import java.io.*;
  2. import java.awt.*;
  3. import java.awt.event.*;
  4. import javax.swing.*;
  5.  
  6. //Tror det er en god ide å bruke GridLayout
  7. class SudokuBeholder{
  8.     private int antallLøsninger;
  9.     /**
  10.      * inneholder metodene:
  11.      *  settInn/insert
  12.      *  taUt/get
  13.      *  hentAntallLosninger/getSolutionCount
  14.      *  Lage en beholderklasse selv
  15.      */
  16.     //Løsninger skal legges inn i dette objekter av denne klassen
  17.     public void settInn(String s){
  18.         String[] s1 = s.split("\n");
  19.         int boksHøyde = Integer.parseInt(s1[0].replaceAll("//s", ""));
  20.         int boksBredde = Integer.parseInt(s1[1].replaceAll("//s", ""));
  21.         int brettHøyde = s1.length-2;
  22.        
  23.         int bokserRad = brettHøyde/boksBredde;
  24.         int bokserKolonne = brettHøyde/boksHøyde;
  25.         int antallBokser = bokserRad*bokserKolonne;
  26.        
  27.        
  28.         Brett brett1 = new Brett(brettHøyde,bokserRad, bokserKolonne);
  29.         //BoksHolder b1 = new BoksHolder(bokserRad, bokserKolonne);
  30.         Boks boks1 = new Boks(boksHøyde,boksBredde);
  31.        
  32.         int counter = 0;
  33.         for(String s2: s1){
  34.             counter++;
  35.             if(counter > 2){
  36.                 //Første gang den kommer inn hit er counter 3
  37.                 //int antallBokserRad = s2.split(" ").length/boksBredde;
  38.                 for(String s3: s2.split(" ")){
  39.                     System.out.println(s3);
  40.                 }
  41.             }
  42.         }
  43.        
  44.        
  45.     }
  46.     public void taUt(){}
  47.     public int hentAntallLøsninger(){return antallLøsninger;}
  48. }
  49.  
  50. class Rute{
  51.     public Rute neste;
  52.     private int nummer;
  53.     //Skal ha to subklasser, en for ruter som har en forhåndsutfylling og en for ruter der hvor du skal finne en verdi
  54.     //skal kalle metoder som skjekker om den kan ha en bestemt verdi i rutens kolonne-objekt, rad-objekt og boks-objekt.
  55.     //Skal ikke ha noen datastruktur utover sin egen verdi
  56.     //skal ha metode fyllUtRestenAvBrettet
  57.     //Denne metoden skjekker alle mulige tall for å se om de passer, når den finner ett tall kaller den metoden i neste rute. Dette gjøres vanrett og begynner som regel øverst til venstre
  58.     class Utfylt{
  59.    
  60.     }
  61.     class Tomme{
  62.         //Lurer på om gruppelæreren sa at disse burde være klasser, og utenfor tomme og ufylt, men jeg føler foreløpig at det logisk å  ha dem her.
  63.         public boolean skjekkKolonne(){
  64.             return false;
  65.         }
  66.         public boolean skjekkRad(){
  67.             return false;
  68.         }
  69.         public boolean skjekkBoks(){
  70.             return false;
  71.         }
  72.     }
  73.     public void fyttUtRestenAvBrettet(){}
  74. }
  75. class Brett{
  76.     //Skal inneholde en todimensjonal tabell med pekere til alle rutene
  77.     Rute[][] brett;
  78.     int counter = 0;
  79.     int bokserRad;
  80.     int bokserKolonne;
  81.     Boks[] bokser;
  82.     Brett(int h,int r, int k){
  83.         brett = new Rute[h][h];
  84.         bokserRad = r;
  85.         bokserKolonne = k;
  86.         bokser = new Boks[r*k];
  87.     }
  88.     public void settInnBoks(Boks b){bokser[counter++] = b;}
  89.    
  90.     public Rute[][] hentBrett(){return brett;}
  91. }
  92.  
  93. //Skal ha et objekt av disse (tre) for hver rad, kolonne og boks på brettet.
  94. //De skal ha felles superklasse. Subklassene skal gjenbruke mest mulig av superklassens kode.
  95. class Boks{
  96.     //
  97.     Rute[][] boks;
  98.     Boks(int r, int c){
  99.         boks = new Rute[r][c];
  100.     }
  101.     public Rute[][] hentBoks(){return boks;}
  102. }
  103. class Kolonne{
  104.     //
  105. }
  106. class Rad{
  107.     //
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement