Advertisement
miknik97

Saba_Kaiba

Dec 10th, 2018
409
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.43 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7.  
  8. namespace AlgorytmyKolos2
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.             /*
  15.             //ZADANIE 1.
  16.             //Za pomocą algorytmu rekurencyjnego i iteracyjnego oblicz:
  17.             //a) sumę licz od k do n dla k < n
  18.             //b) silnię n
  19.  
  20.             int k = 2, n = 5, wynik = 0;
  21.             for (int i = k; i <= n; i++)
  22.             {
  23.                 wynik = wynik + i;
  24.             }
  25.             Console.WriteLine("Wynik: {0}", wynik);
  26.             Console.WriteLine("Wynik: {0}", Suma(k, n));
  27.  
  28.             int silnia = 1;
  29.             for(int i = 2; i <= n; i++)
  30.             {
  31.                 silnia = silnia * i;
  32.             }
  33.             Console.WriteLine("Wynik: {0}", silnia);
  34.             Console.WriteLine("Wynik: {0}", Silnia(n));
  35.             */
  36.  
  37.             /*
  38.             //ZADANIE 2.
  39.             //Znajdź a8 gdzie: an=(-1)^n dla n<4; an=an-1+2(bn-3) dla n>=4;
  40.             //bn=1 dla n<5; bn=bn-1+bn-2 dla n>=5 za pomocą algorytmu
  41.             //iteracyjnego i rekurencyjnego
  42.  
  43.             double n = 8;
  44.             double[] a = new double[20];
  45.             double[] b = new double[20];
  46.             for(int i = 0; i <= n; i++)
  47.             {
  48.                 if(i<4) a[i] = Math.Pow(-1, i);
  49.                 else
  50.                 {
  51.                     for(int j = 0; j <= (n + 3); j++)
  52.                     {
  53.                         if (j < 5) b[j] = 1;
  54.                         else b[j] = b[j - 1] + b[j - 2];
  55.                     }
  56.                     a[i] = a[i - 1] + 2 * b[i + 3];
  57.                 }
  58.             }
  59.             Console.WriteLine("Wynik: {0}", a[8]);
  60.             Console.WriteLine("Wynik: {0}", CiagA(8));
  61.             */
  62.  
  63.             //ZADANIE 3.
  64.             //Dla dowolnego folderu znaleźć podkatalog z największą
  65.             //liczbą plików utworzonych w 2018 roku
  66.  
  67.             int i = 0, ile = 0;
  68.             int[] ilosc = new int[1000];
  69.             string[] nazwa = new string[1000];
  70.             DirectoryInfo dir = new DirectoryInfo(@"D:\Music");
  71.             DirectoryInfo[] specDir = dir.GetDirectories();
  72.  
  73.             foreach (var directory in specDir)
  74.             {
  75.                 foreach (var fi in directory.GetFiles())
  76.                 {
  77.                     if(fi.CreationTime.Year == 2018) ile++;
  78.                 }
  79.                 nazwa[i] = directory.ToString();
  80.                 ilosc[i] = ile;
  81.                 ile = 0;
  82.                 i++;
  83.             }
  84.             Console.WriteLine("{0}: {1}", nazwa[ilosc.ToList().IndexOf(ilosc.Max())], ilosc.Max());
  85.  
  86.             //ZADANIE 4.
  87.             //Znaleźć 2 największe pliki i podać ich nazwę
  88.             Console.ReadLine();
  89.         }
  90.  
  91.         static int Silnia(int n)
  92.         {
  93.             if (n == 0) return 1;
  94.             else return n * Silnia(n - 1);
  95.         }
  96.  
  97.         static int Suma(int k, int n)
  98.         {
  99.             if (n == k) return k;
  100.             else return Suma(k, n - 1) + n;
  101.         }
  102.  
  103.         static double CiagA(double n)
  104.         {
  105.             if (n < 4) return Math.Pow(-1, n);
  106.             else return CiagA(n - 1) + 2 * CiagB(n + 3);
  107.         }
  108.  
  109.         static double CiagB(double n)
  110.         {
  111.             if (n < 5) return 1;
  112.             else return CiagB(n - 1) + CiagB(n - 2);
  113.         }
  114.     }
  115. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement