Zmienianie pierwszych liter wyrazu na duże.

0

Cześć, mam do napisania program w którym po wczytaniu zdania złożonego z liter oraz spacji wypisze zdanie, w którym pierwsze litery każdego z wyrazów będą wielkie, a pozostałe litery w wyrazach małe.

Najlepiej jakby do wykonania kodu zostały użyte następujące komendy: string zdanie; unsigned int i; pętla for ; toupper, tolower

Jeżeli ktoś umiałby to zrobić nawet nie używając powyższych funkcji, to i tak bardzo proszę o podesłanie rozwiązania, ponieważ jutro muszę oddać gotowy projekt.

2

A sam nie chciałbyś może zrobić swojego projektu?

0

@kq: Próbowałem wiele razy, ale mam wiele problemów. Chcę zobaczyć gotowe rozwiązanie i zobaczyć co robiłem źle.

2

Pokaż te próby, chętnie pomożemy zidentyfikować problemy

3
#include <iostream>
#include <cctype>
using namespace std;

int main()
{
	for(int i,sp=1;(i=cin.get())!=EOF;cout.put(i)) if(isspace(i)) sp=1; else sp=!(i=(sp?toupper(i):tolower(i)));
	return 0;
}

https://ideone.com/XdhTHO

4
#include <boost/locale.hpp>
#include <iostream>
#include <string>

int main() {
    boost::locale::generator gen;
    std::locale loc = gen("pl_PL.UTF-8");
    std::locale::global(loc);

    std::string text = "Cześć, mam do napisania program w którym po "
        "wczytaniu zdania złożonego z liter oraz spacji wypisze zdanie, "
        "w którym pierwsze litery każdego z wyrazów będą wielkie, a pozostałe "
        "litery w wyrazach małe.";

    std::cout << boost::locale::to_title(text) << std::endl;
}
5
doggy_ napisał(a):

... używając powyższych funkcji, to i tak bardzo proszę o podesłanie rozwiązania, ponieważ jutro muszę oddać gotowy projekt.

Co za nauczyciel sadysta, kwadrans przed północą daje projekt na dzień następny.
To się nadaje do prokuratury.

1 użytkowników online, w tym zalogowanych: 0, gości: 1