Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. using System;
  2.  
  3.  
  4. namespace zad4
  5. {
  6. /*
  7. * Stwórz funkcję bool CzyAnagram(string napis1, string napis2) , która sprawdza, czy tekst napis1 jest anagramem tekstu napis2,
  8. * ignorując wielkość liter (np. gniady to anagram dla Gdynia).
  9. * Należy zaimplementować własny algorytm, nie korzystając z funkcji klasy string (np. Split, Contains, etc.).
  10. * W tekście znajdują się tylko litery.
  11. */
  12. class Program
  13. {
  14.  
  15. static string ZamianaNaMale(string tekst)
  16. {
  17. string male = "";
  18. for (int i = 0; i < tekst.Length; i++)
  19. {
  20. if (tekst[i] >= 'A' && tekst[i] <= 'Z')
  21. male += Convert.ToChar(tekst[i] + ('a' - 'A'));
  22. else male += tekst[i];
  23. } return male;
  24. }
  25.  
  26. static string SortujAlfabetycznie(string tekst)
  27. { // zamieniamy na male
  28. string male = ZamianaNaMale(tekst);
  29. // tworzymy tablicę znaków itp.
  30. char[] znaki = new char[male.Length];
  31. // tymczasowy znak jakiś tam
  32. char tmp;
  33. // przypisujemy elementy string male do tablicy znakow
  34. string zwracany="";
  35. for (int i = 0; i < male.Length; i++)
  36. {
  37. znaki[i] = male[i];
  38. }
  39. // dwie pętle żeby jechała p owszystkich elementach muszą być i algorytm zamiany jest
  40. for (int j = 0; j < znaki.Length; j++)
  41. {
  42.  
  43.  
  44. for (int i = 0; i < znaki.Length - 1; i++)
  45. {
  46. if (znaki[i] > znaki[i + 1])
  47. {
  48. tmp = znaki[i];
  49. znaki[i] = znaki[i + 1];
  50. znaki[i + 1] = tmp;
  51. }
  52.  
  53. }
  54. }
  55. for (int i = 0; i < znaki.Length; i++)
  56. {
  57. zwracany += znaki[i];
  58. }
  59. return zwracany;
  60. }
  61. static bool CzyAnagram(string napis1, string napis2)
  62. {
  63. string pierwszyWyraz = SortujAlfabetycznie(napis1);
  64. string drugiWyraz = SortujAlfabetycznie(napis2);
  65. return pierwszyWyraz == drugiWyraz;
  66. }
  67.  
  68. static void Main(string[] args)
  69. {
  70. // Console.WriteLine(SortujAlfabetycznie("DBA"));
  71. Console.WriteLine(CzyAnagram("bda","dabi"));
  72. Console.ReadKey();
  73. }
  74. }
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement