Rezolvare PBinfo #2640

Decorative Icon Problema: ExtrageCuvant / 2640

Decorative IconAutor: Darius

Cerința

Să se scrie o funcţie denumită extrageCuvant care să primească ca parametri trei şiruri de caractere în această ordine: destinatie, sursa, separatori şi un număr întreg prin intermediul căruia se va specifica numărul cuvântului ce se doreşte a fi preluat din şirul de caractere sursă şi pus în şirul destinaţie.

În şirul separatori se vor găsi o serie de simboluri ce sunt utilizate pentru a despărţi cuvintele (de exemplu virgulă sau spaţiu, etc.).

Dacă funcţia a copiat cu succes cuvântul căutat în şirul destinaţie, va returna valoarea 1. Altfel va returna valoarea 0 (de exemplu dacă textul conţine doar trei cuvinte şi se doreşte găsirea cuvântului al patrulea).

Date de intrare

Funcţia va primi patru parametri în următoarea ordine: şirul destinaţie, şirul sursă, şirul conţinând lista simbolurilor considerate separatori de cunvinte şi poziţia cuvântului dorit, poziţie indexată de la 0 (primul cuvânt este cel de pe poziţia 0).

Date de ieșire

Funcţia va returna 1 dacă a reuşit să găsească un cuvânt pe poziţia căutată şi în şirul destinaţie va fi copiat acest cuvânt sau 0 în caz contrar.

Restricții și precizări

Nu se va folosi nici o funcţie de prelucrare a şirurilor de caractere (nu se va include cstring).

Exemplu:

Apelul:

extrageCuvant(dest, "Un mar, doua mere, trei mere, toata livada !", ", !", 0);

va returna valoarea 1 şi va copia şirul Un în dest.

Apelul:

extrageCuvant(dest, "Un mar, doua mere, trei mere, toata livada !", ", !", 4);

va returna valoarea 1 şi va copia şirul trei în dest.

Apelul:

extrageCuvant(dest, "Un mar, doua mere, trei mere, toata livada !", ", !", 8);

va returna valoarea 0, conţinutul variabilei dest nu va fi relevant în acest caz (nu va fi testat).

Explicație

Cuvintele din şirul Un mar, doua mere, trei mere, toata livada ! atunci când sunt despărţite de simbolurile virgulă, spaţiu şi semnul exclamării sunt acestea: Un, mar, doua, mere, trei, mere, toata, livada. Ele sunt pe poziţiile 0, 1, …, 7. Căutarea cuvântului de pe poziţia 0 va copia în destinaţie cuvântul Un şi funcţia va returna valoarea 1, în timp ce apelul pentru al optulea cuvânt va avea ca valoare rezultată 0.

Decorative Icon Explică rezolvarea folosind Inteligența Artificială

Folosește modelul nostru de AI special antrenament pentru a rezolva problemele de pe PBinfo! În baza creditelor AI primești explicații pentru probleme, pe care le alegi și le rulezi exact atunci când dorești, la un singur click distanță! Află mai multe informații:

👉 Achiziționează credite AI
Andrei Frîntu
Andrei Frîntu

Fondatorul platformei - mentor Academia

LinkedIn Instagram GitHub
© Copyright 2026 - CodulLuiAndrei.ro - Toate drepturile sunt rezervate