import java.util.Scanner; class Kode { private String kode; private boolean funnetKode = false; Kode(String k) { kode = k; } public boolean tastInnKode(String forsok) { boolean erRiktig; erRiktig = kode.equals(forsok); funnetKode = erRiktig; return erRiktig; } public boolean harTastetRiktigKode() { return funnetKode; } public String hentKode() { return kode; } } class Bombe implements Runnable { private Kode kode; Bombe(Kode k) { kode = k; } @Override public void run() { for (int i = 10; i > 0; i--) { if (kode.harTastetRiktigKode()) { return; } System.out.println(i + " sekunder igjen!!"); try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println(e); } } if (kode.harTastetRiktigKode()) { return; } System.out.println("BOOOM!!"); } } class Desarmerer implements Runnable { Kode kode; Desarmerer(Kode k) { kode = k; } @Override public void run() { System.out.println(kode.hentKode()); Scanner sc = new Scanner(System.in); for (int i = 0; i < 3; i++) { String input = sc.nextLine(); if (kode.tastInnKode(input.strip())) { System.out.println("Phew!"); return; } else { System.out.println("Feil kode..."); } } } } class Main { public static void main(String[] args) { Kode kode = new Kode("Dette er koden."); Thread bomba = new Thread(new Bombe(kode)); Thread desarmerer = new Thread(new Desarmerer(kode)); bomba.start(); desarmerer.start(); } }