łańcuchy tekstowe, symetryczność

0

Hejka, mam do wykonania takie zadanko i teraz pytanie, co ta funkcja powinna mi zwrócić, zeby było wiadomo czy podany łańcuch znaków jest symetryczny czy nie? Czy to co zrobiłem ma jakiś sens??

/*Napisz funkcję sprawdzającą czy zadany łańcuch znaków
ma symetryczną zawartość tzn, pierwszy znak jest równy ostatniemu,
drugi przedostatniemu itd.*/


#include <iostream>

using namespace std;
const int N=100;
bool CzySymetryczny(char * tekst)
{
	int poczatek = 0;
	int koniec = 0;
	
	while(tekst[koniec + 1] != 0) koniec++;
	
	while(poczatek <= koniec)
	{
		if(tekst[poczatek] != tekst[koniec])
			return false;
			
		poczatek++;
		koniec--;
	}
	
	return true;
}
int main()
{
	char tekst[N];
	cin.getline(tekst,N);
    cout <<endl;
    
    CzySymetryczny(tekst);
    return 0;       
}```
3

Dopisz taki kod a się dowiedz czy jest dobrze (to się nazywa pisanie testów):

boo testPalindrome()
{
     const struct { 
         char *input;
         bool expected;
     } testData[] {
           { "", true},
           { "a", true },
           { "aa", true  },
           { "aaa", true  },
           { "aba", true  },
           { "abba", true  },
           { "abbba", true  },

           { "ab", false },
           { "abc", false },
           { "abbc", false },
           { "abca", false },
           { "abbc", false },
           { "abbbc", false },
           { "abxca", false },
     };

     int failureCount = 0;
     for (auto data : testData) {
          if (data.expected != CzySymetryczny(data.input)) {
               ++failureCount;
               std::cout << "Test failed for: \"" << data.input << "\"\n";
               std::cout << "Expected result: " << data.expected << '\n';
          }
     }
     if (failureCount == 0) {
          std::cout << "Success\n";
     } else {
          std::cout << "Failed: " << failureCount  << "tests!\n";
     }
     return failureCount == 0;
}

Jeśli chcesz dowiedzieć się więcej polecam zainteresować się gtest.
Radziłbym sobie darować tylko jeśli programowanie to tylko przedmiot do zaliczania.

1 użytkowników online, w tym zalogowanych: 0, gości: 1