Talk:Pagina principală
2938 - Albina
Cerința
Într-un stup, pe un fagure de miere infinit, trăiește o albină foarte harnică. Fagurele este alcătuit din celule hexagonale, fiecare celulă având șase vecini. În prima zi albina depune nectar într-o singură celulă. În fiecare din zilele următoarele, albina depune nectar în celulele vecine cu cele în care a fost deja depus nectar. Aflați în câte celule este depus nectar după n zile.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran numărul C, reprezentând numărul de celule în care este depus nectar după n zile.
Restricții și precizări
- 1 ⩽ zile ⩽ 1000000
Exemplu 1
- Intrare
- 4
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 37
Exemplu 2
- Intrare
- 0
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare
<syntaxhighlight lang="python" line>
- 2938 - Albina
def numar_celule_nectar(n):
# Verificare dacă datele de intrare respectă restricțiile if 1 <= n <= 1000000: # Calculul numărului total de celule după n zile Celule = 1 + 6 * (n * (n + 1) // 2) return Celule else: return None
- Citirea numărului de zile de la tastatură
n = int(input("Introduceți numărul de zile (1 <= zile <= 1000000): "))
- Calculul și afișarea rezultatului
rezultat = numar_celule_nectar(n) if rezultat is not None:
print(rezultat)
else:
print("Nu au fost respectate cerințele impuse.")
</syntaxhighlight>
2377 - Pisici
Cerința
Se cunoaște faptul ca n_numar pisici mănâncă n_numar șoareci în n_numar minute. Sa se determine în cat timp mănâncă m_numar pisici m_numar șoareci.
Date de intrare
Programul citește de la tastatură numerele n_numar si m_numar.
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afișa pe ecran numărul timp, reprezentând timpul necesar pentru ca m_numar pisici sa manance m_numar soareci.
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse".
Restricții și precizări
- 1 ⩽ n_numar, m_numar ⩽ 100000000000
Exemplu 1
- Intrare
- 3
- 100
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 3
Exemplu 2
- Intrare
- 0
- 100
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare
<syntaxhighlight lang="python" line>
- 2377 - Pisici
- Citirea numerelor de la tastatură
n_numar = int(input("Introduceți numărul n_numar (1 <= n_numar <= 100000000000): ")) m_numar = int(input("Introduceți numărul m_numar (1 <= m_numar <= 100000000000): "))
- Verificare dacă datele de intrare respectă restricțiile
if 1 <= n_numar <= 100000000000 and 1 <= m_numar <= 100000000000:
# Calculul timpului necesar timp = (m_numar // n_numar) + (1 if m_numar % n_numar != 0 else 0)
# Afișarea rezultatului print("Datele de intrare corespund restricțiilor impuse") print(timp)
else:
print("Nu au fost respectate cerințele impuse.")
</syntaxhighlight>
0182 - Cub
Cerința
Să se scrie un program care determină aria totală şi volumul unui cub pentru care se cunoaşte lungimea laturii.
Date de intrare
Programul citește de la tastatură numărul natural latura, reprezentând lungimea laturii cubului.
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afișa pe ecran aria totală şi volumul cubului dat, separate printr-un spaţiu.
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse".
Restricții și precizări
- 1 ⩽ latura ⩽ 1000
Exemplu 1
- Intrare
- 5
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 150 125
Exemplu 2
- Intrare
- 1001
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare
<syntaxhighlight lang="python" line>
- 0182 - Cub
- Citirea lungimii laturii de la tastatură
latura = int(input())
- Verificarea restricțiilor impuse
if 1 <= latura <= 1000:
print("Datele de intrare corespund restricțiilor impuse")
# Calcularea ariei totale și volumului cubului aria_totala = 6 * latura ** 2 volumul = latura ** 3
# Afișarea rezultatelor print(f"{aria_totala} {volumul}")
else:
print("Nu au fost respectate cerintele impuse")
</syntaxhighlight>
3810 - Sfera
Cerința
Se dă raza unei sfere. Aflați aria și volumul sferei.
Date de intrare
Programul citește de la tastatură numărul raza, reprezentând raza sferei.
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se vor afișa pe ecran numerele arie și volumul, reprezentând aria și volumul sferei, cu 2 zecimale exacte, fără rotunjire.
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse".
Restricții și precizări
- 1 ⩽ raza ⩽ 1000
Exemplu 1
- Intrare
- 5
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 314.15 523.59
Exemplu 2
- Intrare
- 0
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare
<syntaxhighlight lang="python" line>
- 3810 - Sfera
- Importam pi din modulul math
import math
- Citirea razei de la tastatură
raza = float(input())
- Verificarea restricțiilor impuse
if 1 <= raza <= 1000:
print("Datele de intrare corespund restricțiilor impuse")
# Calcularea ariei și volumului sferei arie = 4 * math.pi * raza**2 volum = (4 / 3) * math.pi * raza**3
# Afișarea rezultatelor cu 2 zecimale exacte print(f"{arie:.2f} {volum:.2f}")
else:
print("Nu au fost respectate cerintele impuse")
</syntaxhighlight>
0103 - Curte
Cerința
Curtea bunicului are formă dreptunghiulară şi se cunosc lungimea şi lăţimea ei. Să se determine aria acestei curţi, precum şi lungimea gardului care înconjoară curtea.
Date de intrare
Programul va citi de la tastatură două numere naturale lungimea şi latimea, reprezentând dimensiunile curţii.
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afişa pe ecran două numere, separate prin exact un spaţiu, reprezentând aria curţii bunicului, respectiv lungimea gardului care o înconjoară.
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse".
Restricții și precizări
- 0 < lungimea, latimea < 10000
Exemplu 1
- Intrare
- 20
- 12
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 240 64
Exemplu 2
- Intrare
- 0
- 12
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare
<syntaxhighlight lang="python" line>
- 0103 - Curte
- Citirea lungimii și lățimii curții de la tastatură
lungimea = int(input()) latimea = int(input())
- Verificarea restricțiilor impuse
if 0 < lungimea < 10000 and 0 < latimea < 10000:
print("Datele de intrare corespund restricțiilor impuse")
# Calcularea ariei și lungimii gardului aria = lungimea * latimea lungime_gard = 2 * (lungimea + latimea)
# Afișarea rezultatelor print(f"{aria} {lungime_gard}")
else:
print("Nu au fost respectate cerintele impuse")
</syntaxhighlight>
0176 - Picioare1
Cerința
Într-o curte sunt găini și oi. Se cunoaște numărul de capete și numărul de picioare din curte. Să se determine numărul de găini și numărul de oi.
Date de intrare
Programul citește de la tastatură numerele capete și picioare, reprezentând numărul de capete și numărul de picioare din curte.
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afișeaza pe ecran numerele gaini și oi, separate printr-un spațiu, reprezentând numărul de găini și numărul de oi din curte.
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse".
Restricții și precizări
- 0 < capete, picioare < 1000000000
- 0 ⩽ gaini, oi
Exemplu 1
- Intrare
- 5
- 14
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 3 2
Exemplu 2
- Intrare
- 4
- 20
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare
<syntaxhighlight lang="python" line>
- 0176 - picioare1
- Citirea numărului de capete și picioare de la tastatură
capete = int(input()) picioare = int(input())
- Verificarea restricțiilor impuse
if 0 < capete < 1000000000 and 0 < picioare < 1000000000:
print("Datele de intrare corespund restricțiilor impuse")
# Calcularea numărului de găini și oi # Ecuațiile sunt: # gaini + oi = capete # 2 * gaini + 4 * oi = picioare # Se rezolvă sistemul de ecuații pentru a găsi numărul de găini și oi gaini = (4 * capete - picioare) // 2 oi = capete - gaini
# Afișarea rezultatelor print(f"{gaini} {oi}")
else:
print("Nu au fost respectate cerintele impuse")
</syntaxhighlight>
3458 - SinCos
Cerința
Se dă un număr natural x, reprezentând mărimea în grade sexagesimale a unui unghi. Să se afișeze sin(x) și cos(x).
Date de intrare
Programul citește de la tastatură numărul x.
Date de ieșire
Programul va afișa pe ecran două numere separate printr-un spațiu, reprezentând sin(x) și cos(x).
Restricții și precizări
- 1 ≤ x ≤ 180;
- se recomandă afișarea rezultatelor cu cel puțin trei zecimale;
Exemplul 1
- Intrare
- 30
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 0.5 0.866
Exemplul 2
- Intrare
- 181
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line="1">
- 3458 - Sin Cos
import math
- Citirea unghiului de la tastatură
x = int(input())
- Verificarea restricțiilor impuse
if 1 <= x <= 180:
print("Datele de intrare corespund restricțiilor impuse.")
# Calcularea sin(x) și cos(x) cu cel puțin trei zecimale sin_x = round(math.sin(math.radians(x)), 3) cos_x = round(math.cos(math.radians(x)), 3)
# Afișarea rezultatelor print(f"{sin_x} {cos_x}")
else:
print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>
0510 - SortPrime
Cerinţa
Se dă un vector cu n elemente, numere naturale. Afișați în ordine crescătoare valorile prime din acest vector.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, reprezentând elementele vectorului.
Date de ieșire
Programul va afișa pe ecran valorile prime din vector, în ordine crescătoare, separate prin exact un spațiu.
Restricţii şi precizări
- 1 ≤ n ⩽ 1000
cele n numere citite vor fi mai mici decât 1.000.000.000
Exemplu 1
- Intrare
7 13 1 10 15 3 7 11
- Ieșire
3 7 11 13
Exemplu 2
- Intrare
5 3 10 15 32 5
- Iesire
3 5
Rezolvare
<syntaxhighlight lang="python" line>
def este_prim(numar):
if numar < 2: return False for i in range(2, int(numar ** 0.5) + 1): if numar % i == 0: return False return True
- Citirea numărului de elemente al vectorului
n = int(input())
- Citirea elementelor vectorului
vector = list(map(int, input().split()))
- Filtrarea și afișarea valorilor prime în ordine crescătoare
valori_prime = sorted([numar for numar in vector if este_prim(numar)])
print(" ".join(map(str, valori_prime))) </syntaxhighlight>
Cerință
Scrieţi un program care citeşte de la tastatură două numere naturale nenule n şi m şi care construieşte în memorie şi apoi afişează o matrice A cu n linii (numerotate de la 1 la n) şi m coloane (numerotate de la 1 la m) cu proprietatea că fiecare element Aij memorează cea mai mică dintre valorile indicilor i şi j ( 1≤i≤n, 1≤j≤m ).
Date de intrare
Programul citește de la tastatură numerele n şi m
Date de ieşire
Dacă datele sunt introduse corect, pe ecran se va afișa: " Datele de intrare corespund restrictiilor impuse", apoi pe un rand nou va afișa matricea construită, câte o linie a matricei pe câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un spaţiu. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse".
Restricții și precizări
- 2≤m≤20 , 2≤n≤20
Exemplu 1
- Intrare
- 4
- 5
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 1 1 1 1 1
- 1 2 2 2 2
- 1 2 3 3 3
- 1 2 3 4 4
Exemplu 2
- Intrare
- -1
- -2
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line="1">
- 0206-GenMat1
- Citirea numerelor n și m de la tastatură
n = int(input()) m = int(input())
- Verificarea restricțiilor impuse
if 2 <= m <= 20 and 2 <= n <= 20:
print("Datele de intrare corespund restrictiilor impuse.")
# Construirea și afișarea matricei for i in range(1, n + 1): row = [min(i, j) for j in range(1, m + 1)] print(" ".join(map(str, row)))
else:
print("Datele de intrare nu corespund restrictiilor impuse.")
</syntaxhighlight>