1452 Stergere Element: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/1452/stergere-element - Stergere_Element] ---- == Cerinţa == Se dă un șir cu '''n''' elemente întregi și un număr '''p'''. Să se șteargă din șirul '''X''' elementul aflat pe poziția p. == Date de intrare == Programul va citi de la tastatură două valori '''n p''', cu semnificația precizată, apoi '''n''' numere întregi reprezentând elementele șirului. == Date de ieșire == Dacă datele sunt introduse corect, pe ecran se...
 
No edit summary
Line 45: Line 45:
         exit()
         exit()
     X = list(map(int, input().split()))
     X = list(map(int, input().split()))
    if n != len(X):
        print("Datele nu corespund restricțiilor impuse.")
        exit()
     for c in X:
     for c in X:
         if c >= 1000000 or c <= -1000000:
         if c >= 1000000 or c <= -1000000:
Line 56: Line 59:
     X, n, p = citire_conform_restrictiilor()
     X, n, p = citire_conform_restrictiilor()
     stergere_element(X, n, p)
     stergere_element(X, n, p)





Revision as of 15:03, 14 March 2023

Sursa: - Stergere_Element


Cerinţa

Se dă un șir cu n elemente întregi și un număr p. Să se șteargă din șirul X elementul aflat pe poziția p.

Date de intrare

Programul va citi de la tastatură două valori n p, cu semnificația precizată, apoi n numere întregi reprezentând elementele șirului.

Date de ieșire

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt introduse corect.", apoi pe un rând nou va afișa pe ecran n-1 valori întregi, separate printr-un spațiu, reprezentând elementele șirului după ștergere. În cazul contrar, se va afișa pe ecran: "Datele nu corespund restricțiilor impuse.".

Restricţii şi precizări

  • 1 ⩽ pn ⩽ 1.000
  • valoarea X și elementele șirului vor fi cuprinse între -1.000.000 și 1.000.000
  • elementele șirului vor avea indici între 1 și n.

Exemple

Exemplul 1

Intrare
5 2
7 3 9 1 6
Ieșire
Datele sunt introduse corect.
7 9 1 6

Exemplul 2

Intrare
4 5
Ieșire
Datele nu corespund restricțiilor impuse.


Rezolvare

<syntaxhighlight lang="python" line>

  1. 1452 Stergere Element

def stergere_element(X, n, p):

   for i in range(p - 1, n - 1):
       X[i] = X[i + 1]
   n -= 1
   for i in range(n):
       print(X[i], end=" ")


def citire_conform_restrictiilor():

   n, p = map(int, input().split())
   if n < 1 or n > 1500 or p < 1 or p > 1500 or p > n:
       print("Datele nu corespund restricțiilor impuse.")
       exit()
   X = list(map(int, input().split()))
   if n != len(X):
       print("Datele nu corespund restricțiilor impuse.")
       exit()
   for c in X:
       if c >= 1000000 or c <= -1000000:
           print("Datele nu corespund restricțiilor impuse.")
           exit()
   print("Datele sunt introduse corect.")
   return X, n, p


if __name__ == '__main__':

   X, n, p = citire_conform_restrictiilor()
   stergere_element(X, n, p)




</syntaxhighlight>