ucimprogramiratihehe sub 24.10.2020 22:35

Pozdrav, 

 

Dobila sam kolegij na faksu, nikad se nisam susrela sa Java programiranjem pa ako mi netko moze pomoci. 

 

Zadatak 1. 

Napisi program koji ce sa tipkovnici upisivati rijeci sve dok se ne upise KRAJ. Nakon toga ispisati samo rijeci koje imaju jednak broj samoglasnika i suglasnika. 

 

Pls ljudi, help haahah

Equi pon 26.10.2020 14:13

U zadatku trebam iskoristiti atribut klase Osoba da bi u metodi postavio da je zaražen virusom ako to osoba izabere.

Klasa Osoba:

public class Osoba implements Zarazno{
private String ime;
private String prezime;
private Integer starost;
private Zupanija zupanija;
private Bolest zarazenBolescu;
private Osoba[] kontaktiraneOsobe;

 

Klasa bolest i virus koji ju nasljeđuju:

public class Bolest extends ImenovaniEntitet{
private String naziv;
private Simptom[] simptomi;

 


@Override
public void prelazakZarazeNaOsobu(Osoba[] osobe) {
//OVDJE TREBA STAVITI KOD
}

 

Metoda:

public interface Zarazno {
void prelazakZarazeNaOsobu(Osoba[] osobe);
}

 

Ovako sam unosio Bolesti:

 

Bolest[] bolesti = unosBolesti(scanner, simptomi);

private static Bolest[] unosBolesti(Scanner scanner, Simptom[] simptomi){
ImenovaniEntitet[] bolesti = new Bolest[BR_BOLESTI];

System.out.printf("Unesite podatke o %d bolesti ili virusa: %n", BR_BOLESTI );
for(int i=0; i<bolesti.length; i++){
System.out.print("Unosite li bolest ili virus: ");
String naziv = scanner.nextLine();
;
System.out.print("Unesite broj simptoma: ");
Integer brojSimptoma= scanner.nextInt();
scanner.nextLine();

Simptom[] simptomiBolesti = new Simptom[brojSimptoma];
for(int j = 0; j < brojSimptoma; j++){
simptomiBolesti[j] = odabirSimptoma(scanner, simptomi, j+1);

}

bolesti[i] = new Bolest(naziv, simptomiBolesti);

}
return (Bolest[]) bolesti;

 

Trebam iskoristiti atribut zaraženBolešću iz klasse Osoba u klasi Virus (prelazakZarazeNaOsobu)i postaviti da je osoba zaražena virusom ako korisnik to izabere, sad drugi par opanak je da trebam kod unosaBolesti napraviti objekt tipa Virus ako korisnik to izabere ili objekt Bolesti. Ne želi mi dobro učitati pitanje ako ga označim kao kod.

Equi pon 30.11.2020 16:38

Pozdrav trebao bi pomoć kod file-ova.

Imam klasu Županija koja nasljeđuje klasu Osoba. Htio bi u metodi stvoriti novu datoteku i vratiti ju kako bi podatke kasnije mogao koristiti.

 

File listaZupanija = ucitajZupanije();

 

Ovako šaljem u metodu:

 

File zupanije = new File("dat/zupanije.txt");

try(FileReader fileReader = new FileReader(zupanije);
BufferedReader reader = new BufferedReader(fileReader)){
String procitanaLinija;
List<Zupanija> listaZupanija= new ArrayList<>();
while((procitanaLinija = reader.readLine()) != null){
   Long id = Long.parseLong(procitanaLinija);
   String naziv = reader.readLine();
   Integer brStanovnika =Integer.parseInt(reader.readLine());
   Integer brZarazenih = Integer.parseInt(reader.readLine());
   listaZupanija.add(new Zupanija(id, naziv, brStanovnika, brZarazenih));
System.out.println(id + " naziv" + naziv + " " + brStanovnika + " " + brZarazenih);

}

}catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}

System.out.println("KRAJ");
return zupanije;

 

Input mi je:

id = 1

naziv = Zagrebačka županija

brStanovnika = 100000

zaraženih = 222

 

Dobro mi ispisuje, ali kada iza one funkcije u mainu idem čitati listuŽupanija (iako nije lista) ne pokazuje mi ništa, a ne znam vjerojatno niti kako ju dobro čitati. 

Hvala

Top Bugovac pon 30.11.2020 17:53
Equi kaže...

Pozdrav trebao bi pomoć kod file-ova.

Imam klasu Županija koja nasljeđuje klasu Osoba. Htio bi u metodi stvoriti novu datoteku i vratiti ju kako bi podatke kasnije mogao koristiti.

 

File listaZupanija = ucitajZupanije();

 

Ovako šaljem u metodu:

 

File zupanije = new File("dat/zupanije.txt");

try(FileReader fileReader = new FileReader(zupanije);
BufferedReader reader = new BufferedReader(fileReader)){
String procitanaLinija;
List<Zupanija> listaZupanija= new ArrayList<>();
while((procitanaLinija = reader.readLine()) != null){
   Long id = Long.parseLong(procitanaLinija);
   String naziv = reader.readLine();
   Integer brStanovnika =Integer.parseInt(reader.readLine());
   Integer brZarazenih = Integer.parseInt(reader.readLine());
   listaZupanija.add(new Zupanija(id, naziv, brStanovnika, brZarazenih));
System.out.println(id + " naziv" + naziv + " " + brStanovnika + " " + brZarazenih);

}

}catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}

System.out.println("KRAJ");
return zupanije;

 

Input mi je:

id = 1

naziv = Zagrebačka županija

brStanovnika = 100000

zaraženih = 222

 

Dobro mi ispisuje, ali kada iza one funkcije u mainu idem čitati listuŽupanija (iako nije lista) ne pokazuje mi ništa, a ne znam vjerojatno niti kako ju dobro čitati. 

Hvala

 daj main

Ova listaZupanija koju stvoris ti ima scope samo metode koju si zalijepio 

Equi pon 30.11.2020 19:11
Top Bugovac kaže...
Equi kaže...

Pozdrav trebao bi pomoć kod file-ova.

Imam klasu Županija koja nasljeđuje klasu Osoba. Htio bi u metodi stvoriti novu datoteku i vratiti ju kako bi podatke kasnije mogao koristiti.

 

File listaZupanija = ucitajZupanije();

 

Ovako šaljem u metodu:

 

File zupanije = new File("dat/zupanije.txt");

try(FileReader fileReader = new FileReader(zupanije);
BufferedReader reader = new BufferedReader(fileReader)){
String procitanaLinija;
List<Zupanija> listaZupanija= new ArrayList<>();
while((procitanaLinija = reader.readLine()) != null){
   Long id = Long.parseLong(procitanaLinija);
   String naziv = reader.readLine();
   Integer brStanovnika =Integer.parseInt(reader.readLine());
   Integer brZarazenih = Integer.parseInt(reader.readLine());
   listaZupanija.add(new Zupanija(id, naziv, brStanovnika, brZarazenih));
System.out.println(id + " naziv" + naziv + " " + brStanovnika + " " + brZarazenih);

}

}catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}

System.out.println("KRAJ");
return zupanije;

 

Input mi je:

id = 1

naziv = Zagrebačka županija

brStanovnika = 100000

zaraženih = 222

 

Dobro mi ispisuje, ali kada iza one funkcije u mainu idem čitati listuŽupanija (iako nije lista) ne pokazuje mi ništa, a ne znam vjerojatno niti kako ju dobro čitati. 

Hvala

 daj main

Ova listaZupanija koju stvoris ti ima scope samo metode koju si zalijepio 

 Ovo mi je sve u mainu

ContoNick pon 30.11.2020 22:06
ucimprogramiratihehe kaže...

Pozdrav, 

 

Dobila sam kolegij na faksu, nikad se nisam susrela sa Java programiranjem pa ako mi netko moze pomoci. 

 

Zadatak 1. 

Napisi program koji ce sa tipkovnici upisivati rijeci sve dok se ne upise KRAJ. Nakon toga ispisati samo rijeci koje imaju jednak broj samoglasnika i suglasnika. 

 

Pls ljudi, help haahah

Malo truda, Google-aj:

http://www.java2s.com/Tutorials/Java/Data_Type_How_to/String/Read_console_input_until_y_is_typed.htm copy paste, samo srediti while() dio i spremiti sve u neki collection.

https://beginnersbook.com/2019/04/java-program-to-count-vowels-and-consonants-in-a-string/ copy paste, doslovno uglaviti da radi,

a ovo ispisati rijeci treba osmisliti, prva ideja, ako dobro spremiš unos u klasu tipa

class UserInput {
   String input;
   int numVowels;
   int numConsonants;
   String key;

}

gdje je key numVowels + # + numConsonants, onda lako napraviš groupBy po key-u, spremiš u collection i ispišeš tamo gdje ih ima više od 1. 

Sretno :)

 

Equi prvi zadatak, ovako iz glave

@Override
public void prelazakZarazeNaOsobu(Osoba[] osobe) {
   //OVDJE TREBA STAVITI KOD
   for(Osoba jednaOsoba: osobe){
      if(jednaOsoba.getZarazenBolescu() instanceof Virus){
         this.setZarazenBolescu(jednaOsoba.getZarazenBolescu());
      }
   }
}

ako sam dobro shvatio prođeš kroz polje osoba i ako je na nekoj osobi postavljen Virus, onda je automatski i ova osoba zaražena ?! Uglavnom mislim da te traži korištenje instanceof operatora (pošto je nasljeđivanje očito tema zadatka).

 

Equi drugi zadatak, TopBugovac je dobro napisao, List<Zupanija> listaZupanija= new ArrayList<>(); je lokalna varijabla unutar metode i ti njoj ne može pristupiti iz neke druge metode. Drugo ova metoda je malo čudno, čita fajl, rezultat čitanja spremi u listu i vrati objekt File. A šta s onim što je pročitala i spremila u listu ? Ništa, učita i baci u smeće. To je vjerojatno i problem ovdje.

Pretpostavljam ono što želiš je da ti vrati listaZupanija, tj. rezultat čitanja, primjer:

public class Main {

   public static void main(String[] args) {
      List<Zupanija> ucitaneZupanije = procitajZupanijeIVratiListu();
      System.out.println("Ispis ucitanih zupanija iz liste:");
     ucitaneZupanije.forEach(zupanija -> System.out.println(zupanija.getNaziv()));
   }

   public static List<Zupanija> procitajZupanijeIVratiListu() {
     List<Zupanija> listaZupanija = new ArrayList<>();

     File zupanije = new File("dat/zupanije.txt");

     try (FileReader fileReader = new FileReader(zupanije);
        BufferedReader reader = new BufferedReader(fileReader)) {
        String procitanaLinija;

        while ((procitanaLinija = reader.readLine()) != null) {
           Long id = Long.parseLong(procitanaLinija);
           String naziv = reader.readLine();
           Integer brStanovnika = Integer.parseInt(reader.readLine());
           Integer brZarazenih = Integer.parseInt(reader.readLine());
           listaZupanija.add(new Zupanija(id, naziv, brStanovnika, brZarazenih));
           System.out.println(id + " naziv" + naziv + " " + brStanovnika + " " + brZarazenih);
        }

     } catch (FileNotFoundException ex) {
     ex.printStackTrace();
     } catch (IOException ex) {
     ex.printStackTrace();
     }
     return listaZupanija;
  }

}

Equi pon 30.11.2020 23:38

Hvala.

Želim učitati datoteke i s njima raditi dalje. Sad jel to moguće na način kako sam si ja to zamislio ili nije. Prije sam koristio liste, sad bih trebao file koristiti. Dakle kasnije bi iz file-a treba čitati (u drugim metodama), a ne iz lista.

Equi sub 9.1.2021 08:53

Pozdrav ekipa nadam se da ste dobro.

 

Imam problem s JavaFX invalid inputom kojeg zapisujem u file. Naime, ako korisnik ne unese ništa u field javlja mi se NumberFormatException for string "" (treba input tipa long). Stavio sam alert i info ako je korisnik unio dobar input (ili nije) no zanima me da li je bolje staviti neki try/catch da uhvatim to ili postoji neki drugi način. Input provjeravam s varijabla == null || varijabal.getText().isEmpty().

 

 

racma2233 sri 24.3.2021 17:40

Pozdrav,
Trazim osobu koju ja zainteresirana za odradit jako dobro placen "posao" u Javi.
Radi se o podacima iz poker igre koji bi se prikazivali na web serveru.
Ovako izgleda vec postojeci otprilike https://ibb.co/5rtGFQh. Na server bi prebacili vec postojuce podatke koji bi onda bili automatizirani za prikaz.

Java je samo kao primjer tako da ukoliko ima bolje rjesenje voljan sam slusati.

 

Za vise informacija zainteresiranima PM.