0119 - 2 Maxim: Diferență între versiuni

De la Universitas MediaWiki
(Pagină nouă: Sursă: [https://www.pbinfo.ro/probleme/119/2maxim] == Cerință == Să se scrie un program care citește un șir de '''n''' numere naturale şi determină cele mai mari două numere din şir. == Date de intrare == Programul citește de la tastatură numărul '''n''', iar apoi '''n''' numere naturale nenule. == Date de ieșire == Programul afișează pe ecran numerele '''x y''', reprezentând valorile cerute, separate prin exact un spaţiu. == Restricții și precizări == *...)
 
Fără descriere a modificării
Linia 16: Linia 16:
; Ieșire
; Ieșire
: 75 72
: 75 72
== Rezolvare ==
<syntaxhighlight lang="python" line="1">
def sortare(n, v):
    for i in range(n):
        for j in range(i+1, n):
            if v[i] < v[j]:
                v[i], v[j] = v[j], v[i]
n = int(input("Introduceți numărul de valori:"))
v = []
for i in range(n):
    x = int(input("Introduceți o valoare: "))
    v.append(x)
sortare(n, v)
y, x = v[:2]
print("Valorile cele mai mari sunt: ",y,x)
</syntaxhighlight>

Versiunea de la data 15 martie 2023 15:28

Sursă: [1]

Cerință

Să se scrie un program care citește un șir de n numere naturale şi determină cele mai mari două numere din şir.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere naturale nenule.

Date de ieșire

Programul afișează pe ecran numerele x y, reprezentând valorile cerute, separate prin exact un spaţiu.

Restricții și precizări

  • 2 ≤ n ≤ 1000
  • cele n numere citite vor fi mai mici decât 2.000.000.000
  • valorile afişate respectă relaţia x ≥ y

Exemplu

Intrare
5
72 30 12 15 17
Ieșire
75 72

Rezolvare

def sortare(n, v):
    for i in range(n):
        for j in range(i+1, n):
            if v[i] < v[j]:
                v[i], v[j] = v[j], v[i]

n = int(input("Introduceți numărul de valori:"))
v = []
for i in range(n):
    x = int(input("Introduceți o valoare: "))
    v.append(x)

sortare(n, v)
y, x = v[:2]
print("Valorile cele mai mari sunt: ",y,x)