{"id":2975,"date":"2019-12-16T09:56:11","date_gmt":"2019-12-16T08:56:11","guid":{"rendered":"https:\/\/www.webotlet.hu\/?p=2975"},"modified":"2019-12-19T14:34:45","modified_gmt":"2019-12-19T13:34:45","slug":"java-programozas-2019-majusi-emelt-informatika-erettsegi-tantargyfelosztas-1-verzio","status":"publish","type":"post","link":"https:\/\/www.webotlet.hu\/?p=2975","title":{"rendered":"Java programoz\u00e1s \u2013 2019 m\u00e1jusi emelt informatika \u00e9retts\u00e9gi \u2013 c\u00e9ges aut\u00f3k (1. verzi\u00f3)"},"content":{"rendered":"<p>A feladat le\u00edr\u00e1s\u00e1t, melynek a megold\u00e1s\u00e1t k\u00f6zz\u00e9teszem <a href=\"https:\/\/www.webotlet.hu\/wp-content\/uploads\/2019\/12\/e_inf_19maj_ceges_autok.pdf\">innen<\/a> t\u00f6ltheted le. Ez a megold\u00e1s t\u00f6mbbel dolgozik.<br \/>\nAdatt\u00e1rol\u00f3 oszt\u00e1ly:<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\n\/**\r\n *\r\n * @author https:\/\/webotlet.hu\r\n *\/\r\npackage webotlet_19maj_ceges_autok;\r\n\r\npublic class AutoAdat\r\n{\r\n\r\n  private int nap;\r\n  private String ido;\r\n  private String rendszam;\r\n  private int dolgozo;\r\n  private int km;\r\n  private boolean be;\r\n  private int sorszam;\r\n\r\n  public AutoAdat(String&#x5B;] tomb)\r\n  {\r\n    nap = Integer.parseInt(tomb&#x5B;0]);\r\n    ido = tomb&#x5B;1];\r\n    rendszam = tomb&#x5B;2];\r\n    dolgozo = Integer.parseInt(tomb&#x5B;3]);\r\n    km = Integer.parseInt(tomb&#x5B;4]);\r\n    be = tomb&#x5B;5].equals(&quot;1&quot;);\r\n    sorszam = Character.getNumericValue(rendszam.charAt(5));\r\n  }\r\n\r\n  public int getNap()\r\n  {\r\n    return nap;\r\n  }\r\n\r\n  public String getIdo()\r\n  {\r\n    return ido;\r\n  }\r\n\r\n  public String getRendszam()\r\n  {\r\n    return rendszam;\r\n  }\r\n\r\n  public int getDolgozo()\r\n  {\r\n    return dolgozo;\r\n  }\r\n\r\n  public int getKm()\r\n  {\r\n    return km;\r\n  }\r\n\r\n  public boolean isBe()\r\n  {\r\n    return be;\r\n  }\r\n\r\n  public int getSorszam()\r\n  {\r\n    return sorszam;\r\n  }\r\n\r\n  @Override\r\n  public String toString()\r\n  {\r\n    return &quot;AutoAdat{&quot; + &quot;nap=&quot; + nap + &quot;, ido=&quot; + ido \r\n      + &quot;, rendszam=&quot; + rendszam + &quot;, dolgozo=&quot; + dolgozo \r\n      + &quot;, km=&quot; + km + &quot;, be=&quot; + be + &quot;, sorszam=&quot; + sorszam + '}';\r\n  }\r\n}\r\n<\/pre>\n<p>A feladat megold\u00e1sai:<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\n\/**\r\n *\r\n * @author https:\/\/webotlet.hu\r\n *\/\r\npackage webotlet_19maj_ceges_autok;\r\n\r\nimport java.io.IOException;\r\nimport java.io.RandomAccessFile;\r\nimport java.util.Scanner;\r\n\r\npublic class Webotlet_19maj_ceges_autok\r\n{\r\n\r\n  public static void main(String&#x5B;] args)\r\n  {\r\n    \/\/ 1. feladat\r\n    RandomAccessFile raf;\r\n    String sor;\r\n    AutoAdat&#x5B;] adatok = null;\r\n\r\n    try\r\n    {\r\n      raf = new RandomAccessFile(&quot;autok.txt&quot;, &quot;r&quot;);\r\n      int db = 0;\r\n      for( sor = raf.readLine(); sor != null; sor = raf.readLine() )\r\n      {\r\n        db++;\r\n      }\r\n\r\n      adatok = new AutoAdat&#x5B;db];\r\n\r\n      raf.seek(0);\r\n      int hely = 0;\r\n      for( sor = raf.readLine(); sor != null; sor = raf.readLine() )\r\n      {\r\n        adatok&#x5B;hely] = new AutoAdat(sor.split(&quot; &quot;));\r\n        hely++;\r\n      }\r\n      raf.close();\r\n    }\r\n    catch( IOException e )\r\n    {\r\n      System.out.println(&quot;HIBA&quot;);\r\n    }\r\n\r\n\/\/        for( AutoAdat adat : adatok )\r\n\/\/        {\r\n\/\/            System.out.println(adat);\r\n\/\/        }\r\n\/\/ 2. feladat\r\n    System.out.println(&quot;2. feladat&quot;);\r\n    for( int i = adatok.length - 1; i &gt; -1; i-- )\r\n    {\r\n      if( !adatok&#x5B;i].isBe() )\r\n      {\r\n        System.out.println(adatok&#x5B;i].getNap() + &quot;. nap rendszam: &quot;\r\n          + adatok&#x5B;i].getRendszam());\r\n        break;\r\n      }\r\n    }\r\n\r\n\/\/ 3. feladat\r\n    System.out.println(&quot;3. feladat&quot;);\r\n    Scanner sc = new Scanner(System.in);\r\n    System.out.print(&quot;Nap: &quot;);\r\n    int nap = sc.nextInt();\r\n    System.out.println(&quot;Forgalom a(z) &quot; + nap + &quot;. napon:&quot;);\r\n    for( int i = 0; i &lt; adatok.length; i++ )\r\n    {\r\n      if( adatok&#x5B;i].getNap() == nap )\r\n      {\r\n        System.out.print(adatok&#x5B;i].getIdo() + &quot; &quot;\r\n          + adatok&#x5B;i].getRendszam() + &quot; &quot;\r\n          + adatok&#x5B;i].getDolgozo() + &quot; &quot;);\r\n        if( adatok&#x5B;i].isBe() )\r\n        {\r\n          System.out.println(&quot;be&quot;);\r\n        }\r\n        else\r\n        {\r\n          System.out.println(&quot;ki&quot;);\r\n        }\r\n      }\r\n    }\r\n\r\n\/\/ 4. feladat\r\n    System.out.println(&quot;4. feladat&quot;);\r\n    int&#x5B;] napok = new int&#x5B;10];\r\n\r\n    for( int i = 0; i &lt; adatok.length; i++ )\r\n    {\r\n      if( adatok&#x5B;i].isBe() )\r\n      {\r\n        napok&#x5B;adatok&#x5B;i].getSorszam()]--;\r\n      }\r\n      else\r\n      {\r\n        napok&#x5B;adatok&#x5B;i].getSorszam()]++;\r\n      }\r\n    }\r\n\r\n    int osszeg = 0;\r\n    for( int i = 0; i &lt; napok.length; i++ )\r\n    {\r\n      osszeg += napok&#x5B;i];\r\n    }\r\n    System.out.println(&quot;A honap vegen &quot; + osszeg + &quot; autot nem hoztak vissza.&quot;);\r\n\r\n\/\/ 5. feladat\r\n    System.out.println(&quot;5. feladat&quot;);\r\n\r\n    for( int i = 0; i &lt; adatok.length - 1; i++ )\r\n    {\r\n      for( int j = i + 1; j &lt; adatok.length; j++ ) { \/\/ 3 szempont szerint rendezek \/\/ rendszam szerint \/\/ azon belul nap szerint \/\/ azon belul ido szerint if( adatok&#x5B;i].getRendszam().compareTo(adatok&#x5B;j].getRendszam()) &gt; 0\r\n          || (adatok&#x5B;i].getRendszam().compareTo(adatok&#x5B;j].getRendszam()) == 0\r\n          &amp;&amp; adatok&#x5B;i].getNap() &gt; adatok&#x5B;j].getNap())\r\n          || (adatok&#x5B;i].getRendszam().compareTo(adatok&#x5B;j].getRendszam()) == 0\r\n          &amp;&amp; adatok&#x5B;i].getNap() == adatok&#x5B;j].getNap()\r\n          &amp;&amp; adatok&#x5B;i].getIdo().compareTo(adatok&#x5B;j].getIdo()) &gt; 0) )\r\n        {\r\n          AutoAdat csere = adatok&#x5B;i];\r\n          adatok&#x5B;i] = adatok&#x5B;j];\r\n          adatok&#x5B;j] = csere;\r\n        }\r\n      }\r\n    }\r\n\r\n    int&#x5B;] kmosszeg = new int&#x5B;10];\r\n\r\n    for( int i = 1; i &lt; adatok.length; i++ )\r\n    {\r\n      if( adatok&#x5B;i].getSorszam() == adatok&#x5B;i - 1].getSorszam() )\r\n      {\r\n        kmosszeg&#x5B;adatok&#x5B;i].getSorszam()] += adatok&#x5B;i].getKm() - adatok&#x5B;i - 1].getKm();\r\n      }\r\n    }\r\n\r\n    for( int i = 0; i &lt; kmosszeg.length; i++ )\r\n    {\r\n      System.out.println(&quot;CEG30&quot; + i + &quot; &quot; + kmosszeg&#x5B;i] + &quot; km&quot;);\r\n    }\r\n\r\n\/\/ 6. feladat\r\n    System.out.println(&quot;6. feladat&quot;);\r\n\r\n    int maxhely = 0;\r\n    int max = 0;\r\n\r\n    for( int i = 1; i &lt; adatok.length; i++ ) { if( adatok&#x5B;i].getSorszam() == adatok&#x5B;i - 1].getSorszam() ) { if( adatok&#x5B;i].getKm() - adatok&#x5B;i - 1].getKm() &gt; max )\r\n        {\r\n          max = adatok&#x5B;i].getKm() - adatok&#x5B;i - 1].getKm();\r\n          maxhely = i;\r\n        }\r\n      }\r\n    }\r\n\r\n    System.out.println(&quot;Leghosszabb ut: &quot; + max + &quot; km, szemely: &quot; \r\n      + adatok&#x5B;maxhely].getDolgozo());\r\n\r\n\/\/ 7. feladat\r\n    System.out.println(&quot;7. feladat&quot;);\r\n\r\n    sc = new Scanner(System.in);\r\n    System.out.print(&quot;Rendszam: &quot;);\r\n    String rendszam = sc.nextLine();\r\n\r\n    RandomAccessFile ki;\r\n    try\r\n    {\r\n      ki = new RandomAccessFile(rendszam + &quot;_menetlevel.txt&quot;, &quot;rw&quot;);\r\n      ki.setLength(0);\r\n      for( int i = 0; i &lt; adatok.length; i++ )\r\n      {\r\n        if( adatok&#x5B;i].getRendszam().equals(rendszam) )\r\n        {\r\n          if( !adatok&#x5B;i].isBe() )\r\n          {\r\n            ki.writeBytes(adatok&#x5B;i].getDolgozo() + &quot;\\t&quot;\r\n              + adatok&#x5B;i].getNap() + &quot;. &quot; + adatok&#x5B;i].getIdo()\r\n              + &quot;\\t&quot; + adatok&#x5B;i].getKm() + &quot; km&quot;);\r\n          }\r\n          else\r\n          {\r\n            ki.writeBytes(&quot;\\t&quot; + adatok&#x5B;i].getNap()\r\n              + &quot;. &quot; + adatok&#x5B;i].getIdo() + &quot;\\t&quot; + adatok&#x5B;i].getKm()\r\n              + &quot; km\\n&quot;);\r\n\r\n          }\r\n        }\r\n      }\r\n      System.out.println(&quot;Menetlevel kesz.&quot;);\r\n      ki.close();\r\n    }\r\n    catch( IOException e )\r\n    {\r\n      System.out.println(&quot;HIBA&quot;);\r\n    }\r\n  }\r\n\r\n}\r\n<\/pre>\n<p>Ha hib\u00e1t tal\u00e1lsz benne, k\u00e9rlek jelezd!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A feladat le\u00edr\u00e1s\u00e1t, melynek a megold\u00e1s\u00e1t k\u00f6zz\u00e9teszem innen t\u00f6ltheted le. Ez a megold\u00e1s t\u00f6mbbel dolgozik. Adatt\u00e1rol\u00f3 oszt\u00e1ly: \/** * * @author https:\/\/webotlet.hu *\/ package webotlet_19maj_ceges_autok; public class AutoAdat { private int nap; private String ido; private String rendszam; private int <a class=\"more-link\" href=\"https:\/\/www.webotlet.hu\/?p=2975\">Tov\u00e1bb <span class=\"screen-reader-text\">  Java programoz\u00e1s \u2013 2019 m\u00e1jusi emelt informatika \u00e9retts\u00e9gi \u2013 c\u00e9ges aut\u00f3k (1. verzi\u00f3)<\/span><span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[106],"tags":[108,107,109,86,144,143,183,25,26,15],"class_list":["post-2975","post","type-post","status-publish","format-standard","hentry","category-java-emelt-erettsegi-feladatok","tag-emelt","tag-emelt-erettsegi","tag-emelt-informatika-erettsegi","tag-java","tag-java_programozas","tag-programozas","tag-programozas-feladat","tag-randomaccessfile","tag-szovegfajl","tag-tomb"],"_links":{"self":[{"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts\/2975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2975"}],"version-history":[{"count":4,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts\/2975\/revisions"}],"predecessor-version":[{"id":3009,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts\/2975\/revisions\/3009"}],"wp:attachment":[{"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}