Advertisement
Guest User

Untitled

a guest
Dec 10th, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.60 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7.  
  8. namespace _6_laboras
  9. {
  10.     class Darbininkas
  11.     {
  12.         private string pav, vard;
  13.         private string bankopav;
  14.         private int sasknum, dirbti, dienos, ikainis;
  15.  
  16.         public Darbininkas()
  17.         {
  18.             pav = "";
  19.             vard = "";
  20.             bankopav = "";
  21.             sasknum = 0;
  22.             dirbti = 0;
  23.             ikainis = 0;
  24.  
  25.         }
  26.  
  27.         public void Dėti(string pav, string vard, string bankopav, int sasknum, int ikainis)
  28.         {
  29.             this.pav = pav;
  30.             this.vard = vard;
  31.             this.bankopav = bankopav;
  32.             this.sasknum = sasknum;
  33.             //this.dirbti = dirbti;
  34.             this.ikainis = ikainis;
  35.         }
  36.         public void DėtiDienas(int dien) { dienos = dien; }
  37.         public string ImtiPav() { return pav; }
  38.         public string ImtiVard() { return vard; }
  39.         public string ImtiBanko() { return bankopav; }
  40.         public int ImtiSask() { return sasknum; }
  41.         public int ImtiDienas() { return dienos; }
  42.         public int ImtiDarba() { return dirbti; }
  43.         public int ImtiIkaini() { return ikainis; }
  44.  
  45.         public override string ToString()
  46.         {
  47.             string eilute;
  48.             eilute = string.Format("{0, -15} {1, -10} {2,2:d} {3, 6:f2}",
  49.                 pav, vard, bankopav, sasknum);
  50.             return eilute;
  51.         }
  52.         /*
  53.         public static bool operator <= (Darbininkas pirmas, Darbininkas antras)
  54.         {
  55.             return pirmas.klas < antras.klas || pirmas.klas == antras.klas && pirmas.dirbti < antras.dirbti;
  56.         }
  57.         public static bool operator >=(Darbininkas pirmas, Darbininkas antras)
  58.         {
  59.             return pirmas.klas > antras.klas || pirmas.klas == antras.klas && pirmas.dirbti > antras.dirbti;
  60.         }
  61.         */
  62.  
  63.  
  64.     }
  65.     class Fabrikas
  66.     {
  67.         const int CMaxMk = 1000;
  68.         const int CMaxDn = 30;
  69.         private Darbininkas[] Darbininkai;
  70.         public int n { get; set; }
  71.         private int[,] WWW;
  72.         public int m { get; set; }
  73.  
  74.         public Fabrikas()
  75.         {
  76.             n = 0;
  77.             Darbininkai = new Darbininkas[CMaxMk];
  78.  
  79.             m = 0;
  80.             WWW = new int[CMaxMk, CMaxDn];
  81.  
  82.  
  83.  
  84.  
  85.         }
  86.         public Darbininkas Imti(int nr) { return Darbininkai[nr]; }
  87.         public void Dėti(Darbininkas ob) { Darbininkai[n++] = ob; }
  88.         public void DėtiWWW(int j, int x, int r){ WWW[j, x] = r; }
  89.         public int ImtiWWW(int j, int x) { return WWW[j,x];}
  90.     }
  91.     class Program
  92.     {
  93.         const string CFd = "...\\...\\Duomenys.txt";
  94.         const string CFr="...\\...\\Atsakymai.txt";
  95.  
  96.         static void Main(string[] args)
  97.         {
  98.             Fabrikas darbi = new Fabrikas();
  99.             SkaitytiDuomenis(CFd, ref darbi);
  100.             Spausdinti(CFr, darbi, "Darbininkai");
  101.         }
  102.             static void SkaitytiDuomenis(string fd, ref Fabrikas darbi)
  103.             {
  104.                 string pav, vard, bankopav;
  105.                 int sasknum,ikainis,nn,mm;
  106.                 string line;
  107.  
  108.                 using(StreamReader reader = new StreamReader(fd))
  109.                 {
  110.                 line = reader.ReadLine();
  111.                 string[] parts;
  112.                 parts = line.Split(';');
  113.                 nn = int.Parse(parts[0]);
  114.                 mm = int.Parse(parts[1]);
  115.                 ikainis = int.Parse(parts[2]);
  116.                 for(int i = 0; i < nn; i++)
  117.                 {
  118.                     line = reader.ReadLine();
  119.                     parts = line.Split(';');
  120.                     pav = parts[0];
  121.                     vard = parts[1];
  122.                     bankopav = parts[2];
  123.                     sasknum = int.Parse(parts[3]);
  124.                     Darbininkas darb;
  125.                     darb = new Darbininkas();
  126.                     darb.Dėti(pav, vard, bankopav, sasknum, ikainis);
  127.                     darbi.Dėti(darb);
  128.                        
  129.                 }
  130.                 int dienos;
  131.                 darbi.n = nn;
  132.                 darbi.m = mm;
  133.                 for(int j = 0; j < darbi.n; j++)
  134.                 {
  135.                     line = reader.ReadLine();
  136.                     parts = line.Split(';');
  137.                     for(int x=0; x < darbi.m; x++)
  138.                     {
  139.                         dienos = int.Parse(parts[x]);
  140.                         darbi.DėtiWWW(j, x, dienos);
  141.                     }
  142.                 }
  143.  
  144.  
  145.             }
  146.  
  147.             }
  148.         static void Spausdinti(string fv, Fabrikas darbi, string antraste)
  149.         {
  150.             using (var fr = File.AppendText(fv))
  151.             {
  152.                 string bruksnys = new string('-', 46);
  153.                 fr.WriteLine(antraste);
  154.                 fr.WriteLine();
  155.  
  156.                 fr.WriteLine(bruksnys);
  157.                 fr.WriteLine("Nr.Pavardė   Vardas   BankoPav  Sasknum");
  158.                 fr.WriteLine(bruksnys);
  159.                 for (int i = 0; i < darbi.n; i++)
  160.                     fr.WriteLine(" {0}. {1}", i + 1, darbi.Imti(i).ToString());
  161.                 fr.WriteLine(bruksnys);
  162.                 fr.WriteLine();
  163.  
  164.                 for(int j = 0; j < darbi.n; j++)
  165.                 {
  166.                     //fr.Write("{0,4:d}.", j + 1);
  167.                     for(int x = 0; x < darbi.m; x++)
  168.                         fr.Write("{0,3:d}", darbi.ImtiWWW(j, x));
  169.                     fr.WriteLine();
  170.                        
  171.                    
  172.  
  173.                 }
  174.              
  175.             }
  176.         }
  177.          
  178.     }
  179. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement