To zależy na jakim stopniu zaawansowania jesteś. Jeżeli dopiero niedawno nauczyłeś się funkcji to może potrzebujesz więcej poćwiczyć praktykowanie ich? Nie chodzi mi o planowanie całego programu, ale o przerabianiu już gotowego kodu bez funkcji na taki, który je ma. Może problem tkwi w tym, że wiedza o funkcjach jeszcze się nie uleżała w głowie odpowiednio długo? :) Inną rzeczą jest to, że może jeszcze jest za wcześnie na planowanie? Rób jeden element, a później dokładaj kolejny... a później podziel na funkcje. Gdy nabierzesz więcej zrozumienia będziesz już dzielił program na funkcje automatycznie. Ja miałem czasami tak, że chciałem zrobić coś super-mega, ale nie wiedziałem od, której strony ugryźć. W programowaniu (zwłaszcza gdy jesteś początkującym) podczas pisania większego kodu często zmienia się koncepcje jak coś ma wyglądać. Zwłaszcza, że nie wie się jeszcze wielu rzeczy. Jakiś problem, który nam zajmie 20 linii komuś zajmie 2... Zmieniając jedną rzecz okazuje się, że inne elementy przestają działać... Następnie poprawia się wszystko...
Więc jeżeli jesteś zupełnie początkującym to nie planuj wszystkiego na sztywno. Musisz zrobić jeden element w kodzie i zaplanować jeden kolejny. Nie za dużo. Musisz widzieć umysłem więcej kodu niż planować sobie zadania. Jeżeli nie masz odpowiedniego doświadczenia zaplanujesz sobie coś co prawdopodobnie można by zrobić na 1000 sposobów inaczej, prościej. Natomiast sama praktyka przyniesie rezultaty i będziesz mógł z czasem planować znacznie dalej. Aż w końcu okaże się, że będziesz planował program funkcjami bez rozpisywania planu na kartce. No umówmy się przynajmniej w mniej zaawansowanych programach :)
Podałeś przykład programu z losowaniem n-liczb. Ja z doświadczenia widzę, że będzie na pewno funkcja:
int losuj(int przedzial_od, int przedzial_do)
Ewentualnie jakąś funkcje losuj_kilka_i_wypisz_na_ekran... Napisz ten program bez funkcji i następnie go podziel. Wymyśl sobie programy do robienia przykładów. Nie muszą być one skomplikowane pod względem innych doznań niż funkcje. Żeby nie gubić celu lekcji :) Np.:
- tablica liczb oblicz średnią arytmetyczną, geometryczną, harmoniczną...
- menu z wyborem opcji za pomocą switch
- dodawania, odejmowanie - nie kalkulator to by było za proste - weźmy wektory! +iloczyn skalarny, moduł etc
To może być cokolwiek co da się podzielić na funkcje :) Po prostu ćwicz :)