Reply - Raw
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package lab.pkg7.oppg.pkg2;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

/**
 *
 * @author henrik
 */
public class Lab7Oppg2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        boolean program_ferdig = false;
        int c = 0;
        input in = new input();
        søk ref = new søk();
          
        bok[] bøker = new bok[99];
        
        Scanner read = new Scanner(System.in);

        System.out.println("Dette programmet skal skal holde oversikt over bøkene i en bokhandel.");
        System.out.println("Trykk R for å registrere en ny bok.");
        System.out.println("Trykk S for å selge en bok.");
        System.out.println("Trykk I for å få informasjon om bøkene i bokhandelen");
        System.out.println("Trykk N for å legge til flere av en eksisterende bok.");
        System.out.println("Trykk Q for å avslutte programmet.");
        
        
        while (program_ferdig == false) {

            char bokstav = read.next().toLowerCase().charAt(0);

            switch (bokstav) {

                case 'r':

                  bøker[c] = new bok();

                    System.out.println("Registrering av ny bok:");
                    System.out.println("Skriv inn bokens tittel");
                    String tittel = in.inputString();
                    bøker[c].settittel(tittel);
                    
                    System.out.println("Skriv inn antall eksemplarer");
                    int eksemplar = in.inputInt();
                    bøker[c].settaleksemplar(eksemplar);
                    
                    System.out.println("Skriv inn prisen på boken");
                    double pris = in.inputDouble();
                    bøker[c].setutsalspris(pris);
                    
                    System.out.println("Skriv inn forfatteren til boken");
                    String forfatter = in.inputString();
                    bøker[c].setforfattar(forfatter);
                    
                    c++;
                    break;

                case 's':
                    
                    System.out.println("Hvilken bok ønsker du å selge?");
                    System.out.println("Skriv navn for å søke etter navn, eller nummer for å søke etter bok nummer.");
                    
                    
                   
                    
               
                    
                    
                    bøker[0].registrersal();
                   
                    break;

                case 'i':
                    
                    break;

                case 'n':
                    
                    break;

                case 'q':
                    
                    program_ferdig = true;
                    break;
                    
                default:
                    
                    System.out.println("Ugyldig input, prøv på nytt");
                    
                    break;

            }
        }
        
        
    }

}

class bok {

    static int nummer;
    private String tittel;
    private int eksemplar;
    private double pris;
    private String forfatter;


    public void settittel(String t) {
        tittel = t;
        System.out.println("Tittelen på boken er: " + tittel);
    }

    public void settaleksemplar(int n) {
        
        if (n >= 0 )
        {
            eksemplar = eksemplar + n;
            
            System.out.println("Det er " + eksemplar + " eksemplar av boken " + tittel + " i systemet.");
        }
        else
        {
            System.out.println("Det må legges til en positiv menge bøker");
        }
        
      
    }

    public void setutsalspris(double p) {
        pris = p;
        System.out.println("Prisen på " + tittel + "er nå satt til " + pris + "kr.");
    }

    public void setforfattar(String f) {
        forfatter = f;
        System.out.println("Forfatteren av boken heter" + forfatter);
    }

    public String gettittel() {

        return tittel;
    }

    public int gettaleksemplar() {

        return eksemplar;
    }

    public double getutsalspris() {

        return pris;
    }

    public String getforfattar() {

        return forfatter;
    }

    public void registrersal() {
        
        if (eksemplar > 0) {
            
            eksemplar--;
            
            System.out.println("Du har solgt et eksemplar av " + tittel + " til " + pris + "kr");
        }
        else
        {
            System.out.println("Bokhandelen er desverre tom for " + tittel + ", og kan da ikkje selges.");
        }
    }
    

}


class input {
    
    String inputString () {
        
        boolean korrektInput = false;
        String inputString = null;
        
        //Scanner
        Scanner read = new Scanner(System.in);
        
        while (korrektInput == false) {

            try {
                inputString = read.nextLine();

                // skjekker om verdien er i string format
                if (inputString.equals((String) inputString)) {
                    korrektInput = true;
                }

                // om input ikkje er string vil dette resultatet komme fremfor at det crasher
            } catch (Exception e) {
                read.next();
                System.out.print("Input må være et ord, prøv på nytt: ");
            }
        }
        
        
        return inputString;
    }
    
    
    int inputInt() {

        boolean korrektInput = false;

        //Scanner
        Scanner read = new Scanner(System.in);

        int inputInt = 0;
        while (korrektInput == false) {

            try {
                inputInt = read.nextInt();

                // skjekker om verdien er et tall
                if (inputInt == (int) inputInt) {
                    korrektInput = true;
                }

                // om input ikkje er et tall vil dette resultatet komme fremfor at det crasher
            } catch (Exception e) {
                read.next();
                System.out.print("Input må være et nummer, prøv på nytt: ");
            }
        }
        return inputInt;
    
    
    
    }
    
    
     double inputDouble() {

        boolean korrektInput = false;

        //Scanner
        Scanner read = new Scanner(System.in);

        double inputDouble = 0;
        while (korrektInput == false) {

            try {
                inputDouble = read.nextDouble();

                // skjekker om verdien er et tall
                if (inputDouble == (double) inputDouble) {
                    korrektInput = true;
                }

                // om input ikkje er et tall vil dette resultatet komme fremfor at det crasher
            } catch (Exception e) {
                read.next();
                System.out.print("Input må være et nummer, prøv på nytt: ");
            }
        }
        return inputDouble;
    
    
    
    }
    
}


class søk {
    
    public int søkString  (String søk){

        
         for (int i = 0; i <= 99; ++i) {
            if (søk.equals(bøker[i]())) {
                
            }
        }
        
        return 5;
    }
    
    
    
    
}