0905 - DetCifre: Diferență între versiuni

De la Universitas MediaWiki
Fără descriere a modificării
Linia 1: Linia 1:
==Cerință==
==Cerință==
Să se scrie o funcție Python care să determine prima și ultima cifră a unui număr natural transmis ca parametru. Funcția va întoarce rezultatele prin intermediul unor parametri de ieşire.
Să se scrie o funcție Python care să determine prima și ultima cifră a unui număr natural transmis ca parametru. Funcția va întoarce rezultatele prin intermediul unor parametri de ieşire.
==Date de intrare==
*n (numărul natural pentru care se calculează cifrele cerute)
==Date de iesire==
*prima_cifră (prima cifră a lui n)
*ultima_cifră (ultima cifră a lui n)


==Restricții de precizări==
==Restricții de precizări==
Linia 42: Linia 53:
         print("Datele nu corespund restricțiilor impuse.")
         print("Datele nu corespund restricțiilor impuse.")
</syntaxhighlight>
</syntaxhighlight>
==Explicatii==
Funcția "validare" primește ca parametru un număr și verifică dacă acesta este mai mic decât 2.000.000.000. Dacă numărul este mai mic decât acesta, funcția va returna "True", altfel va returna "False".
Funcția "detcifre" primește ca parametri trei valori: numărul "n" pentru care se calculează prima și ultima cifră și două variabile "p" și "u", care vor fi actualizate cu prima, respectiv ultima cifră a numărului "n". În interiorul funcției, se va converti numărul "n" în șir de caractere, pentru a putea prelua ușor prima și ultima cifră. Variabila "p" va fi actualizată cu prima cifră a șirului, adică cu primul caracter, iar variabila "u" va fi actualizată cu ultima cifră a șirului, adică cu ultimul caracter.

Versiunea de la data 30 aprilie 2023 15:26

Cerință

Să se scrie o funcție Python care să determine prima și ultima cifră a unui număr natural transmis ca parametru. Funcția va întoarce rezultatele prin intermediul unor parametri de ieşire.


Date de intrare

  • n (numărul natural pentru care se calculează cifrele cerute)

Date de iesire

  • prima_cifră (prima cifră a lui n)
  • ultima_cifră (ultima cifră a lui n)


Restricții de precizări

Numele funcției va fi detcifre
Funcția va avea trei parametri: primul parametru reprezintă numărul n pentru care se calculează cifrele cerute,al doilea parametru va reprezenta suma cifrelor pare ale lui n, iar al treilea va reprezenta suma cifrelor impare ale lui n
n va fi număr natural mai mic decât 2.000.000.000

Exemplul 1

Dupa apelul
detcifre(170 , p ,u);
Ieșire
p va avea valoarea 1, iar u va avea valoarea 0.

Important

Soluţia propusă va conţine doar definiţia funcţiei cerute. 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

Rezolvare ver. 1

def validare(n):
    return int(n) < 2_000_000_000


def detcifre(n, p, u):
    p = str(n)[0]
    u = str(n)[-1]
    return p, u


if __name__ == '__main__':
    n, p, u = 178, 0, 0
    if validare(n):
        print("Datele corespund restricțiilor impuse.")
        detcifre(n, p, u)
    else:
        print("Datele nu corespund restricțiilor impuse.")

Explicatii

Funcția "validare" primește ca parametru un număr și verifică dacă acesta este mai mic decât 2.000.000.000. Dacă numărul este mai mic decât acesta, funcția va returna "True", altfel va returna "False".

Funcția "detcifre" primește ca parametri trei valori: numărul "n" pentru care se calculează prima și ultima cifră și două variabile "p" și "u", care vor fi actualizate cu prima, respectiv ultima cifră a numărului "n". În interiorul funcției, se va converti numărul "n" în șir de caractere, pentru a putea prelua ușor prima și ultima cifră. Variabila "p" va fi actualizată cu prima cifră a șirului, adică cu primul caracter, iar variabila "u" va fi actualizată cu ultima cifră a șirului, adică cu ultimul caracter.