Ładny brzuch

problem : wyswietla mi spacje, ale nie liczy ile razy sie powtorzyla (tak jak przy innych literach) :(

ma ktos jakis pomysl ?
... mile widzane rady, przyklady ...

formy grzecznosciowe : prosze , dziekuje : )

tutaj caly kod wklejam...

#include <iostream>
#include <string.h>
#include <ctype.h>

using namespace std;
char litera[20];
char zdanie[20];
char zda2[20];
int tab1[20];
int offset=0;
int ilosc;

bool GETWORD(char* theString,char* litera, int&offset);
char oblicz(int ilosc, char tb[]);
////////////////////////////////////////////////////////////////////////////////

int main(){

cout<< "Podaj zdanie: ";
cin.getline(zdanie,sizeof(zdanie));

ilosc=strlen(zdanie);
oblicz(ilosc , zdanie);

while (GETWORD(zdanie,litera,offset)){
cout << endl;
}
system("PAUSE");
return 0;
}

///////////funkcja wyswitlajaca zdanie przy uzyciu//////////////////////////////
///////////operacji arytmetycznych na wskaznikach///////////////////////////////

bool GETWORD(char* theString,char* litera,int& offset){

if (!theString[offset]) //sprawdza czy koniec lancucha
return 0;

char *w1, *w2;
w1=w2=theString+offset; //wskazuje nastepne slowo

for (int i=0;i<(int)strlen(w1)&& !isalnum(w1[0]); i++) //pomijanie wiodacych spacji
w1++;

if(!isalnum(w1[0])) //sprawdza czy znalazlo slowo
return 0;

w2=w1; // w1 i w2 wskazuja na poczatek nastepnego slowa

while (isalnum(w2[0])) //przesuwamy w2 na koniec
w2++;

int len =int (w2-w1);

strncpy (litera,w1,len);

litera[len]='\0';

for (int j = int(w2-theString); j<(int)strlen(theString)&& !isalnum(w2[0]);j++){
w2++;
}

offset = int(w2-theString);

int i=0;
while(*(litera+i)) {
cout<<*(litera+i)<< "\t" << tab1[i] << endl;
i++;
}
return 1;
}

////////////////////////////////////////////////////////////////////////////////

char oblicz(int ilo, char zda[]){

int ille, max=0;
char znak;
strcpy(zda2,zda);

for(int i=0;i<20;i++){

ille = 0;
for( int j=0;j<ilo;j++){
if(zda[j] == zda2[i]){
ille++;
}
}
tab1[i]=ille;
}
}



BTW: do czego ten program i co on robi?

program wyglada tak :

podaj zdanie : przyklad dzialania

wynik :
p 1
r 1
z 1
y 1
k 1
l 2
a 4
d 2
1
d 2
z 1
i 2
a 4
l 2
a 4
n 1
i 2
a 4

wyswietla zdanie w pionie i oblicza ile razy dana literka sie powtorzyla ....

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •