witam
czy jest jakaś funkcja która porównuje 2 stringi leksykograficznie który jest większy, ? mam zadanie napisać taką funkcje ale c++ nigdy się nie uczyłem tylko javy a tam nie byłoby problemu, czy mam porównywać pozycje wyrazów z tablicy ascII czy istnieje jakaś gotowa funkcja?
0
2
Po prostu użyj <
3
Jakbyś wpisał hasło w google c++ porównanie leksykograficzne
czyli uogólniając to samo co wpisałeś tutaj, otrzymasz taki wynik jako pierwszą pozycję https://riptutorial.com/pl/cplusplus/example/3820/porownanie-leksykograficzne
0
ok już rozumiem
mam jeszcze napisać funkcje zamieniająca małe litery na duże w stringu, zrobiłem coś takiego ale wyskakuje mi błąd
In function 'std::string upstr(std::string)':
[Error] 'std::string' has no member named 'lenght'
#include <iostream>
#include <string>
using namespace std;
string upstr (string st)
{
string wynik = st;
for(int i =0; i< wynik.lenght(); i++)
{
wynik[i] = toupper(wynik[i]);
}
return wynik;
}
int main()
{
cout<<upstr("ania");
return 0;
}
0
zmieniłem lenght na size i już działa
1
@dark41: Jeśli decydujesz się na użycie toupper
to można prościej
string upstr (string st)
{
std::transform(st.begin(), st.end(), st.begin(), ::toupper);
return st;
}