Advertisement
Guest User

Untitled

a guest
Mar 30th, 2020
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.38 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4.  
  5.  
  6. using namespace std;
  7.  
  8. bool czy_pierwsza(long long int n)
  9. {
  10. if(n<2)
  11. return false;
  12.  
  13. for(long long int i=2;i*i<=n;i++)
  14. if(n%i==0)
  15. return false;
  16. return true;
  17. }
  18. bool palindrom(string myString) {
  19. int l = myString.length()-1;
  20. string myStringReverse = "";
  21.  
  22. while (l >= 0) {
  23. myStringReverse += myString[l];
  24. l--;
  25. }
  26.  
  27. if (myStringReverse == myString) {
  28. return true;
  29. }
  30. else {
  31. return false;
  32. }
  33. }
  34.  
  35. int main()
  36. {
  37. ifstream plik;
  38. plik.open("daneB.txt");
  39. string line;
  40. string liniapom;
  41. int najdluzszy = 0;
  42. int wiecejnizjeden = 0;
  43. int iloscslow = 0;
  44. int maxwystapien = 0;
  45. string dluginochal;
  46. string maxslowowys;
  47. string helpline;
  48. int liczbawys;
  49. int pierwsze = 0;
  50. int palindromy = 0;
  51. if (plik.good()) {
  52. while (getline(plik, line)){
  53. //line = line.ignore('\n');
  54. long long int hex = stoll(line, 0, 16);
  55. if (czy_pierwsza(hex)){
  56. pierwsze++;
  57. }
  58.  
  59. if (palindrom(line)){
  60. palindromy++;
  61. }
  62.  
  63. int dlugosc = line.length();
  64. if (dlugosc > najdluzszy){
  65. najdluzszy = dlugosc;
  66. dluginochal = line;
  67. }
  68. liniapom = line;
  69. //cout << liniapom << endl;
  70. int miejsce = plik.tellg();
  71. plik.clear();
  72. plik.seekg(0);
  73. int ilerazydziadzie = 0;
  74. while (getline(plik, line)){
  75. if (line == liniapom){
  76. ilerazydziadzie++;
  77. }
  78. }
  79. if (ilerazydziadzie > 1){
  80. iloscslow++;
  81.  
  82. }
  83. if (ilerazydziadzie > maxwystapien){
  84. maxwystapien = ilerazydziadzie;
  85. maxslowowys = liniapom;
  86. liczbawys = ilerazydziadzie;
  87. }
  88.  
  89.  
  90. plik.clear();
  91. plik.seekg(miejsce);
  92. }
  93. cout << "longest: " << dluginochal << endl;
  94. cout << "ilosc slow co sie powtarzaja: " << iloscslow << endl;
  95. cout << maxslowowys << endl;
  96. cout << liczbawys << endl;
  97. cout << pierwsze << endl;
  98. cout << palindromy << endl;
  99.  
  100. }
  101. return 0;
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement