Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Napisati funkciju koja kao parametar prima rečenicu (niz od najviše 200 karaktera) i iz nje uklanja svaku riječ koja počinje velikim slovom. Pored toga, funkcija treba da prebroji ukupan broj riječi u rečenici prije izmjene. Koristiti sljedeći prototip funkcije:
- int ukloniRijeci(char []).
- Npr. ako je data rečenica: "Stari most u Mostaru spaja obale rijeke Neretve."
- funkcija je treba pretvoriti u: "most u spaja obale rijeke"
- Funkcija vraća broj riječi u polaznoj rečenici (prije odsijecanja ostalih riječi). Radi jednostavnosti rješenja, pretpostavite da je riječ bilo koji niz znakova razdvojen znakom razmak.
- */
- #include <iostream>
- using namespace std;
- int duzinaRecenice(char[]);
- int ukloniRijeci(char[]);
- void main() {
- char recenica[200] = { "Stari most u Mostaru spaja obale rijeke Neretve." };
- cout << "Recenica ima " << ukloniRijeci(recenica) << " rijeci" << endl;
- int i = 0;
- while (recenica[i] != '\0')
- cout << recenica[i++];
- system("pause>0");
- }
- int duzinaRecenice(char recenica[]) {
- int brojac = 0;
- while (recenica[brojac] != '\0')
- brojac++;
- return brojac;
- }
- int ukloniRijeci(char recenica[]) {
- int duzina = duzinaRecenice(recenica);
- int brRijeci = 0;
- for (int i = 0; i < duzina; i++) {
- while (recenica[i] != ' ')
- i++;
- brRijeci++;
- while (recenica[i] == ' ')
- i++;
- }
- for (int i = 0; i < duzina; i++) {
- if (recenica[i] >= 'A' && recenica[i] <= 'Z') {
- int j, k;
- j = k = i;
- while (recenica[j] != ' ' && j < duzina)
- j++;
- while (recenica[j] == ' ')
- j++;
- while (recenica[k] != '\0')
- recenica[k++] = recenica[j++];
- duzina = duzina - j + k;
- }
- }
- return brRijeci;
- }
Advertisement
Add Comment
Please, Sign In to add comment