smgr

helyjegy.java

Apr 9th, 2014
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.61 KB | None | 0 0
  1. package helyjegy;
  2.  
  3. import java.io.IOException;
  4. import java.io.RandomAccessFile;
  5. import java.util.Arrays;
  6.  
  7. class jegy {
  8.    
  9.    int azon, hely, honnan, hova;
  10.    
  11.    public jegy(int azon, int hely, int honnan, int hova) {
  12.       this.azon = azon;
  13.       this.hely = hely;
  14.       this.honnan = honnan;
  15.       this.hova = hova;
  16.    }
  17.    
  18.    int tavolsag() {
  19.       return hova - honnan;
  20.    }
  21. }
  22.  
  23. public class Helyjegy {
  24.    
  25.    static int kerekites(int osszeg) {
  26.       // 1 - 2 - 6 - 7 ==> lefelé
  27.       // 3 - 4 - 8 - 9 ==> felfelé
  28.       int maradek = osszeg % 10;
  29.       if (maradek == 1 || maradek == 2) {
  30.          osszeg = osszeg - maradek;
  31.       } else if (maradek == 6 || maradek == 7) {
  32.          osszeg = osszeg - (maradek - 5);
  33.       } else if (maradek == 3 || maradek == 4) {
  34.          osszeg = osszeg + (5 - maradek);
  35.       } else if (maradek == 8 || maradek == 9) {
  36.          osszeg = osszeg + (10 - maradek);
  37.       }
  38.       return osszeg;
  39.    }
  40.    
  41.    public static void main(String[] args) {
  42.      
  43.       System.out.println("1. feladat:");
  44.       int eladottJegy = 0;
  45.       int tav = 0;
  46.       int ar = 0;
  47.       try {
  48.          RandomAccessFile file = new RandomAccessFile("eladott.txt", "r");
  49.          String elsoSor = file.readLine();
  50.          String[] elsoSorS = elsoSor.split(" ");
  51.          eladottJegy = Integer.parseInt(elsoSorS[0]);
  52.          tav = Integer.parseInt(elsoSorS[1]);
  53.          ar = Integer.parseInt(elsoSorS[2]);
  54.          
  55.          jegy[] jegyeladas = new jegy[eladottJegy];
  56.          
  57.          for (int i = 0; i < eladottJegy; i++) {
  58.             String line = file.readLine();
  59.             String[] lineSplit = line.split(" ");
  60.             jegyeladas[i] = new jegy((i + 1), Integer.parseInt(lineSplit[0]), Integer.parseInt(lineSplit[1]), Integer.parseInt(lineSplit[2]));
  61.            
  62.          }
  63.          file.close();
  64.          System.out.println("A beolvasás megtörtént");
  65.          
  66.          
  67.          System.out.println("\n2. feladat:");
  68.          System.out.println("Az utolsó utas ülésszáma " + jegyeladas[eladottJegy - 1].hely + ", az általa megtett táv pedig " + jegyeladas[eladottJegy - 1].tavolsag() + "km.");
  69.          
  70.          
  71.          
  72.          System.out.println("\n3. feladat:");
  73.          System.out.print("Végig utazottak sorszáma: ");
  74.          for (int i = 0; i < eladottJegy; i++) {
  75.             if (jegyeladas[i].honnan == 0 && jegyeladas[i].hova == tav) {
  76.                System.out.print(jegyeladas[i].azon + " ");
  77.             }
  78.          }
  79.          System.out.println();
  80.          
  81.          
  82.          System.out.println("\n4. feladat:");
  83.          int bevetel = 0;
  84.          for (int i = 0; i < eladottJegy; i++) {
  85.             if (jegyeladas[i].tavolsag() % 10 == 0) {
  86.                bevetel += jegyeladas[i].tavolsag() * ar;
  87.             } else {
  88.                bevetel += (jegyeladas[i].tavolsag()+1) * ar;
  89.             }
  90.          }
  91.          System.out.println("A busztársaságnak " + bevetel + "Ft bevétele származott a jegyeladásokból.");
  92.          
  93.          
  94.          System.out.println("\n5. feladat:");
  95.          int maxHonnan = 0;
  96.          int db = 0;
  97.          for (int i = 0; i < jegyeladas.length; i++) {
  98.             if (jegyeladas[i].honnan > maxHonnan && jegyeladas[i].honnan != tav) {
  99.                maxHonnan = jegyeladas[i].honnan;
  100.             }
  101.          }
  102.          for (int i = 0; i < jegyeladas.length; i++) {
  103.             if (jegyeladas[i].honnan == maxHonnan) {
  104.                db++;
  105.             }
  106.          }
  107.          System.out.println(db + " fõ szállt fel az utolsó elõtti megállóban.");
  108.          
  109.          
  110.          System.out.println("\n6. feladat:");
  111.          jegy[] egyedi = new jegy[eladottJegy];
  112.          db = 0;
  113.          for (int i = 0; i < eladottJegy; i++) {
  114.             boolean volt = false;
  115.             for (int j = 0; j < db; j++) {
  116.                if (jegyeladas[i] == egyedi[db]) {
  117.                   volt = true;
  118.                   break;
  119.                }
  120.             }
  121.             if (!volt) {
  122.                egyedi[db++] = jegyeladas[i];
  123.             }
  124.          }
  125.          for (int i = 0; i < egyedi.length; i++) {
  126.             System.out.println(egyedi[i].honnan);
  127.          }
  128.          db = 0;
  129.          for (int i = 0; i < egyedi.length; i++) {
  130.             if (egyedi[i].honnan != 0 && egyedi[i].honnan != tav) {
  131.                db++;
  132.             }
  133.          }
  134.          System.out.println(db + " darab megállóhelyen állt meg a busz.");
  135.          
  136.          
  137.          System.out.println("\n7. feladat:");
  138.          
  139.          
  140.       } catch (IOException e) {
  141.          System.err.println(e);
  142.       }
  143.      
  144.    }
  145. }
Advertisement
Add Comment
Please, Sign In to add comment