1528 - Operatii Matematice: Difference between revisions

From Bitnami MediaWiki
Sinn Erich (talk | contribs)
Sinn Erich (talk | contribs)
Line 19: Line 19:


== Restricţii şi precizări ==
== Restricţii şi precizări ==
* 0 < '''n''' ⩽ 10
Numărul de cifre alese de Maria este maxim 100.
 
Pentru rezolvarea corectă a primei cerinţe se obţine 50% din punctajul unui test.


== Exemplul 1 ==
== Exemplul 1 ==

Revision as of 11:53, 1 April 2023

Sursa: [1]

Cerinţa

Maria, Cristi şi Alex au găsit o modalitate de a-şi îmbunătăţi viteza de efectuare a operaţiilor matematice printr-un joc care să corespundă nivelului de vârsta al fiecăruia. Maria ştie doar operaţiile de adunare şi scădere, Cristi a învăţat înmulţirile iar Alex fiind în clasa a 5-a studiază divizibilitatea numerelor.

Jocul se desfăşoară în felul următor: Maria alege o cifra – cifra de start (întotdeauna este nenulă). Cristi o înmulţeşte cu 3. La numărul obţinut de Cristi, Maria adaugă o nouă cifră şi îi spune lui Cristi suma obţinută. Cristi caută cel mai mare multiplu a lui 7 mai mic decât numărul obţinut de Maria şi îl spune Mariei. Aceasta scade din numărul ei multiplul spus de Cristi şi obţine un număr nou. Din acest moment jocul se reia, Cristi înmulţeşte cu 3, Maria alege o cifră şi o adaugă la numărul obţinut de Cristi s.a.m.d…

Între timp Alex este atent la cifrele pe care Maria le-a introdus în joc şi caută să vadă dacă numărul format din aceste cifre este divizibil cu 7.


1) Aflaţi care este numărul obţinut de Maria după adăugarea ultimei cifre.

2) Ajutaţi-l pe Alex să verifice dacă numărul format din cifrele alese de Maria este divizibil cu 7.

Date de intrare

Programul va contine pe prima linie numărul de cifre alese de Maria iar pe următoarea linie separate prin spaţiu cifrele în ordinea alegerii acestora.

Date de ieșire

Programul va conține pe prima linie numărul obţinut la cerința 1 şi pe a doua linie răspunsul DA în cazul în care răspunsul lui Alex trebuie să fie afirmativ, respectiv NU în caz contrar.

Restricţii şi precizări

Numărul de cifre alese de Maria este maxim 100.

Pentru rezolvarea corectă a primei cerinţe se obţine 50% din punctajul unui test.

Exemplul 1

Intrare
4
Ieșire
Datele corespund cerințelor.
576



Rezolvare

<syntaxhighlight lang="python" line>

  1. 4273

def patrate_perfecte(n):

   patrate = []
   i = 1
   while len(patrate) < n:
       patrat = i * i
       patrate.append(patrat)
       i += 1
   return patrate


def calculeaza(numbers):

   product = 1
   for number in numbers:
       product *= number
   return product


def validare_numar(n):

   if n < 1 or n > 10:
       return False
   return True


if __name__ == '__main__':

   n = int(input("Introduceți numărul n: "))
   if not validare_numar(n):
       print("Datele introduse nu corespund cerintelor.")
   else:
       squares = patrate_perfecte(n)
       product = calculeaza(squares)
       print("Datele introduse corespund cerintelor.")
       print(product)


</syntaxhighlight>