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

Przeszukiwanie pliku txt i zliczanie numerów

Hosting forpsi easy 1 pln
0 głosów
436 wizyt
pytanie zadane 31 stycznia 2019 w C i C++ przez Alan Kruszyński Obywatel (1,410 p.)

Mam funkcję która tworzy paragon sklepowy. Paragon ma swój numer, wartość jako sumę pozycji, pozyjce czyli towary. Paragony są zapisywane do pliku mniej więcej tak:

nr paragonu
wartosc
pozycja 1
pozycja 2
pozycja 3
nr nastepnego paragonu...

Pozycji nie zawsze będzie trzy, a przy starcie programu chcę wczytywać aktualną liczbę paragonów w bazie dokumentów. Jak skonstruować funkcję która przeszuka plik i zliczy linie w których występują numery paragonów?

2 odpowiedzi

0 głosów
odpowiedź 31 stycznia 2019 przez Tpk Nałogowiec (40,080 p.)
Jeżeli to ma być plik tekstowy i nie ma z góry narzuconej żadnej struktury to wydaje mi się że najłatwiej będzie dodać jakiś nietypowy znak na początku przed "nr paragonu", niech to będzie np. # i jeżeli c++ znajdzie taki hash w tekście to weźmie wszystkie cyfry do końca linii (zaraz za nim). Liczbę paragonów określisz na podstawie tego ile "#" będzie się znajdowało w pliku (czy też numerów paragonów). Co do samej funkcji myślę, że to pomoże:

http://cpp0x.pl/kursy/Kurs-C++/Poziom-3/Wyszukiwanie-frazy-w-tekscie/352
0 głosów
odpowiedź 1 lutego 2019 przez dxr Obywatel (1,240 p.)
Zrób tak, żeby numery paragonów zaczynały się od jakiejś liczby i były inkrementowane co 1. Wtedy wystarczy, że wczytasz pierwszą linię z tego pliku i masz na talerzu liczbę paragonów. Jest to sposób znacznie wydajniejszy od przeszukiwania całego pliku.

Możesz też dodać możliwość wyciągnięcia z bazy paragonu o podanym numerze. Wtedy numery paragonów można tworzyć tak:

numer_paragonu.liczba_pozycji

Wtedy szukasz w pliku numeru paragonu i na stdout wyrzucasz liczbę linijek równą liczba_pozycji + 2

Podobne pytania

0 głosów
1 odpowiedź 223 wizyt
pytanie zadane 30 maja 2017 w C i C++ przez NyguseK Użytkownik (650 p.)
0 głosów
1 odpowiedź 226 wizyt
0 głosów
1 odpowiedź 286 wizyt

92,125 zapytań

140,785 odpowiedzi

317,804 komentarzy

61,446 pasjonatów

Advent of Code 2023

Top 15 użytkowników

  1. 1468p. - Łukasz Eckert
  2. 1444p. - Dawid128
  3. 1430p. - CC PL
  4. 1419p. - rafalszastok
  5. 1418p. - Marcin Putra
  6. 1373p. - Mikbac
  7. 1362p. - rucin93
  8. 1351p. - sefirek
  9. 1325p. - Michal Drewniak
  10. 1296p. - Adrian Wieprzkowicz
  11. 1267p. - Eryk Andrzejewski
  12. 1260p. - TheLukaszNs
  13. 1239p. - JarekDev
  14. 1188p. - Rafał Trójniak
  15. 1179p. - 13NOONE37
Szczegóły i pełne wyniki

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.

Uwaga - w dniach od 02.12 do 08.12 trwają Mikołajki (książki drukowane mają rabat -35%, ebooki do -45%). Zaś dodatkowy, specjalny kod zniżkowy: HELMIKOLAJ-10 dla naszych Widzów zapewni Wam oszczędność -10zł dla zamówień powyżej 70zł! Warto korzystać!

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...