1309 - Gresie: Difference between revisions
Vardai Erwin (talk | contribs) |
No edit summary |
||
Line 33: | Line 33: | ||
def bucati(a, b, d): | def bucati(a, b, d): #cautăm numarul de bucăți de gresie necesară | ||
nr_bucati_lungime = a // d | nr_bucati_lungime = a // d #aflăm numărul de buc necesar pentru lungimea | ||
nr_bucati_latime = b // d | nr_bucati_latime = b // d #aflăm numărul de buc necesar pentru lățimea | ||
if a % d != 0: | #dacă acestea nu sunt divizibile cu d, se mai adaugă o bucată la nr necesar | ||
if a % d != 0: | |||
nr_bucati_lungime += 1 | nr_bucati_lungime += 1 | ||
if b % d != 0: | if b % d != 0: | ||
nr_bucati_latime += 1 | nr_bucati_latime += 1 | ||
nr_total_bucati = nr_bucati_lungime * nr_bucati_latime | nr_total_bucati = nr_bucati_lungime * nr_bucati_latime #calculăm numărul total de bucăți necesar pentru încăpere | ||
print("Numărul minim de bucăți de gresie necesare pentru pavarea încăperii este: ", nr_total_bucati) | print("Numărul minim de bucăți de gresie necesare pentru pavarea încăperii este: ", nr_total_bucati) |
Revision as of 13:18, 11 April 2023
Cerință
Se consideră o încăpere de formă dreptunghiulară cu dimensiunile a b. Încăperea trebuie pavată cu gresie de formă pătratică, de dimensiune d. Știind că o bucată de gresie se poate folosi întreagă sau tăiată, să se determine numărul minim de bucăți de gresie sunt necesare pentru pavarea încăperii.
Date de intrare
Programul citește de la tastatură numerele naturale a b d.
Date de ieșire
Programul afișează pe ecran numărul minim de bucăți de gresie necesare pentru pavarea încăperii.
Restricții de precizări
- 1 ⩽ d ⩽ a, b ⩽ 32000
Exemplul 1
- Intrare
- 12
- 17
- 3
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 24
Exemplul 2
- Intrare
- 10
- 15
- 5
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 6
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare_date(a, b, d):
return a.isdigit() and b.isdigit() and d.isdigit() and 1 <= int(d) <= int(a) <= 32000 and int(d) <= int(b) <= 32000
def bucati(a, b, d): #cautăm numarul de bucăți de gresie necesară
nr_bucati_lungime = a // d #aflăm numărul de buc necesar pentru lungimea nr_bucati_latime = b // d #aflăm numărul de buc necesar pentru lățimea
- dacă acestea nu sunt divizibile cu d, se mai adaugă o bucată la nr necesar
if a % d != 0: nr_bucati_lungime += 1 if b % d != 0: nr_bucati_latime += 1
nr_total_bucati = nr_bucati_lungime * nr_bucati_latime #calculăm numărul total de bucăți necesar pentru încăpere
print("Numărul minim de bucăți de gresie necesare pentru pavarea încăperii este: ", nr_total_bucati)
if __name__ == '__main__':
a = input("Introduceți lungimea încăperii: ") b = input("Introduceți lățimea încăperii: ") d = input("Introduceți dimensiunea laturii pătratelor de gresie: ")
if validare_date(a, b, d): a, b, d = int(a), int(b), int(d) print("Datele de intrare corespund restricțiilor impuse.") bucati(a, b, d) else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>