Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package inlämningsuppgift;
- import java.io.DataOutputStream;
- import java.io.FileOutputStream;
- import java.io.FileNotFoundException;
- import java.io.DataInputStream;
- import java.io.EOFException;
- import java.io.FileInputStream;
- import java.io.IOException;
- import java.io.File;
- // Ett matteprogram.
- // Programmet skapar ett direktiv i (C:) och skapar och läser till och från
- // textfiler inuti det direktivet.
- public class Inlämningsuppgift {
- public static void main(String[] args) throws Exception {
- // Globala variablar som har statusen false.
- boolean filecheck = false;
- boolean filecheck2 = false;
- boolean filecheck3 = false;
- //Följande skapar ett directory.
- File dir = new File("C:\\Inlämningsuppgift");
- boolean isDirCreated = dir.mkdirs();
- if (isDirCreated)
- System.out.println("Sparfilsmapp skapad");
- else
- System.out.println("Det finns redan en sparfilsmapp!");
- //Följande läser från fil 1
- try {
- FileInputStream fin = new FileInputStream("C:\\Inlämningsuppgift\\1.txt");
- DataInputStream din = new DataInputStream(fin);
- while (true) {
- double theNumber = din.readDouble();
- System.out.println(" ");
- System.out.print("Du svarade: \""+theNumber+"\" på den första frågan"
- + ""); // Skriver ut svaret till frågan.
- filecheck = true; // Detta för att när den läser av filen och
- // den finns, blir filecheck true istället
- // för false.
- }
- } catch (EOFException e) {
- } catch (IOException e) {
- // abnormal termination
- //System.err.println(e);
- }
- //Följande skapar en textfil i dir. och skriver till filen.
- FileOutputStream outputFile = null;
- if (filecheck) { // Här är filecheck true och istället för att frågan ställs
- // kommer det bara en brytning i texten.
- System.out.println(" ");
- System.out.println("Du har redan klarat denna fråga!");
- System.out.println(" ");
- } else { // Här är filecheck false och då ställs frågan
- // för att då finns inte filen.
- try {
- outputFile = new FileOutputStream("C:\\Inlämningsuppgift\\1.txt");
- } catch (FileNotFoundException e) {
- e.printStackTrace(System.err);
- }
- //Första frågan ställs när filecheck är false
- System.out.println(" ");
- System.out.println("Välkommen till helvetet!");
- System.out.println("Nu ska du svara på några mattetal.");
- System.out.println("Svarar du fel går"
- + " världen under.");
- System.out.println("Du får endast svara med hela tal");
- System.out.println("Vad är svaret på följande fråga?");
- System.out.println("2 + 2 = ?");
- //Keyboard classen används för att svara.
- String strFilePath = "C:\\Inlämningsuppgift\\1.txt";
- FileOutputStream fos = new FileOutputStream(strFilePath);
- DataOutputStream dos = new DataOutputStream(fos);
- double tal = Keyboard.readDouble();
- dos.writeDouble(tal);
- dos.close();
- //If-else beroende på vad användaren skriver in.
- if (tal == 4){
- System.out.println("Grattis! Världen har inte gått under, än");
- }
- else{
- System.out.println("Tyvärr, det var fel svar. "
- + " Alla du någonsin känt är nu döda");
- }
- }
- //Följande läser från fil 2
- try {
- FileInputStream fin2 = new FileInputStream("C:\\Inlämningsuppgift\\2.txt");
- DataInputStream din2 = new DataInputStream(fin2);
- while (true) {
- double theNumber = din2.readDouble();
- System.out.print("Du svarade: \""+theNumber+"\" på den andra frågan");
- filecheck2 = true; // Av samma orsak som på fråga 1.
- }
- } catch (EOFException e) {
- } catch (IOException e) {
- // abnormal termination
- //System.err.println(e);
- }
- // Skapar och skriver till en ny textfil.
- FileOutputStream outputFile2 = null;
- if (filecheck2) {
- System.out.println(" ");
- System.out.println("Du har redan klarat denna fråga!");
- System.out.println(" ");
- }else{ // Här är filecheck2 false och då ställs frågan.
- try {
- outputFile2 = new FileOutputStream("C:\\Inlämningsuppgift\\2.txt");
- } catch (FileNotFoundException e) {
- e.printStackTrace(System.err);
- }
- // Nästa fråga.
- System.out.println("Nu ska du svara på ytterligare en fråga: ");
- System.out.println("Vad är 100/10?");
- String strFilePath2 = "C:\\Inlämningsuppgift\\2.txt";
- FileOutputStream fos2 = new FileOutputStream(strFilePath2);
- DataOutputStream dos2 = new DataOutputStream(fos2);
- double tal2 = Keyboard.readDouble();
- dos2.writeDouble(tal2);
- dos2.close();
- if (tal2 == 10){
- System.out.println("Grattis! Världen har inte gått under, än");
- }
- else{
- System.out.println("tyvärr, alla du någonsin känt är nu döda");
- }
- }
- // Följande läser från fil 3.
- try {
- FileInputStream fin3 = new FileInputStream("C:\\Inlämningsuppgift\\3.txt");
- DataInputStream din3 = new DataInputStream(fin3);
- while (true) {
- double theNumber = din3.readDouble();
- System.out.println("Du svarade: \""+theNumber+"\" på den sista frågan");
- filecheck3 = true;
- }
- } catch (EOFException e) {
- } catch (IOException e) {
- //abnormal termination
- //System.err.println(e);
- }
- //Skapar och skriver till en ny textfil.
- FileOutputStream outputFile3 = null;
- if (filecheck3){
- System.out.println(" ");
- System.out.println("Du har redan klarat alla frågor!");
- System.out.println(" ");
- }else{
- try {
- outputFile3 = new FileOutputStream("C:\\Inlämningsuppgift\\3.txt");
- } catch (FileNotFoundException e) {
- e.printStackTrace(System.err);
- }
- //Nästa fråga.
- System.out.println("Nu ska du svara på den sista frågan: ");
- System.out.println("Den lyder: vad är 50x30?");
- String strFilePath3 = "C:\\Inlämningsuppgift\\3.txt";
- FileOutputStream fos3 = new FileOutputStream(strFilePath3);
- DataOutputStream dos3 = new DataOutputStream(fos3);
- double tal3 = Keyboard.readDouble();
- dos3.writeDouble(tal3);
- dos3.close();
- if (tal3 == 1500){
- System.out.println("Bra gjort! men tyvärr går världen under ändå");
- System.out.println("Ashes to ashes, dust to dust.");
- }
- else{
- System.out.println("Haha, fan va kass du e på matte!");
- System.out.println("Game Over");
- System.out.println("Ashes to ashes, dust to dust.");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement