Nowoczesny_C_Zbior_praktycznych_zadan_dla_przyszlych_ekspertow_nowcpp.pdf

(3297 KB) Pobierz
Tytuł oryginału: The Modern C++ Challenge
Tłumaczenie: Jacek Janusz
ISBN: 978-83-283-5211-7
Copyright © Packt Publishing 2018. First published in the English language
under the title ‘The Modern C++ Challenge – (9781788993869)’
Polish edition copyright © 2019 by Helion SA
All rights reserved.
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means,
electronic or mechanical, including photocopying, recording or by any information storage retrieval system,
without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej
publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną,
fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje
naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich
właścicieli.
Autor oraz Helion SA dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Helion SA nie ponoszą również żadnej
odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Helion SA
ul. Kościuszki 1c, 44-100 Gliwice
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/nowcpp
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Printed in Poland.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Spis treści
O autorze
O recenzentach
Przedmowa
Rozdział 1. Zadania matematyczne
Zadania
1. Suma liczb naturalnych podzielnych przez 3 lub 5
2. Największy wspólny dzielnik
3. Najmniejsza wspólna wielokrotność
4. Największa liczba pierwsza mniejsza od podanej
5. Liczby pierwsze szóstkowe
6. Liczby obfite
7. Liczby zaprzyjaźnione
8. Liczby Armstronga
9. Czynniki pierwsze liczby
10. Kod Graya
11. Przekształcanie liczb arabskich na rzymskie
12. Najdłuższy ciąg Collatza
13. Wyznaczanie liczby
14. Sprawdzanie numerów ISBN
Rozwiązania
1. Suma liczb naturalnych podzielnych przez 3 lub 5
2. Największy wspólny dzielnik
3. Najmniejsza wspólna wielokrotność
4. Największa liczba pierwsza mniejsza od podanej
5. Liczby pierwsze szóstkowe
6. Liczby obfite
7. Liczby zaprzyjaźnione
8. Liczby Armstronga
9
10
11
19
19
19
19
19
19
19
20
20
20
20
20
20
20
20
20
21
21
21
22
23
24
24
25
26
Kup książkę
Poleć książkę
Spis treści
9. Czynniki pierwsze liczby
10. Kod Graya
11. Przekształcanie liczb arabskich na rzymskie
12. Najdłuższy ciąg Collatza
13. Wyznaczanie liczby
14. Sprawdzanie numerów ISBN
27
28
29
31
32
33
Rozdział 2. Funkcje języka
Zadania
15. Typ danych IPv4
16. Wyliczanie zakresu adresów IPv4
17. Utworzenie dwuwymiarowej tablicy z podstawowymi operacjami
18. Funkcja wyznaczająca minimum dla dowolnej liczby argumentów
19. Dodawanie zakresu wartości do kontenera
20. Dowolny, wszystkie lub
żaden
argument w kontenerze
21. Klasa opakowująca dla uchwytu systemowego
22. Wyświetlanie różnych skal temperatur
Rozwiązania
15. Typ danych IPv4
16. Wyliczanie zakresu adresów IPv4
17. Utworzenie dwuwymiarowej tablicy z podstawowymi operacjami
18. Funkcja wyznaczająca minimum dla dowolnej liczby argumentów
19. Dodawanie zakresu wartości do kontenera
20. Dowolny, wszystkie lub
żaden
argument w kontenerze
21. Klasa opakowująca dla uchwytu systemowego
22. Wyświetlanie różnych skal temperatur
35
35
35
35
35
36
36
36
36
36
37
37
38
40
42
43
44
45
49
Rozdział 3.
Łańcuchy
i wyrażenia regularne
Zadania
23. Zamiana typu binarnego na
łańcuch
24. Zamiana typu
łańcuchowego
na binarny
25. Wielkie litery w tytule artykułu
26.
Łączenie łańcuchów
oddzielanych separatorem
27. Dzielenie
łańcucha
na tokeny z listą możliwych separatorów
28. Najdłuższy podciąg palindromiczny
29. Sprawdzanie tablic rejestracyjnych
30. Wyodrębnianie elementów adresu URL
31. Przekształcanie dat w
łańcuchach
Rozwiązania
23. Zamiana typu binarnego na
łańcuch
24. Zamiana typu
łańcuchowego
na binarny
25. Wielkie litery w tytule artykułu
26.
Łączenie łańcuchów
oddzielanych separatorem
27. Dzielenie
łańcucha
na tokeny z listą możliwych separatorów
28. Najdłuższy podciąg palindromiczny
29. Sprawdzanie tablic rejestracyjnych
30. Wyodrębnianie elementów adresu URL
31. Przekształcanie dat w
łańcuchach
53
53
53
53
54
54
54
54
54
55
55
56
56
57
58
59
60
61
63
64
65
4
Kup książkę
Poleć książkę
Spis treści
Rozdział 4. Strumienie i systemy plików
Zadania
32. Trójkąt Pascala
33. Lista procesów w postaci tabeli
34. Usuwanie pustych wierszy z pliku tekstowego
35. Obliczanie rozmiaru katalogu
36. Usuwanie plików starszych od określonej daty
37. Wyszukiwanie w katalogu plików, które pasują do wyrażenia regularnego
38. Tymczasowe pliki logów
Rozwiązania
32. Trójkąt Pascala
33. Lista procesów w postaci tabeli
34. Usuwanie pustych wierszy z pliku tekstowego
35. Obliczanie rozmiaru katalogu
36. Usuwanie plików starszych od określonej daty
37. Wyszukiwanie w katalogu plików, które pasują do wyrażenia regularnego
38. Tymczasowe pliki logów
67
67
67
67
68
68
68
68
68
69
69
70
72
73
73
75
76
Rozdział 5. Data i czas
Zadania
39. Pomiar czasu wykonania funkcji
40. Liczba dni zawartych między dwiema datami
41. Dzień tygodnia
42. Numer dnia i tygodnia w roku
43. Czasy spotkań dla wielu stref czasowych
44. Kalendarz miesięczny
Rozwiązania
39. Pomiar czasu wykonania funkcji
40. Liczba dni zawartych między dwiema datami
41. Dzień tygodnia
42. Numer dnia i tygodnia w roku
43. Czasy spotkań dla wielu stref czasowych
44. Kalendarz miesięczny
79
79
79
79
79
79
80
80
81
81
82
83
83
84
86
Rozdział 6. Algorytmy i struktury danych
Zadania
45. Kolejka priorytetowa
46. Bufor cykliczny
47. Podwójne buforowanie
48. Najczęściej występujący element w zbiorze danych
49. Histogram tekstu
50. Filtrowanie listy numerów telefonów
51. Przekształcanie listy numerów telefonów
52. Generowanie wszystkich permutacji ciągu znaków
53.
Średnia
ocena filmów
54. Algorytm tworzenia par
55. Algorytm scalania
56. Algorytm wyboru
57. Algorytm sortowania
89
89
89
90
90
90
90
91
91
91
91
91
92
92
92
5
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin