rendered paste bodyimport easyIO.*;
class Oblig2 {
public static void main(String[] args) {
String stopp;
String[][] eier = new String[15][25];
double[][] utvunnet = new double[15][25];
In keyboard = new In();
Out skjerm = new Out();
int meny = 10;
while (meny != 8) {
In menyValg = new In();
System.out.println("*** VELKOMMEN TIL RURITANIAS OLJEFELTOVERSIKT *** \n");
System.out.println("Du har flgende valgmuligheter:");
System.out.println(" 1) Kjp et felt");
System.out.println(" 2) Annuler kjp av et felt");
System.out.println(" 3) Lag oversiktskart");
System.out.println(" 4) Lag liste over oljeselskaper");
System.out.println(" 5) Oppdater ojleutvinning");
System.out.println(" 6) Finn maksimal oljeutvinning");
System.out.println(" 7) Finn gjennomsnittlig oljeutvinning");
System.out.println(" 8) Avslutt");
System.out.print("\nVelg kommando: "); meny = menyValg.inInt();
if (meny <= 0 || meny > 8) {
System.out.println("\nUgyldig menyvalg.");
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord(""); }
switch (meny) {
case 1:
System.out.println("\nKjp et felt:");
boolean ledig = false;
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 25; j++) {
if (eier[i][j] == null) {
ledig = true; } } }
if (ledig = false) {
System.out.println("Alle feltene er solgt."); }
else { System.out.print("Oppgi feltet du vil kjpe p formen F(x,y): ");
int radNr = keyboard.inInt("F(,");
int kolonneNr = keyboard.inInt(",)");
stopp = keyboard.inWord("");
if (eier[radNr][kolonneNr] == null) {
System.out.print("Oljeselskapets navn: ");
String eierNavn = keyboard.inWord("");
eier[radNr][kolonneNr] = eierNavn;
System.out.println("\nFeltet F(" + radNr + "," + kolonneNr + ") selges til " + eierNavn + "."); }
else { System.out.println("\nFeltet er allerede solgt til " + eier[radNr][kolonneNr] + "."); }
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord(""); }
break;
case 2:
System.out.println("\nAnnuler kjp av felt:");
System.out.print("\nNavn p oljeselskap: ");
String eierNavn = keyboard.inWord("");
System.out.print("Felt skal skal annuleres (oppgi p formen F(x,y): ");
int radNr = keyboard.inInt("F(,");
int kolonneNr = keyboard.inInt(",)");
if (eierNavn.equals(eier[radNr][kolonneNr])) {
if (eier[radNr][kolonneNr] != null) {
eier[radNr][kolonneNr] = null;
System.out.println("\nFeltet F(" + radNr + "," + kolonneNr + ") er ikke lenger opptatt."); } }
else { if (eier[radNr][kolonneNr] == null) {
System.out.println("\nFeltet er ikke solgt enda."); }
else { System.out.println("\nFeltes eies ikke av " + eierNavn + "."); } }
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord("");
stopp = keyboard.inWord("");
break;
case 3:
System.out.println("\nOversiktskart:");
skjerm.out("",5);
for (int j = 0; j < 25; j++) {
skjerm.out(j,5); }
skjerm.outln("");
for (int i = 0; i < 15; i++) {
skjerm.out(i,5);
for (int j = 0; j < 25; j++) {
if (eier[i][j] == null) {
skjerm.out(" .",5); }
else { skjerm.out(" X",5); } }
System.out.println(""); }
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord("");
break;
case 4:
System.out.println("\nOljeselskaper");
String[] solgteFelter = new String[375];
int muligSelskap = 0;
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 25; j++) {
if (eier[i][j] != null) {
boolean feltEier = false;
String eierArray = eier[i][j];
for (int e = 0; e < muligSelskap; e++) {
if (solgteFelter[e].equals(eierArray)) {
feltEier = true; } }
if (!feltEier) {
solgteFelter[muligSelskap] = eierArray;
muligSelskap++; } } } }
for (int i = 0; i < muligSelskap; i++) {
System.out.println(solgteFelter[i] + " har kjpt flgende felter: ");
for (int j = 0; j < 15; j++) {
for (int e = 0; e < 25; e++) {
if (eier[j][e] != null) {
if (eier[j][e].equals(solgteFelter[i])) {
System.out.println("F(" + j + "," + e + ")"); } } } } }
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord("");
break;
case 5:
System.out.println("\nOppdater oljeutvinning:");
System.out.print("\nFelt som skal oppdateres (p formen F(x,y): ");
radNr = keyboard.inInt("F(,");
kolonneNr = keyboard.inInt(",)");
stopp = keyboard.inWord("");
System.out.print("\nFat olje utvunnet: ");
double oppdatertFat = keyboard.inDouble();
double fat = utvunnet[radNr][kolonneNr];
utvunnet[radNr][kolonneNr] = oppdatertFat + fat;
System.out.println("\nDet er utvunnet totalt " + utvunnet[radNr][kolonneNr] + " fat olje p felt F(" + radNr + ","
+ kolonneNr + ").");
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord("");
break;
case 6:
System.out.println("\nMaksimal oljeutvinning:");
double utvunnetMaks = 0;
String eierMaks = "";
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 25; j++) {
if (eier[i][j] != null) {
if (utvunnet[i][j] > utvunnetMaks) {
utvunnetMaks = utvunnet[i][j];
eierMaks = eier[i][j]; } } } }
System.out.println("\n" + eierMaks + " har utvunnet mest olje med " + utvunnetMaks + " fat.");
stopp = keyboard.inWord("");
break;
case 7:
System.out.println("\nGjennomsnittling oljeutvinning:");
int felt = 0;
double olje = 0;
for (int i = 0; i < 15; i++) {
for (int j = 0; j < 25; j++) {
if (utvunnet[i][j] == 0) { }
else { olje = olje + utvunnet[i][j]; felt++; } } }
System.out.println("\nGjennomsnittling oljeutvinning er " + olje / felt + " fat.");
System.out.println("\nTrykk 'enter' for fortsette.");
stopp = keyboard.inWord("");
break; } } }}