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

Python, matura, zadanie,wytłumacznie

VPS Starter Arubacloud
+1 głos
710 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ź 737 wizyt
pytanie zadane 20 listopada 2021 w Python przez qwert 100 Obywatel (1,250 p.)
0 głosów
1 odpowiedź 2,277 wizyt
pytanie zadane 19 sierpnia 2018 w Python przez MazdyxX Nowicjusz (190 p.)

92,980 zapytań

141,943 odpowiedzi

321,189 komentarzy

62,307 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.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...