Advertisement
Guest User

CHUJE TEPE KURWY HEBANE

a guest
Nov 16th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. #include <iostream>
  2. #include<fstream>
  3.  
  4. using namespace std;
  5.  
  6. //Anagramy to wyrazy, które składają się z tych samych liter np. aaabb i abbaa
  7. // funkcja przyjmująca dwa wyrazy (skladajace się ze znaków a-z i A-Z) i sprawdza czy wyrazy sa anagramami)
  8.  
  9.  
  10. bool czyAnagramy(string wyraz1, string wyraz2){
  11. int n1= wyraz1.size();
  12. int n2= wyraz2.size();
  13.  
  14. if(n1!=n2){
  15. return false;
  16. }
  17.  
  18.  
  19. int ileZnakowWyraz1[26], ileZnakowWyraz2[26];
  20.  
  21. //zerowanie tablic
  22. for(int i=0;i<26;i++){
  23. ileZnakowWyraz1[i]=0;
  24. ileZnakowWyraz2[i]=0;
  25. }
  26.  
  27. //zliczanie liter
  28.  
  29. for(int i=0;i<n1;i++){
  30.  
  31. if(wyraz1[i]>='a' && wyraz1[i] <='z'){
  32.  
  33. //dla małych liter
  34. ileZnakowWyraz1[ (int) wyraz1[i] -97]++;
  35.  
  36.  
  37. }else{
  38. //dla wielkich liter
  39. ileZnakowWyraz1[ (int) wyraz1[i] -65]++;
  40. }
  41.  
  42.  
  43. if(wyraz2[i]>='a' && wyraz2[i] <='z'){
  44.  
  45. //dla małych liter
  46. ileZnakowWyraz2[ (int) wyraz2[i] -97]++;
  47.  
  48.  
  49. }else{
  50. //dla wielkich liter
  51. ileZnakowWyraz2[ (int) wyraz2[i] -65]++;
  52. }
  53.  
  54. }
  55. //sprawdzanie zgodności tablic (identyczność tablic)
  56. for(int i=0;i<26;i++){
  57. if(ileZnakowWyraz1[i] !=ileZnakowWyraz2[i]){
  58. return false;
  59. }
  60. }
  61. return true;
  62. }
  63.  
  64.  
  65.  
  66. int main(){
  67.  
  68. string w1,w2;
  69. cout<<"Podaj napis 1"<<endl;
  70. cin >>w1;
  71. cout<<"Podaj napis 2"<<endl;
  72. cin >>w2;
  73. cout<<czyAnagramy(w1,w2)<<endl;
  74.  
  75.  
  76.  
  77. //zamiana liter na indeksy tablicy
  78. //kody znaków
  79. //cout << (int) 'a' <<endl; //97
  80. //cout << (int) 'b' <<endl; //98
  81. //cout << (int) 'a' -97 <<endl; //0
  82.  
  83.  
  84. return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement