Я новичок в C ++ и кодировании в целом. Я пытаюсь создать простую программу, которая, по сути, состоит из двух слов и сообщит вам, являются ли эти два слова анаграммами или нет. Я также понимаю, что, вероятно, существует заранее созданная функция для сортировки строки, например массива, однако я Я пытаюсь asp переработать саму концепцию и, следовательно, почему я пытаюсь создать функцию.
Вот небольшой фрагмент кода, который я написал до сих пор.
Фрагмент кода
Проблема, с которой я сейчас сталкиваюсь, заключается в том, что когда я вызываю функцию для сортировки строки, строка не сортируется! Извините, если есть простое решение, я новичок. Это логическая проблема или синтаксис? Большое вам спасибо!
#include <iostream>
#include <string>
using namespace std;
//Function Declarations
string sortString(string user_input);
//Program Body
int main()
{
string user_input_one, user_input_two;
cout << "Welcome to Sandip's Anagram Checker! \nPlease Input two words that you'd like the check!";
sortString(user_input_one);
sortString(user_input_two);
if (user_input_one == user_input_two)
cout << "These two words are Anagrams of each other!";
else
cout << "These are not Anagrams!";
return 0;
}
//Function Definations
string sortString(string user_input)
{
string temp_string = user_input;
int i,j;
for (i = 0; i<user_input.length();i++)
{
for (j=0; j<user_input.length();j++)
{
if (user_input[i] == user_input[j])
{
temp_string[i] = user_input[j];
}
else if (user_input[i] > user_input[j])
{
temp_string[i] = user_input[j];
}
else if (user_input[i] < user_input[j])
{
temp_string[i] = user_input[i];
}
}
}
return temp_string;
}