0340 - Control: Difference between revisions

From Bitnami MediaWiki
Am creat de la zero.
 
Line 30: Line 30:


== Rezolvare ==
== Rezolvare ==
=== Rezolvare ver. 1 ===
<syntaxhighlight lang="python" line>
<syntaxhighlight lang="python" line>



Revision as of 17:30, 21 April 2023

Explicatii

Pentru un număr natural dat, se calculează cifra de control în felul următor:

  • se determină suma cifrelor
  • pentru rezultat se determină suma cifrelor
  • se continuă până când suma devine un număr dintr-o singură cifră, aceasta fiind cifra de control a numărului inițial

Cerinţa

Pentru un număr citit, să se determine cifra de control.

Date de intrare

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

Date de ieşire

Programul afișează pe ecran numărul C, reprezentând cifra de control a numarului.

Restricții și precizări

  • numarul are cel mult nouă cifre

Exemplu

Intrare
865247
Ieșire
Datele introduse sunt valide.
5

Explicatie

Suma cifrelor lui 865247 este 32, iar suma cifrelor lui 32 este 5.

Rezolvare

<syntaxhighlight lang="python" line>

  1. Citim numarul de la tastatura

numar = input("Introduceti un numar natural: ")

  1. Validare date de intrare

if not numar.isdigit() or len(numar) > 9:

   print("Datele introduse nu sunt valide. Introduceti un numar natural cu cel mult nouă cifre.")

else:

   # Calculam cifra de control
   while len(numar) > 1:
       suma = 0
       for cifra in numar:
           suma += int(cifra)
       numar = str(suma)
   cifra_control = int(numar)
   print("Datele introduse sunt valide.")
   # Afisam cifra de control
   print("Cifra de control a numarului este", cifra_control)


</syntaxhighlight>