Заменить строчные буквы на заглавные

Добрый вечер. Помогите пожалуйста, с написанием кода.

Задание: написать функцию, которая в заданном буфере все первые буквы длинных слов (> 3) заменяет на заглавные, а остальные — на строчные. Короткое слово должно начинаться с заглавной только если это первое слово строки.