Ajout première partie en Java
This commit is contained in:
parent
b1b89b5adc
commit
d81aa7fa82
3 changed files with 114 additions and 0 deletions
26
jour02/Box.java
Normal file
26
jour02/Box.java
Normal file
|
@ -0,0 +1,26 @@
|
|||
public class Box {
|
||||
private int l, w, h;
|
||||
|
||||
public Box (int l, int w, int h) {
|
||||
this.l = l;
|
||||
this.w = w;
|
||||
this.h = h;
|
||||
}
|
||||
|
||||
public int getSurface() {
|
||||
return 2*(this.l*this.w + this.w*this.h + this.h*this.l);
|
||||
}
|
||||
|
||||
public int areaSmallSurface() {
|
||||
int wl = this.w * this.l;
|
||||
int wh = this.w * this.h;
|
||||
int lh = this.l * this.h;
|
||||
|
||||
int ret = wl >= wh ? wh : wl;
|
||||
|
||||
if (ret > lh)
|
||||
ret = lh;
|
||||
|
||||
return ret;
|
||||
}
|
||||
}
|
79
jour02/Jour2.java
Normal file
79
jour02/Jour2.java
Normal file
|
@ -0,0 +1,79 @@
|
|||
import java.util.Scanner;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.RandomAccessFile;
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class Jour2 {
|
||||
private String filename;
|
||||
private FileInputStream fis;
|
||||
private Scanner sc;
|
||||
private ArrayList<Box> listBox;
|
||||
|
||||
public Jour2(String filename) {
|
||||
this.filename = filename;
|
||||
this.listBox = new ArrayList<Box>();
|
||||
}
|
||||
|
||||
public void premPartie() {
|
||||
int result = 0, x, y, z;
|
||||
this.loadFile();
|
||||
try {
|
||||
String line;
|
||||
while (sc.hasNextLine()) {
|
||||
line = sc.nextLine();
|
||||
String[] tokens = line.split("x");
|
||||
x = Integer.parseInt(tokens[0]);
|
||||
y = Integer.parseInt(tokens[1]);
|
||||
z = Integer.parseInt(tokens[2]);
|
||||
this.listBox.add(new Box(x, y, z));
|
||||
}
|
||||
|
||||
for (int i = 0; i < this.listBox.size(); i++) {
|
||||
result += this.listBox.get(i).getSurface();
|
||||
result += this.listBox.get(i).areaSmallSurface();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.err.println("Erreur !!");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
this.unloadFile();
|
||||
System.out.println("Il faut " + result + " pieds de papiers cadeaux.");
|
||||
}
|
||||
|
||||
public void deuxPartie() {
|
||||
this.loadFile();
|
||||
try {
|
||||
//while (sc.hasNextLine()) {
|
||||
//
|
||||
//}
|
||||
|
||||
} catch (Exception e) {
|
||||
System.err.println("Erreur !!");
|
||||
e.printStackTrace();
|
||||
}
|
||||
this.unloadFile();
|
||||
}
|
||||
|
||||
private void loadFile() {
|
||||
try {
|
||||
this.fis = new FileInputStream(filename);
|
||||
this.sc = new Scanner(fis);
|
||||
} catch (Exception e) {
|
||||
System.err.println("Erreur rencontrée lors de"
|
||||
+ "l’ouverture du fichier.");
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private void unloadFile() {
|
||||
try {
|
||||
this.sc.close();
|
||||
this.fis.close();
|
||||
} catch (Exception e) {
|
||||
System.err.println("Erreur rencontrée lors de la "
|
||||
+ "fermeture du fichier.");
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
9
jour02/Main.java
Normal file
9
jour02/Main.java
Normal file
|
@ -0,0 +1,9 @@
|
|||
public class Main {
|
||||
static public void main (String[] args) {
|
||||
Jour2 j = new Jour2("input");
|
||||
System.out.println("Exécution de la première partie…");
|
||||
j.premPartie();
|
||||
System.out.println("Exécution de la deuxième partie…");
|
||||
//j.deuxPartie();
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue