{"id":2533,"date":"2019-09-25T14:37:30","date_gmt":"2019-09-25T12:37:30","guid":{"rendered":"http:\/\/www.webotlet.hu\/?p=2533"},"modified":"2019-09-25T14:37:55","modified_gmt":"2019-09-25T12:37:55","slug":"a-fajlkezeles-7-feladat-megoldasa-java-nyelven-2","status":"publish","type":"post","link":"https:\/\/www.webotlet.hu\/?p=2533","title":{"rendered":"A F\u00e1jlkezel\u00e9s 4. feladat megold\u00e1sa Java nyelven"},"content":{"rendered":"<p>A feladat aminek a megold\u00e1s\u00e1t itt k\u00f6zz\u00e9teszem, <a href=\"http:\/\/www.webotlet.hu\/?p=2357\">itt<\/a> tal\u00e1lhat\u00f3. A feladatot csak forr\u00e1sk\u00f3dk\u00e9nt teszem k\u00f6zz\u00e9. Az utols\u00f3 feladat megold\u00e1s\u00e1t k\u00e9s\u0151bb teszem hozz\u00e1.<\/p>\n<pre class=\"brush: java; title: ; notranslate\" title=\"\">\r\n\/**\r\n *\r\n * @author https:\/\/webotlet.hu\r\n *\/\r\npackage webotlet_fajlkezeles04;\r\n\r\nimport java.io.IOException;\r\nimport java.io.RandomAccessFile;\r\n\r\npublic class Webotlet_Fajlkezeles04\r\n{\r\n\r\n  public static void main(String&#x5B;] args)\r\n  {\r\n    RandomAccessFile raf;\r\n    String sor;\r\n    String&#x5B;] nevek = null;\r\n    try\r\n    {\r\n      raf = new RandomAccessFile(&quot;nevek.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      nevek = new String&#x5B;db];\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        nevek&#x5B;hely] = sor;\r\n        hely++;\r\n      }\r\n    }\r\n    catch(IOException e)\r\n    {\r\n      System.out.println(&quot;HIBA&quot;);\r\n    }\r\n     \r\n\/\/    for (int i = 0; i &lt; nevek.length; i++)\r\n\/\/    {\r\n\/\/      System.out.println(nevek&#x5B;i]);\r\n\/\/    }\r\n\/\/    System.out.println();\r\n     \r\n    System.out.println(&quot;1. feladat&quot;);\r\n\/\/  Kinek van a leghosszabb vezet\u00e9kneve?\r\n    String&#x5B;] vezeteknevek;\r\n    vezeteknevek = new String&#x5B;nevek.length];\r\n    for (int i = 0; i &lt; vezeteknevek.length; i++)\r\n    {\r\n      vezeteknevek&#x5B;i] = nevek&#x5B;i].split(&quot; &quot;)&#x5B;0];\r\n    }\r\n     \r\n\/\/    for (int i = 0; i &lt; vezeteknevek.length; i++)\r\n\/\/    {\r\n\/\/      System.out.println(vezeteknevek&#x5B;i]);\r\n\/\/    }\r\n     \r\n    int max = 0;\r\n    for (int i = 1; i &lt; vezeteknevek.length; i++)\r\n    {\r\n      if (vezeteknevek&#x5B;i].length() &gt; vezeteknevek&#x5B;max].length())\r\n      {\r\n        max = i;\r\n      }\r\n    }\r\n     \r\n    System.out.println(&quot;A leghosszabb vezetekneve: &quot;+nevek&#x5B;max]);\r\n     \r\n    System.out.println(&quot;2. feladat&quot;);\r\n\/\/ Kinek van k\u00e9t keresztneve?\r\n    for( int i = 0;i &lt; nevek.length; i++ )\r\n    {\r\n      if( nevek&#x5B;i].split(&quot; &quot;).length &gt; 2 )\r\n      {\r\n        System.out.println(nevek&#x5B;i]);\r\n      }\r\n    }\r\n\r\n    System.out.println(&quot;3. feladat&quot;);\r\n\/\/ H\u00e1nyadik a leghosszabb n\u00e9v a f\u00e1jlban?\r\n    int maxHosszHely = 0;\r\n    for( int i = 1; i &lt; nevek.length; i++ )\r\n    {\r\n      if( nevek&#x5B;i].length() &gt; nevek&#x5B;maxHosszHely].length() )\r\n      {\r\n        maxHosszHely = i;\r\n      }\r\n    }\r\n    \r\n    System.out.println(&quot;A leghosszabb nev sorszama: &quot;+(maxHosszHely+1));\r\n\r\n    System.out.println(&quot;4. feladat&quot;);\r\n\/\/ Melyik n\u00e9vben van a legt\u00f6bb n bet\u0171?\r\n\/\/ 1. verzi\u00f3 (helyben megsz\u00e1molva, darabsz\u00e1mok t\u00f6bbe rakva)\r\n    int&#x5B;] nBetukDb = new int&#x5B;nevek.length];\r\n    for( int i = 0; i &lt; nevek.length; i++ )\r\n    {\r\n      String nev = nevek&#x5B;i].toLowerCase();\r\n      int db = 0;\r\n      for (int j = 0; j &lt; nev.length(); j++)\r\n      {\r\n        if (nev.charAt(j) == 'n')\r\n        {\r\n          db++;\r\n        }\r\n      }\r\n      nBetukDb&#x5B;i] = db;\r\n    }\r\n    \r\n    int maxN = 0;\r\n    for( int i = 1; i &lt; nBetukDb.length; i++ )\r\n    {\r\n      if( nBetukDb&#x5B;i] &gt; nBetukDb&#x5B;maxN] )\r\n      {\r\n        maxN = i;\r\n      }\r\n    }\r\n    \r\n    System.out.println(&quot;A legtobb n betu ebben a nevben van: &quot;+\r\n        nevek&#x5B;maxN]);\r\n\r\n\/\/ 2. verzi\u00f3 (met\u00f3dussal)\r\n    int max2 = 0;\r\n    for (int i = 1; i &lt; nevek.length; i++)\r\n    {\r\n      if (nBetuk(nevek&#x5B;i]) &gt; nBetuk(nevek&#x5B;max2]))\r\n      {\r\n        max2 = i;\r\n      }\r\n    }\r\n    System.out.println(&quot;A legtobb n betu ebben a nevben van: &quot;+\r\n        nevek&#x5B;max2]);\r\n     \r\n\/\/ 3. verzi\u00f3 (split finoms\u00e1gokkal)\r\n    int max3 = 0;\r\n    for( int i = 1; i &lt; nevek.length; i++ )\r\n    {\r\n      if( nevek&#x5B;i].split(&quot;n|N&quot;,-1).length-1 &gt; \r\n          nevek&#x5B;max3].split(&quot;n|N&quot;,-1).length-1)\r\n      {\r\n        max3 = i;\r\n      }\r\n    }\r\n    System.out.println(&quot;A legtobb n betu ebben a nevben van: &quot;+\r\n        nevek&#x5B;max3]);\r\n\r\n    System.out.println(&quot;5. feladat&quot;);\r\n\/\/ Vannak-e azonos vezet\u00e9knev\u0171 emberek?\r\n \r\n\/\/ mindet mindegyikkel osszehasonlithatjuk\r\n    boolean azonosVezetek = false;\r\n    for (int i = 0; i &lt; vezeteknevek.length-1; i++)\r\n    {\r\n      for (int j = i+1; j &lt; vezeteknevek.length; j++)\r\n      {\r\n        if( vezeteknevek&#x5B;i].equals(vezeteknevek&#x5B;j]))\r\n        {\r\n           azonosVezetek = true;\r\n           break;\r\n        }\r\n      }\r\n    }\r\n    \r\n    if( azonosVezetek )\r\n    {\r\n      System.out.println(&quot;Vannak azonos vezeteknevu &quot;\r\n          + &quot;emberek.&quot;);\r\n    }\r\n    else\r\n    {\r\n      System.out.println(&quot;Nincsenek azonos vezeteknevu &quot;\r\n          + &quot;emberek.&quot;);\r\n    }\r\n\r\n    System.out.println(&quot;6. feladat&quot;);\r\n\/\/    Vannak-e azonos keresztnev\u0171 emberek?\r\n\/\/    (minden keresztn\u00e9vnek egyeznie kell)\r\n    String&#x5B;] keresztnevek = new String&#x5B;nevek.length];\r\n    for( int i = 0; i &lt; nevek.length; i++ )\r\n    {\r\n      keresztnevek&#x5B;i] = nevek&#x5B;i].split(&quot; &quot;,2)&#x5B;1];\r\n    }\r\n    \r\n\/\/ mindet mindegyikkel osszehasonlithatjuk\r\n    boolean azonosKereszt = false;\r\n    for (int i = 0; i &lt; keresztnevek.length-1; i++)\r\n    {\r\n      for (int j = i+1; j &lt; keresztnevek.length; j++)\r\n      {\r\n        if( keresztnevek&#x5B;i].equals(keresztnevek&#x5B;j]))\r\n        {\r\n           azonosKereszt = true;\r\n           break;\r\n        }\r\n      }\r\n    }\r\n    \r\n    if( azonosKereszt )\r\n    {\r\n      System.out.println(&quot;Vannak teljesen azonos &quot;\r\n          + &quot;keresztnevu emberek.&quot;);\r\n    }\r\n    else\r\n    {\r\n      System.out.println(&quot;Nincsenek teljesenazonos &quot;\r\n          + &quot;keresztnevu emberek.&quot;);\r\n    }\r\n\r\n\/\/ 7. feladat megold\u00e1sa k\u00e9s\u0151bb\r\n     \r\n  }\r\n   \r\n  public static int nBetuk(String nev)\r\n  {\r\n\/\/    hogy az n \u00e9s N bet\u0171ket ne k\u00fcl\u00f6nb\u00f6ztess\u00fck meg\r\n    nev = nev.toLowerCase();\r\n    int db = 0;\r\n    for (int i = 0; i &lt; nev.length(); i++)\r\n    {\r\n      if (nev.charAt(i) == 'n')\r\n      {\r\n        db++;\r\n      }\r\n    }\r\n    return db;\r\n  }  \r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>A feladat aminek a megold\u00e1s\u00e1t itt k\u00f6zz\u00e9teszem, itt tal\u00e1lhat\u00f3. A feladatot csak forr\u00e1sk\u00f3dk\u00e9nt teszem k\u00f6zz\u00e9. Az utols\u00f3 feladat megold\u00e1s\u00e1t k\u00e9s\u0151bb teszem hozz\u00e1. \/** * * @author https:\/\/webotlet.hu *\/ package webotlet_fajlkezeles04; import java.io.IOException; import java.io.RandomAccessFile; public class Webotlet_Fajlkezeles04 { public static <a class=\"more-link\" href=\"https:\/\/www.webotlet.hu\/?p=2533\">Tov\u00e1bb <span class=\"screen-reader-text\">  A F\u00e1jlkezel\u00e9s 4. feladat megold\u00e1sa Java nyelven<\/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":[211],"tags":[51,27,57,31,47,22,43,90,66,144,60,89,87,104,61,143,183,194,25,29,26,15,163],"class_list":["post-2533","post","type-post","status-publish","format-standard","hentry","category-java-fajlkezeles-feladatok","tag-alap-algoritmus","tag-alap-algoritmusok","tag-boolean","tag-ciklus","tag-ciklusok","tag-fajlkezeles","tag-feltetel-vizsgalat","tag-feltetelvizsgalat","tag-for","tag-java_programozas","tag-karakterlanc","tag-maximumkereses","tag-megszamlalas","tag-megszamolas","tag-metodus","tag-programozas","tag-programozas-feladat","tag-programozasi-tetelek","tag-randomaccessfile","tag-string","tag-szovegfajl","tag-tomb","tag-tombok"],"_links":{"self":[{"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts\/2533","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=2533"}],"version-history":[{"count":2,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts\/2533\/revisions"}],"predecessor-version":[{"id":2536,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=\/wp\/v2\/posts\/2533\/revisions\/2536"}],"wp:attachment":[{"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2533"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2533"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webotlet.hu\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2533"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}