Advertisement
Guest User

Untitled

a guest
Mar 21st, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. BIBLIOTEKA:
  2.  
  3. using System;
  4. using System.Collections;
  5.  
  6. namespace Zadanie2
  7. {
  8. public class Primes : IEnumerator
  9. {
  10. private int licznik;
  11.  
  12. private bool PrimeCheck(int n) //sprawdzamy czy jest pierwsza
  13. {
  14. if (n < 2) return false;
  15.  
  16. for (int i = 2; i < n - 1; i++)
  17. {
  18. if (n % i == 0) return false;
  19. }
  20.  
  21. return true;
  22. }
  23.  
  24. public Primes() //konstruktor
  25. {
  26. licznik = 1;
  27. }
  28.  
  29. public bool MoveNext() //nastepny element kolekcji, az do max value inta
  30. {
  31. licznik++;
  32. while (!PrimeCheck(licznik)) licznik++;
  33. return licznik < int.MaxValue;
  34. }
  35.  
  36. public void Reset() //ustawia licznik na 1 (reset)
  37. {
  38. licznik = 1;
  39. }
  40.  
  41. public object Current //pobiera biezacy element kolekcji
  42. {
  43. get
  44. {
  45. return licznik;
  46. }
  47. }
  48. }
  49.  
  50.  
  51. public class PrimeCollection : IEnumerable
  52. {
  53. public IEnumerator GetEnumerator()
  54. {
  55. return new Primes();
  56. }
  57. }
  58. }
  59.  
  60.  
  61.  
  62. TESTY:
  63.  
  64. using System;
  65. using System.Collections.Generic;
  66. using System.Linq;
  67. using System.Text;
  68. using System.Threading.Tasks;
  69. using Zadanie2;
  70.  
  71. namespace Zadanie_2_Prime_Testy
  72. {
  73. class MainClass
  74. {
  75. public static void Main(string[] args)
  76. {
  77. Zadanie2.PrimeCollection pc = new Zadanie2.PrimeCollection();
  78. foreach (int p in pc)
  79. System.Console.WriteLine(p);
  80. }
  81. }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement