Advertisement
niske

Filmovi (Bakurski)

May 9th, 2024
612
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.80 KB | None | 0 0
  1. public class ZadFilmovi{
  2.    
  3.     public static void main (String[] args) {
  4.         SpisakFilmova Movies = new SpisakFilmova();
  5.         Movies.unesiFilm("Interstelar");
  6.             Movies.unesiGlumca("Dusan", "Interstelar");
  7.             Movies.unesiGlumca("Dusan", "Interstelar");
  8.             Movies.unesiGlumca("Jovan", "Interstelar");
  9.            
  10.         Movies.unesiFilm("Superman");
  11.             Movies.unesiGlumca("Mila", "Superman");
  12.             Movies.unesiGlumca("Mila", "Superman");
  13.             Movies.unesiGlumca("Maks", "Superman");
  14.             //Movies.unesiGlumca("Jovan", "Superman");
  15.            
  16.         Movies.unesiFilm("Iron man");
  17.             Movies.unesiGlumca("Milan", "Iron man");
  18.             Movies.unesiGlumca("Zoran", "Iron man");
  19.             Movies.unesiGlumca("Dusan", "Iron man");
  20.             //Movies.unesiGlumca("Jovan", "Iron man");
  21.        
  22.         Movies.unesiFilm("Spajdermen");
  23.             Movies.unesiGlumca("Jovan", "Spajdermen");
  24.             Movies.unesiGlumca("Milan", "Spajdermen");
  25.             Movies.unesiGlumca("Zoran", "Spajdermen");
  26.             Movies.unesiGlumca("Dusan", "Spajdermen");
  27.            
  28.         Movies.unesiFilm("Zombie");
  29.             Movies.unesiGlumca("Jovan", "Zombie");
  30.             Movies.unesiGlumca("Milan", "Zombie");
  31.             Movies.unesiGlumca("Zoran", "Zombie");
  32.             Movies.unesiGlumca("Dusan", "Zombie");
  33.            
  34.             Movies.unesiGlumca("TEST", "");
  35.            
  36.         System.out.println(Movies);
  37.        
  38.         Movies.izbrisiFilmove("Jovan");
  39.         //Movies.izbrisiFilmove("Jovan");
  40.        
  41.         System.out.println("\n" + Movies);
  42.     }
  43. }
  44.  
  45. class SpisakFilmova{
  46.        
  47.         //Film
  48.         class Film{
  49.             String ime;
  50.             Film veza;
  51.             Glumci sadrzaj;
  52.            
  53.             public Film(String ime){
  54.                 this.ime = ime;
  55.                 this.veza = null;
  56.                 this.sadrzaj = null;
  57.             }
  58.            
  59.             public String toString(){
  60.                 if (sadrzaj == null) // OVO MI JE CHATGPT REKAO :(
  61.                     return ime + ": Nema glumaca";
  62.                    
  63.                 Glumci tek = sadrzaj;
  64.                 String s = ime + ": " + tek.imePrezime;
  65.                 tek = tek.veza;
  66.                
  67.                 while(tek != null){
  68.                     s += ", " + tek;
  69.                     tek = tek.veza;
  70.                 }
  71.                
  72.                 return s;
  73.             }
  74.         }
  75.        
  76.         //Glumci
  77.         class Glumci{
  78.             String imePrezime;
  79.             Glumci veza;
  80.            
  81.             public Glumci(String s){
  82.                 this.imePrezime = s;
  83.                 this.veza = null;
  84.             }
  85.            
  86.             public String toString(){
  87.                 return imePrezime + "";
  88.             }
  89.         }
  90.        
  91.         Film prviFilm;
  92.        
  93.         //Metode:
  94.        
  95.         //Dodavanje filmva
  96.         public boolean proveraFilmova(String cilj){
  97.             Film tek = prviFilm;
  98.            
  99.             while(tek != null){
  100.                 if(cilj.equalsIgnoreCase(tek.ime)){
  101.                     return true;
  102.                 }
  103.                
  104.                 tek = tek.veza;
  105.             }
  106.            
  107.             return false;
  108.         }
  109.        
  110.         public void unesiFilm(String ime){
  111.             if(!proveraFilmova(ime)){
  112.                 Film tek = prviFilm;
  113.                 prviFilm = new Film(ime);
  114.                 prviFilm.veza = tek;
  115.             }
  116.         }
  117.        
  118.         //Dodavanje glumaca
  119.         public boolean proveraGlumaca(String cilj, String imeFilma){
  120.             Film tekFilm = prviFilm;
  121.            
  122.             while(tekFilm != null){
  123.                 if(tekFilm.ime == imeFilma)
  124.                     break;
  125.                    
  126.                 tekFilm = tekFilm.veza;
  127.             }
  128.            
  129.             if(tekFilm != null){
  130.                 Glumci tekGlumac = tekFilm.sadrzaj;
  131.                
  132.                 while(tekGlumac != null){
  133.                     if(cilj.equalsIgnoreCase(tekGlumac.imePrezime))
  134.                         return true;
  135.                
  136.                     tekGlumac = tekGlumac.veza;
  137.                 }
  138.                
  139.                 tekFilm = tekFilm.veza;
  140.             }
  141.            
  142.             return false;
  143.         }
  144.        
  145.         public void unesiGlumca(String ime, String film){
  146.             if(!proveraGlumaca(ime, film)){
  147.                 Film tek = prviFilm;
  148.                
  149.                 while(tek != null){
  150.                     if(tek.ime == film){
  151.                         Glumci tekGlumci = tek.sadrzaj;
  152.                         tek.sadrzaj = new Glumci(ime);
  153.                         tek.sadrzaj.veza = tekGlumci;
  154.                         break;
  155.                     }
  156.                    
  157.                     tek = tek.veza;
  158.                 }
  159.             }
  160.         }
  161.        
  162.         //Izbrise prvo filmove na pocetku liste, pa onda ostale
  163.         public void izbrisiFilmove(String glumac){
  164.             if(prviFilm == null){
  165.                 System.out.println("Nema filmova");
  166.             } else {
  167.                
  168.                 while(prviFilm != null){
  169.                     Glumci tekGlumac = prviFilm.sadrzaj;
  170.                     boolean pomocna = true;
  171.                    
  172.                     while(tekGlumac != null){
  173.                         if(tekGlumac.imePrezime.equalsIgnoreCase(glumac)){
  174.                             prviFilm = prviFilm.veza;
  175.                             pomocna = false;
  176.                             break;
  177.                         }
  178.                        
  179.                         tekGlumac = tekGlumac.veza;
  180.                     }
  181.                    
  182.                     if(pomocna)
  183.                         break;
  184.                 }
  185.                
  186.            
  187.                 if(prviFilm != null){
  188.                     Film tekFilm = prviFilm.veza;
  189.                     Film prethodni = prviFilm;
  190.                    
  191.                     while(tekFilm != null){
  192.                         Glumci tekGlumac = tekFilm.sadrzaj;
  193.                        
  194.                         while(tekGlumac != null){
  195.                             if(tekGlumac.imePrezime.equalsIgnoreCase(glumac)){
  196.                                 prethodni.veza = tekFilm.veza;
  197.                                 break;
  198.                             }
  199.                            
  200.                             tekGlumac = tekGlumac.veza;
  201.                         }
  202.                        
  203.                         prethodni = tekFilm;
  204.                         tekFilm = tekFilm.veza;
  205.                     }
  206.                 }
  207.             }
  208.         }
  209.        
  210.        
  211.         //Ispis
  212.         public String toString(){
  213.             String s = "Spisak filmova:";
  214.            
  215.             if (prviFilm == null) // OVO MI JE CHATGTP REKAO :(
  216.                 return s + " Nema filmova";
  217.  
  218.             Film tek = prviFilm;
  219.            
  220.             while (tek != null){
  221.                 s += "\n" + tek;
  222.                 tek = tek.veza;
  223.             }
  224.            
  225.             return s;
  226.         }
  227. }
  228.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement