Advertisement
Guest User

LD1

a guest
Sep 22nd, 2013
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.60 KB | None | 0 0
  1. /*
  2.  * To change this template, choose Tools | Templates
  3.  * and open the template in the editor.
  4.  */
  5. package ld1;
  6.  
  7. /**
  8.  *
  9.  * @author E50
  10.  */
  11. public class LD1 {
  12.    
  13.    void veiksmas()
  14.    {
  15.         Eksponatas[] A=new Eksponatas[4]; // Išskiriama vieta pirmojo failo duomenims
  16.         Eksponatas[] B=new Eksponatas[3]; // Išskiriama vieta antrojo failo duomenims
  17.         Eksponatas[] C=new Eksponatas[10]; // Išskiriama vieta atrinktų pagal vartotojo kriterijus atrinktiems duomenims
  18.      
  19.         for (int i=0; i<4; i++)
  20.         {
  21.                 A[i]= new Eksponatas();
  22.         }
  23.        
  24.          for (int i=0; i<3; i++)
  25.         {
  26.                 B[i]= new Eksponatas();
  27.         }
  28.          
  29.           for (int i=0; i<10; i++)
  30.         {
  31.                 C[i]= new Eksponatas();
  32.         }
  33.  
  34.         String pav1 = "Mokykla1";
  35.         String pav2 = "Mokykla2";
  36.     int amz1 = 60; //Vartotojo nurodytas minimalus eksponato amžius pirmame duomenų faile
  37.         int amz2 = 40; //Vartotojo nurodytas minimalus eksponato amžius antrame duomenų faile
  38.         int kiekis1 = 10; //Minimalus vartotojo nurodytas eksponatų kiekis pirmame duomenu faile
  39.     int kiekis2 = 15; //Minimalus vartotojo nurodytas eksponatų kiekis antrame duomenu faile
  40.     double MaxKain = 1;
  41.     double kaina1 = 50; // Maksimali eksponato kaina iš pirmojo sąrašo
  42.     double kaina2 = 50; // Maksimali eksponato kaina iš antrojo sąrašo
  43.         double kie = 1;
  44.         Skaityti(A[0],"Eksponatas1", 105, 20, 10);
  45.         Skaityti(A[1],"Eksponatas2", 100, 25, 5);
  46.         Skaityti(A[2],"Eksponatas3", 49, 100, 100);
  47.         Skaityti(A[3],"Eksponatas4", 55, 70, 45);
  48.                
  49.         Skaityti(B[0],"Eksponatas5", 15, 60, 15);
  50.         Skaityti(B[1],"Eksponatas6", 90, 7, 10);
  51.         Skaityti(B[2],"Eksponatas7", 85, 1, 50);
  52.                
  53.     int kiek1 = Kiekis(A, amz1, kiekis1, kaina1);
  54.     int kiek2 = Kiekis(B, amz2, kiekis2, kaina2);
  55.     double MaxKaina1 = DidžiausiaKaina(A, MaxKain);
  56.     double MaxKaina2 = DidžiausiaKaina(B, MaxKain);
  57.        
  58.         int indeksas;
  59.         if (MaxKaina1 == MaxKaina2)
  60.              indeksas = 1;
  61.         else
  62.              indeksas = 2;
  63.        
  64.     int skaicius = Bendras(A, C, amz1, kiekis1, kaina1, kie,  0);
  65.     skaicius = Bendras(B, C, amz2, kiekis2, kaina2, kie, skaicius);
  66.  
  67.         SpausdintiEksponatus(A, pav1, kiek1, kaina1, amz1, kiekis1);
  68.         SpausdintiEksponatus(B, pav2, kiek2, kaina2, amz2, kiekis2);
  69.        
  70.         if (MaxKaina1>MaxKaina2)
  71.         Spausdinti(C,pav1);
  72.     else
  73.         Spausdinti(C,pav2);
  74.                    
  75.    }
  76.  
  77.     public static void main(String[] args) {      
  78.    
  79.         // TODO code application logic here
  80.         new LD1().veiksmas();  
  81.         }
  82.    
  83.     void SpausdintiEksponatus(Eksponatas A[],  String pav, int kiek, double kain, int a, int b)
  84. {  
  85.     System.out.printf( "Mokyklos " + pav + " pradiniai duomenys:\n");
  86.     for (int i=0;i<A.length;i++)
  87.     {
  88.             System.out.printf( A[i].DuotiPav() + " " + A[i].DuotiKainą() +" " + A[i].DuotiAmžių() +" " + A[i].DuotiKiekį()+" \n" );
  89.     }
  90.       System.out.printf( "-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n" );
  91.       System.out.printf( "Mokyklos " + pav + " sąraše yra " + kiek + " eksponatas(-ai), kurių kaina ne didesnė nei " + kain + " Lt, amžius yra ne mažesnis nei " + a + " metai(-ų) ir kiekis yra bent " + b + " vienetų.\n");
  92.           System.out.printf( "-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n" );
  93. }
  94.    
  95.     void Spausdinti(Eksponatas C[],  String pav)
  96. {  
  97.     System.out.printf( "Brangiausias eksponatas yra " + pav + " mokyklos sąraše\n" );
  98.     System.out.printf( "-------------------------------------------------------------------------------------------------------------------------------------------------------------------------\n" );
  99.     System.out.printf( "Sąrašas eksponatų tenkinančių vartotojo poreikius: \n");
  100.     for (int i=0; i <C.length ; i++)
  101.     {
  102.             System.out.printf( C[i].DuotiPav() + " " + C[i].DuotiKainą() +  " " + C[i].DuotiAmžių()+ " " + C[i].DuotiKiekį()+"\n");
  103.     }
  104.     System.out.printf( "-----------------------------------------------------------------------------------------------------------------------------\n" );
  105. }
  106.    
  107.     void Skaityti(Eksponatas A, String pav, double kaina, double amžius, double kiekis )
  108. {
  109.     A.Dėti(pav, kaina, amžius, kiekis);
  110. }
  111.    
  112.     int Kiekis(Eksponatas A[], int a, int b, double kain)
  113. {
  114.     int kiek;
  115.     kiek = 0;
  116.     for ( int i = 0; i < A.length ; i++)
  117.     {
  118.         if( (A[i].DuotiAmžių() >= a) && (A[i].DuotiKiekį() >= b) && (A[i].DuotiKainą() < kain))
  119.             kiek++;
  120.     }
  121.     return kiek;
  122. }
  123.     double DidžiausiaKaina(Eksponatas A[],  double  MaxKain)
  124. {
  125.         double  Max;
  126.         Max = MaxKain;
  127.     for ( int i = 0; i < A.length ; i++)
  128.     {
  129.         if ( A[i].DuotiKainą() > Max )
  130.         {
  131.             Max = A[i].DuotiKainą();
  132.         }
  133.                
  134.     }
  135.             return Max;
  136.  
  137. }
  138.    
  139.     int Bendras(Eksponatas A[],  Eksponatas C[],  int a, int b, double kain, double kie,  int sum )
  140. {
  141.     int sk = sum;
  142.     String y;
  143.     double x;
  144.     double z;
  145.     double k;
  146.     for (int i = 0; i< A.length; i++)
  147.     {
  148.         if( (A[i].DuotiAmžių() >= a) && (A[i].DuotiKiekį() >= b) && (A[i].DuotiKainą() < kain))
  149.         {
  150.             y = A[i].DuotiPav();
  151.             x = A[i].DuotiKainą();
  152.             z = A[i].DuotiAmžių();
  153.                         k = A[i].DuotiKiekį();
  154.             C[sk].Dėti(y,x,z,k);
  155.             sk++;
  156.         }
  157.     }
  158.         return sk;
  159. }
  160.  
  161. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement