• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Python, matura, zadanie,wytłumacznie

Object Storage Arubacloud
+1 głos
601 wizyt
pytanie zadane 21 listopada 2021 w Python przez qwert 100 Obywatel (1,250 p.)

Witam

Policz, ile jest par ciągów (w odpowiadających sobie wierszach plików dane1.txt i dane2.txt), które utworzone są z takich samych liczb. Liczba powtórzeń takich samych liczb w ciągach może być różna. Wypisz numery wierszy, w których takie pary ciągów się znajdują.

To jest to zadanie, nie wiem zbyto jak to zrobić

link do zad 4.3 https://arkusze.pl/maturalne/informatyka-2018-czerwiec-matura-rozszerzona-2.pdf

załaczniki do zad https://arkusze.pl/matura-informatyka-2018-czerwiec-poziom-rozszerzony/

with open("dane1.txt") as file:
    arr1 = [line.split() for line in file]
with open("dane2.txt") as file:
    arr2 = [line.split() for line in file]

counter = 0
for i in range(1000):
    for j in range(10):
        if arr1[i][j] == arr2[i][j]:
            counter += 1

print(counter)

Wychodzi mi 462 (wiersz nie wiem jak wyświetlić) a ma wyjść 1 oraz wiersz 999

1 odpowiedź

0 głosów
odpowiedź 21 listopada 2021 przez Nelson89 Dyskutant (7,720 p.)

Cześć,

Twoja zmienna counter zlicza ilość takich samych wartości, jakie znajdują się w tym samym wierszu i na tej samej pozycji z dwóch plików. Druga pętla jest zbędna / niepoprawna.

Liczba powtórzeń takich samych liczb w ciągach może być różna

Pierwszym zadaniem w pierwszej pętli byłoby usunięcie tych powtórzeń - i to dla dwóch wierszy - dopiero po tym, należałoby wykonać porównanie oby wierszy.

Jeżeli chodzi o pętle, to nie musisz na sztywno podawać wartości - liczby iteracji. Możesz ją dopasować do rzeczywistej liczby elementów, po przez:

for i in range(len(arr1)):
    ...

To byłoby wygodniejsze w momencie, gdybyś chciał sprawdzić działanie kodu dla plików przykładowych (jak widziałem w poleceniu zadania są pliki przykładowe, ze wskazaną poprawną wartością, jaką kod powinien zwrócić.

Pozdrawiam,

Nelson

 

Podobne pytania

+1 głos
1 odpowiedź 594 wizyt
pytanie zadane 20 listopada 2021 w Python przez qwert 100 Obywatel (1,250 p.)
0 głosów
1 odpowiedź 2,044 wizyt
pytanie zadane 19 sierpnia 2018 w Python przez MazdyxX Nowicjusz (190 p.)

92,579 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...