2660 - Produs Primele Doua Cifre: Difference between revisions

From Bitnami MediaWiki
Am creat de la zero.
 
mNo edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
Sursa: [https://www.pbinfo.ro/probleme/2660/produsprimeledouacifre]
== Cerinţa ==
== Cerinţa ==
Se dă un număr natural. Calculați produsul primelor două cifre ale sale.
Se dă un număr natural. Calculați produsul primelor două cifre ale sale.
Line 18: Line 19:


== Rezolvare ==
== Rezolvare ==
=== Rezolvare ver. 1 ===
<syntaxhighlight lang="python" line>
def produsul_primelor_cifre():
    numar = int(input("Introduceți un număr: "))  # Citim numărul de la utilizator ca un întreg
    produs = 1  # Inițializăm variabila produs cu 1
    while numar > 0:
        if numar < 100:  # Verificăm dacă numărul are mai puțin de 3 cifre
            produs *= numar % 10  # Calculăm produsul primelor cifre folosind operatorul de înmulțire și modulo
        numar //= 10  # Eliminăm ultima cifră a numărului prin împărțirea întregă la 10
    print(f"Produsul primelor doua cifre este {produs}.")  # Afișăm produsul primelor cifre
if __name__ == '__main__':
    produsul_primelor_cifre()
</syntaxhighlight>
=== Rezolvare ver. 2 ===
<syntaxhighlight lang="python" line>
<syntaxhighlight lang="python" line>
# Citim numarul de la utilizator
numar = input("Introduceti un numar natural: ")


# Verificam daca numarul este un numar natural si contine cel putin doua cifre
numar = int(input("Introduceți un număr mai mare sau egal cu 10: "))  # Citim numărul de la utilizator ca un întreg
if not numar.isdigit() or len(numar) < 2:
 
     print("Numarul introdus nu este valid.")
while numar < 10:
else:
     numar = int(input("Introduceți un număr mai mare sau egal cu 10: "))  # Cerem un număr corect de la utilizator
     # Extragem primele doua cifre
 
    cifra1 = int(numar[0])
produs = 1  # Inițializăm variabila produs cu 1
     cifra2 = int(numar[1])
 
while numar > 0:
     if numar < 100:  # Verificăm dacă numărul are mai puțin de 3 cifre
        produs *= numar % 10  # Calculăm produsul primelor cifre folosind operatorul de înmulțire și modulo
     numar //= 10  # Eliminăm ultima cifră a numărului prin împărțirea întregă la 10


    # Calculam produsul celor doua cifre
print(f"Produsul primelor două cifre este {produs}.")  # Afișăm produsul primelor cifre
    produs = cifra1 * cifra2


    # Afisam rezultatul
    print(f"Produsul primelor doua cifre ale numarului {numar} este {produs}.")
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 11:25, 15 May 2023

Sursa: [1]

Cerinţa[edit | edit source]

Se dă un număr natural. Calculați produsul primelor două cifre ale sale.

Date de intrare[edit | edit source]

Programul citește de la tastatură numărul.

Date de ieşire[edit | edit source]

Programul va afișa pe ecran valoarea cerută.

Restricții și precizări[edit | edit source]

  • 10 ≤ numar ≤ 100.000.000.000.000.000

Exemplu[edit | edit source]

Intrare
367
Ieșire
18

Rezolvare[edit | edit source]

Rezolvare ver. 1[edit | edit source]

<syntaxhighlight lang="python" line>

def produsul_primelor_cifre():

   numar = int(input("Introduceți un număr: "))  # Citim numărul de la utilizator ca un întreg
   produs = 1  # Inițializăm variabila produs cu 1
   while numar > 0:
       if numar < 100:  # Verificăm dacă numărul are mai puțin de 3 cifre
           produs *= numar % 10  # Calculăm produsul primelor cifre folosind operatorul de înmulțire și modulo
       numar //= 10  # Eliminăm ultima cifră a numărului prin împărțirea întregă la 10
   print(f"Produsul primelor doua cifre este {produs}.")  # Afișăm produsul primelor cifre

if __name__ == '__main__':

   produsul_primelor_cifre()

</syntaxhighlight>

Rezolvare ver. 2[edit | edit source]

<syntaxhighlight lang="python" line>

numar = int(input("Introduceți un număr mai mare sau egal cu 10: ")) # Citim numărul de la utilizator ca un întreg

while numar < 10:

   numar = int(input("Introduceți un număr mai mare sau egal cu 10: "))  # Cerem un număr corect de la utilizator

produs = 1 # Inițializăm variabila produs cu 1

while numar > 0:

   if numar < 100:  # Verificăm dacă numărul are mai puțin de 3 cifre
       produs *= numar % 10  # Calculăm produsul primelor cifre folosind operatorul de înmulțire și modulo
   numar //= 10  # Eliminăm ultima cifră a numărului prin împărțirea întregă la 10

print(f"Produsul primelor două cifre este {produs}.") # Afișăm produsul primelor cifre

</syntaxhighlight>