Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- package tesztverseny.cnd;
- import java.util.*;//importok
- import java.io.*;
- /**
- *
- * @author user
- */
- public class repeat {
- /**
- * @param args the command line arguments
- */
- public static void main(String[] args) throws IOException {//esemény kezelés az exceptionok miatt amit a bufferreader dobhat
- BufferedReader valtozo = new BufferedReader(new FileReader("valaszok.txt"));//file megynitás olvasásra
- int n = 500; //tömb elemszám inicializálása
- String versenyzo[] = new String[n];//tároló tömb inicializálása
- String valaszok[] = new String[n];//tároló tömb inicializálása
- String sor;//változó amibe beolvasod az active sort
- String DBS[];//az a tomb amiben a sor változót spliteled
- int counter = 0;//léptető számláló
- String one = valtozo.readLine();//első sor beolvasása
- while ((sor = valtozo.readLine()) != null) {//beolvasás indítása amig a fileban a sor nem üres
- DBS = sor.split(" ");//beolvasott sor tördelése a zárójelben megatott argomentum alapján
- versenyzo[counter] = DBS[0];//tárolás
- valaszok[counter] = DBS[1];//tárolas
- counter++; //sorszamlalo
- }
- valtozo.close();//beolvasás lezárása
- for (int i = 0; i < counter; i++) {//ciklus inditása a kiiratásnak
- System.out.println(versenyzo[i] + " " + valaszok[i]);//kiiratás
- }
- System.out.println("2.feladat");
- System.out.println("versenyzo" + counter);//file sorainak kiiratása
- System.out.println("3.feladat");
- Scanner be = new Scanner(System.in);//billenyűzetről való adat bekérés
- String en = be.nextLine();//szöveg beolvasása és tárolása Scanner változóba
- String e = null; //üres string létrehozása
- for (int i = 0; i < 500; i++) {//ciklus indítása
- if (versenyzo[i].equals(en)) {//aktuális tömb aktuális elemények vizsgálata az equals() függvénynel syn:op1.equals(op2)
- System.out.println(" A versenyzo azonositoja: " + " valasz: " + valaszok[i]);//kiiratás
- e = valaszok[i];//aktuális elem eltárolása az üres változóba
- break;//megszakítás vagy kitörés
- }
- }
- System.out.println("4.feladat");
- System.out.println(one); //file első sorának
- for (int i = 0; i < 14; i++) {//ciklus indítása
- if (e.charAt(i) == one.charAt(i)) {//string charakterenkénti összehasonlítása
- System.out.print("+");//igaz ág
- } else {
- System.out.print(" ");//hamis ág
- }
- }
- System.out.println();//sortörés
- System.out.println(e);//változó értékének kiiratása
- System.out.println("5.feladat");
- int p = 0;
- Scanner feladatsorszam = new Scanner(System.in);//billenyűzetről való adat bekérés
- System.out.print("A feladat sorszáma= ");
- int sorok = feladatsorszam.nextInt() - 1; //beolvasott változó eltárolása kiegészitve a helyes indexeléssel
- for (int i = 0; i < counter; i++) {//ciklus indítása
- if (one.charAt(sorok) == valaszok[i].charAt(sorok)) {//String vizsgálata charakterek alapján [összehasonlítás] --> syn:Stringváltozó.charAt(charakter index)
- p++;//1 el való léptetés
- }
- }
- float szazalek = ((float) p) / counter * 100;//% számítás
- System.out.println("A feladatra " + p + "fo, A versenyzok:");//kiiratás
- System.out.printf("%.2f", szazalek);//2 tizedesjegyre kerekített kiiratás
- System.out.println("%-a adott helyes valaszt");//kiiratás
- System.out.println("6.feladat");
- FileWriter pont = new FileWriter("pontok.txt");//file megnyítása írásra
- for (int i = 0; i < counter; i++) {//ciklus indítása
- int emb = 0;//minden i-re külön számláló létrehozása
- for (int j = 0; j < 14; j++) {//vizsgálati ciklus indítása
- if (one.charAt(j) == valaszok[i].charAt(j)) {//string charakterenkénti vizsgálata
- if (j < 6) {
- emb = emb + 3;//változó 3-al való léptetése
- //emb +=3; valtozomat 3al léptettem
- } else if (5 < j && j < 11) {//elágazásba épített elégazás
- emb += 4;
- } else if (10 < j && j < 14) {//elágazásba épített elégazás
- emb += 5;
- } else {
- emb += 6;
- }
- }
- } pont.write (versenyzo[i] + " " + emb + " \n");//file ba íratás
- } pont.close();//file írás lezárása NEM KIHAGYHATÓ!!!!!
- System.out.println("7.feladat");
- BufferedReader helyezes = new BufferedReader (new FileReader("pontok.txt"));//file megnyitása olvasásra
- String azonosito[] = new String[n] ;//tároló tömb inicializálása
- int pontok [] = new int [n] ; //tároló tömb inicializálása
- String sor1; //változó a sorbeolvasásnak
- String DBS1[]; //sor változó splitelése miatt tömb létrehozása és tárolás
- counter = 0;//már korábban létrehozott léptető ki 0-ázása a további használat miatt
- while ( (sor1 = helyezes.readLine())!= null) { //beolvasás indítása amig a fileban a sor nem üres
- DBS1 = sor1.split(" ");//sorváltozó splitelése szóköz alapján
- azonosito[counter] = DBS1 [0];//tárolás
- pontok[counter]= Integer.parseInt(DBS1[1]);//tárolás
- counter++;
- }
- helyezes.close(); //file olvasásásának lezárása
- Arrays.sort (azonosito);//sorbarendezés
- Arrays.sort (pontok);//sorbarendezés
- int ponts[] = new int[n];//tároló tömb inicializálása
- System.out.println("A verseny legjobbjai:");//kiiratás
- for (int i = 0; i < counter; i++) {//ciklus indítás
- System.out.println(azonosito[i] + " " + pontok[i]);//kiiratás
- if (! Arrays.asList(ponts).contains(pontok[i])); {//tömb konverálása listává alakítás és elem vizsgálat hogy az adott elem benne van e a listában
- ponts[i] = pontok[i];//elemek másolása
- if (ponts.length == 3 ) {//if ami addig fut amig a tömb mérete el nem éri a 3at
- break;//kitörés
- }
- }
- }for (int i = 0; i <ponts.length; i++) {//ciklus indítása a tömb méretéig
- int pontindex = Arrays.asList(ponts).indexOf(i);//tömb listává alakítása elem indexhelyének meghatározása miatt
- if (pontindex == -1) {//ha az adott index -1 akkor az nem eleme a listának
- break;//kitörés
- }else
- System.out.println(pontindex + 1 + " dij"+ p);//kiiratás
- }
- System.out.println("8.feladat");
- int[] num = new int[10];
- RandFel(num);//paraméteres függvény hívás
- }
- public static void RandFel(int[] tomb) {//függvény fejlece MINDIG A MAIN-EN KÍVŰL!!!!!
- for (int i = 0; i < tomb.length; i++) {//cilkus indítása a paraméterben megkapott tömb méretéig
- i = (int)(Math.random()*41)+10; //random szám generálása syn:Math.random()*(felsohatar-alsohatar+1)+alsohatar
- System.out.println(i);//aktuális eléem kiiratása
- }
- }
- }//összehasonlítás if ben
- /*
- * string.equals(string)
- * int == int
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement