4270 - F Concat: Difference between revisions
Vardai Erwin (talk | contribs) |
Vardai Erwin (talk | contribs) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 22: | Line 22: | ||
==Exemplu== | ==Exemplu== | ||
=== Exemplul 1=== | === Exemplul 1=== | ||
;Intrare | |||
:abcde | |||
:XYZ | |||
;Ieșire | |||
:abcdeXYZ. | |||
==Important== | ==Important== | ||
Line 44: | Line 48: | ||
return False | return False | ||
return True | return True | ||
def FConcat(s, d): | def FConcat(s, d): | ||
Line 51: | Line 56: | ||
:param d: al doilea șir de caractere | :param d: al doilea șir de caractere | ||
""" | """ | ||
s += d | s += d | ||
print("Rezultat: ", s) | print("Rezultat: ", s) | ||
# Program de testare | # Program de testare | ||
if __name__ == '__main__': | |||
s = input("Introduceti primul sir: ") | s = input("Introduceti primul sir: ") | ||
d = input("Introduceti al doilea sir: ") | d = input("Introduceti al doilea sir: ") | ||
FConcat(s, d) | if not validate_input(s, d): | ||
print("Datele de intrare nu corespund restrictiilor impuse.") | |||
else: | |||
print("Datele de intrare corespund restrictiilor impuse.") | |||
FConcat(s, d) | |||
Line 70: | Line 82: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==Explicație== | ||
Codul Python de mai sus definește o funcție de validare validate_input și o funcție principală FConcat care primește doi parametri: s și d, care reprezintă două șiruri de caractere. Funcția validate_input verifică dacă cele două șiruri primite sunt de tipul str și dacă au o lungime mai mare de 0, returnând True dacă ambele condiții sunt adevărate și False în caz contrar. | Codul Python de mai sus definește o funcție de validare validate_input și o funcție principală FConcat care primește doi parametri: s și d, care reprezintă două șiruri de caractere. Funcția validate_input verifică dacă cele două șiruri primite sunt de tipul str și dacă au o lungime mai mare de 0, returnând True dacă ambele condiții sunt adevărate și False în caz contrar. | ||
Latest revision as of 18:29, 6 May 2023
Cerință[edit | edit source]
Scrieți funcția cu următorul antet:
void FConcat(char s[], char d[])
Funcția primește ca parametri două șiruri de caractere și adaugă caracterele din d la sfârșitul lui s.
Date de intrare[edit | edit source]
Se citesc:
- Un șir de caractere "s" - reprezentând primul șir
- Un șir de caractere "d" - reprezentând al doilea șir
Date de ieșire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse.". Nicio valoare nu este returnată, dar șirul "s" este modificat astfel încât să conțină și caracterele din șirul "d" la sfârșit. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții de precizări[edit | edit source]
- Este garantat că vor încăpea în s toate caracterele din d.
- Nu puteți utiliza funcțiile pentru șirurile de caractere din biblioteca cstring
Exemplu[edit | edit source]
Exemplul 1[edit | edit source]
- Intrare
- abcde
- XYZ
- Ieșire
- abcdeXYZ.
Important[edit | edit source]
Soluţia propusă va conţine doar definiţia subprogramului cerut. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
Rezolvare[edit | edit source]
Rezolvare var. 1[edit | edit source]
<syntaxhighlight lang="python" line="1" start="1">
def validate_input(s, d):
""" Verifică dacă cele două șiruri de caractere primite ca parametri sunt valide :param s: primul șir de caractere :param d: al doilea șir de caractere :return: True dacă ambele șiruri sunt valide, False în caz contrar """ if not isinstance(s, str) or not isinstance(d, str): return False if len(s) == 0 or len(d) == 0: return False return True
def FConcat(s, d):
""" Adaugă caracterele din d la sfârșitul lui s :param s: primul șir de caractere :param d: al doilea șir de caractere """ s += d print("Rezultat: ", s)
- Program de testare
if __name__ == '__main__':
s = input("Introduceti primul sir: ") d = input("Introduceti al doilea sir: ") if not validate_input(s, d): print("Datele de intrare nu corespund restrictiilor impuse.") else: print("Datele de intrare corespund restrictiilor impuse.") FConcat(s, d)
</syntaxhighlight>
Explicație[edit | edit source]
Codul Python de mai sus definește o funcție de validare validate_input și o funcție principală FConcat care primește doi parametri: s și d, care reprezintă două șiruri de caractere. Funcția validate_input verifică dacă cele două șiruri primite sunt de tipul str și dacă au o lungime mai mare de 0, returnând True dacă ambele condiții sunt adevărate și False în caz contrar.
Funcția FConcat apelează mai întâi funcția validate_input pentru a verifica dacă cele două șiruri primite sunt valide. Dacă acestea sunt invalide, funcția afișează un mesaj corespunzător. În caz contrar, funcția concatenează șirul d la sfârșitul șirului s, utilizând operatorul += și afișează rezultatul obținut.
În final, am adăugat și o funcție main, care citește cele două șiruri de la tastatură și apelează funcția FConcat cu parametrii citiți.