funkcja stricmp c++

blost
Użytkownik
Użytkownik
Posty: 1994
Rejestracja: 20 lis 2007, o 18:52
Płeć: Mężczyzna
Podziękował: 52 razy
Pomógł: 271 razy

funkcja stricmp c++

Post autor: blost »

Witam... Potrzebuje napisac funkcje ktora bedzie porownywała 2 wyrazy. niby nic trudnego ale jednak caly czas cos sie pieprzy... moglby ktos wklepac kod tego czegos ? bede bardzo wdzieczny
bartek118
Użytkownik
Użytkownik
Posty: 5974
Rejestracja: 28 lut 2010, o 19:45
Płeć: Mężczyzna
Lokalizacja: Toruń
Podziękował: 15 razy
Pomógł: 1251 razy

funkcja stricmp c++

Post autor: bartek118 »

Kod: Zaznacz cały

bool porownaj(string a, string b)
{
if(a.length()!=b.length()) return 0;

for(int i=0;i<a.length();i++)
{
if(a[i]!=b[i]) return 0;
}

return 1;
}
blost
Użytkownik
Użytkownik
Posty: 1994
Rejestracja: 20 lis 2007, o 18:52
Płeć: Mężczyzna
Podziękował: 52 razy
Pomógł: 271 razy

funkcja stricmp c++

Post autor: blost »

kurcze... sorki ze nie sprecyzowalem problemu, chodzi o segregacje alfabetyczna.
co prawda napisalem cos takiego co dziala

Kod: Zaznacz cały

#include<iostream.h>
#include<conio.h>
#include<string>
using namespace std;
main()
{     
string t,p;
cin>>t;
cin>>p;

////////////najmniejsza dlugość///////////////////
int a=t.length();
int b=p.length();
if (a<b)
{a=a+1;}
if (a>b)
{a=b+1;}
if(a==b) 
{a=b;}
/////////////sprawdzenie ktory wyraz jest wczeniej////////////////////
int k=0;
for(int i=0;i<a;i++)
{      
if(t[i]<p[i])
{k=1;break;}  
if(t[i]>p[i])
{k=2;break;}  
if(t[i]==p[i])
{k=0;}        
}
cout<<k;
system("pause");
}
kwestia tego ze ja mam na wejsciu macierz i musze to posegregowac kolumnami alfabetycznie (jedna kolumna jeden wyraz)
czy mozna zamienic tablice na stringa ?
Awatar użytkownika
mcbob
Użytkownik
Użytkownik
Posty: 479
Rejestracja: 15 gru 2008, o 19:02
Płeć: Mężczyzna
Lokalizacja: Poland
Pomógł: 69 razy

funkcja stricmp c++

Post autor: mcbob »

bartek118 pisze:czy mozna zamienic tablice na stringa ?
Tak, na przykład w ten sposób, tylko po co?

Kod: Zaznacz cały

string s;
char charBuf[100]="ala"; 
s.insert(0, charBuf);
blost
Użytkownik
Użytkownik
Posty: 1994
Rejestracja: 20 lis 2007, o 18:52
Płeć: Mężczyzna
Podziękował: 52 razy
Pomógł: 271 razy

funkcja stricmp c++

Post autor: blost »

caly czas mam po prostu problem z wklepaniem tego no i tak pomyslale sobie ze jezeli bym zmienial na stringi tro troszke latwiej byloby to przekazywac do funkcji... chodziaz teraz to juz nie wiem...
jest moze jakis sposob by wczytac n stringow ?
Awatar użytkownika
mcbob
Użytkownik
Użytkownik
Posty: 479
Rejestracja: 15 gru 2008, o 19:02
Płeć: Mężczyzna
Lokalizacja: Poland
Pomógł: 69 razy

funkcja stricmp c++

Post autor: mcbob »

Sorki ze nie czytałem twoich wcześniejszych postów i kodów ale zwyczajnie mi się nie chce. Więc może nie do końca zrozumiałem w czym masz problem.
blost pisze:no i tak pomyslale sobie ze jezeli bym zmienial na stringi tro troszke latwiej byloby to przekazywac do funkcji
A tablice charów jest trudno przekazać? Przecież to prawie tak samo proste.
blost pisze:jest moze jakis sposob by wczytac n stringow ?
Gdzie wczytać? Ze standardowego wejścia? To po prostu w pętli.

Nie wiem z czym konkretnie masz problem. Masz kilka wyrazów i chcesz je posortować leksykograficznie? Jeśli tak to albo robisz to radixsortem i nie potrzebujesz w ogóle funkcji do porównywania stringów, albo robisz to np. quicksortem i wtedy taka funkcja się przyda (jeśli nie możesz korzystać z gotowych funkcji bibliotecznych). No chyba że tobie chodzi tylko i wyłącznie o tą funkcję (nie interesuje cię sortowanie), ale ją już chyba masz podaną w drugim poście. Zadawaj konkretne pytania to otrzymasz odpowiedzi.
ODPOWIEDZ