====== Różnice ====== Różnice między wybraną wersją a wersją aktualną.
cw-3-2014 [2014/10/13 15:39] miller [2. Kartka z kalendarza] |
cw-3-2014 [2018/10/15 15:37] (aktualna) miller [2. Kartka z kalendarza] |
||
---|---|---|---|
Linia 1: | Linia 1: | ||
==== 1. Obliczanie przybliżonej wartości pochodnej funkcji w punkcie ==== | ==== 1. Obliczanie przybliżonej wartości pochodnej funkcji w punkcie ==== | ||
- | Program ma obliczać przybliżoną wartość pochodnej funkcji f(x)=x^2 dla x=1. | + | Program ma obliczać przybliżoną wartość pochodnej funkcji f(x)=x^2 dla x=1.Oczywiście wszyscy znają wartość dokładną, ale program korzysta z przybliżenia ilorazem różnicowym (f(x+h)-f(x))/h i oblicza jego wartość dla h= 1, 0.1, 0.01, 0.001,..., 1e-16. |
- | Oczywiście wszyscy znają wartość dokładną, ale program korzysta z przybliżenia ilorazem różnicowym | + | |
- | (f(x+h)-f(x))/h i oblicza jego wartość dla h= 1, 0.1, 0.01, 0.001,..., 1e-16. | + | Proszę zwrócić uwagę, że błąd nie jest najmniejszy dla najmniejszego h. |
- | Proszę zwrócić uwagę, że błąd nie jest najmniejszy dla najmniejszego h. | + | |
==== 2. Kartka z kalendarza ==== | ==== 2. Kartka z kalendarza ==== | ||
Linia 10: | Linia 9: | ||
=== Wersja podstawowa === | === Wersja podstawowa === | ||
- | * Dane wejściowe: numer miesiąca (1 - 12), numer dnia tygodnia (od 0 - niedziela do 6 - sobota) w pierwszym dniu tego miesiąca, np. dla października będą to liczby 10 i 2. | + | * Dane wejściowe: numer miesiąca (1 - 12), numer dnia tygodnia (od 0 - niedziela do 6 - sobota) w pierwszym dniu tego miesiąca, np. dla listopada będą to liczby 11 i 4. |
- | * Program powinien wyprowadzić na ekran tabelkę, np. dla października: | + | * Program powinien wyprowadzić na ekran tabelkę, np. dla listopada 2018: |
\\ | \\ | ||
- | Miesiac 10 | + | Miesiac 11 |
|Ni |Po |Wt |Sr |Cz |Pt |So | | |Ni |Po |Wt |Sr |Cz |Pt |So | | ||
- | | | | 1 | 2 | 3 | 4 | 5 | | + | | | | | | 1 | 2 | 3 | |
- | | 6 | 7 | 8 | 9 |10 |11 |12 | | + | | 4 | 5 | 6 | 7 | 8 | 9 |10 | |
+ | |11 |12 |13 |14 |15 |16 |17 | | ||
itd. | itd. | ||
=== Wersje rozszerzone === | === Wersje rozszerzone === | ||
- | * dane wejściowe: numer miesiąca i numery dnia dzisiejszego (miesiąca i tygodnia), | + | * dane wejściowe: numer miesiąca drukowanego, numer miesiąca aktualnego i numery dnia dzisiejszego (miesiąca i tygodnia), |
* numer miesiąca pisany cyframi rzymskimi, | * numer miesiąca pisany cyframi rzymskimi, | ||
* na ekranie (za numerem miesiąca) program pisze nazwa miesiąca (ew. korzysta z alfabetu polskiego), | * na ekranie (za numerem miesiąca) program pisze nazwa miesiąca (ew. korzysta z alfabetu polskiego), | ||
Linia 28: | Linia 28: | ||
* program tworzy tabelkę w postaci transponowanej, tj.: \\ | * program tworzy tabelkę w postaci transponowanej, tj.: \\ | ||
\\ | \\ | ||
- | Miesiac 10 | + | Miesiac 11 |
- | | Ni | | 6 | | + | | Ni | | 4 | |
- | | Po | | 7 | | + | | Po | | 5 | |
- | | Wt | 1 | 8 | | + | | Wt | | 6 | |
- | | Sr | 2 | 9 | | + | | Sr | | 7 | |
- | | Cz | 3 | itd| | + | | Cz | 1 | 8 | |
- | | Pt | 4 | | | + | | Pt | 2 | 9 | |
- | | So | 5 | | | + | | So | 3 | 10 | itd. |
* Uwagi: | * Uwagi: | ||
Linia 42: | Linia 42: | ||
* Wskazówka (dla ułatwienia "pisania w kolumnach"): Jeżeli w łańcuchu sterującym dla funkcji //printf// użyjemy sekwencji %2d zamiast %d, to liczba jednocyfrowa będzie poprzedzana spacją - o szczegółach będziemy mówić w przyszłości. | * Wskazówka (dla ułatwienia "pisania w kolumnach"): Jeżeli w łańcuchu sterującym dla funkcji //printf// użyjemy sekwencji %2d zamiast %d, to liczba jednocyfrowa będzie poprzedzana spacją - o szczegółach będziemy mówić w przyszłości. | ||
- | ==== Inne zadania - do zrobienia "Ile kto może" ==== | + | ==== Inne zadania ==== |
- Program pisze tabliczkę mnożenia. Wersje programu: | - Program pisze tabliczkę mnożenia. Wersje programu: | ||
* w zakresie np.: [1-10] x [1-10], | * w zakresie np.: [1-10] x [1-10], | ||
- | * jw, ale tabliczka nie zawiera elementów nad albo pod przekątną, | + | * jw, ale tabliczka nie zawiera elementów nad / pod przekątną, |
* program pisze tabliczkę mnożenia w zakresie podanym przez użytkownika np.: [7-20] x [34-41]. | * program pisze tabliczkę mnożenia w zakresie podanym przez użytkownika np.: [7-20] x [34-41]. | ||
- | - Liczbę naturalną wczytaną w systemie dziesiętnym wyprowadza na ekran w innym (wybranym przez | + | - Liczbę naturalną wczytaną w systemie dziesiętnym wyprowadza na ekran w innym (wybranym przez użytkownika) systemie pozycyjnym (jeżeli podstawą systemu ma być liczba >10, to należy zaproponować "dodatkowe" cyfry - jak w systemie szesnastkowym). |
- | użytkownika) systemie pozycyjnym (jeżeli podstawą systemu ma być liczba >10, to należy zaproponować | + | - Zapis liczb w systemach pozycyjnych o innych podstawach (bazach). Program wczytuje podstawę systemu i liczbę w tym systemie oraz pisze jej wartość w systemie dziesiętnym. |
- | "dodatkowe" cyfry - jak w systemie szesnastkowym). | + | - Wczytaną liczbę całkowitą z zakresu [1, 13] wyprowadza w postaci liczby rzymskiej (bez używania znakowej tablicy odpowiedników). Należy zwrócić uwagę na np. podobieństwa rzymskiego zapisu liczb 1-3, 6-8, 11-13. |
- | - Wczytaną liczbę całkowitą z zakresu [1, 13] wyprowadza w postaci liczby rzymskiej (bez używania | + | |
- | znakowej tablicy odpowiedników). | + | |
- Wczytuje liczbę naturalną i sprawdza (pisze) czy jest to liczba pierwsza. | - Wczytuje liczbę naturalną i sprawdza (pisze) czy jest to liczba pierwsza. | ||
- Wczytuje liczbę naturalną i wyprowadza jej czynniki pierwsze (z podaniem ich krotności). | - Wczytuje liczbę naturalną i wyprowadza jej czynniki pierwsze (z podaniem ich krotności). | ||
- Wypisuje wszystkie liczby pierwsze z zadanego zakresu. | - Wypisuje wszystkie liczby pierwsze z zadanego zakresu. | ||
+ | - Liczba automorficzna to liczba, której wszystkie cyfry występują (w tym samym porządku) na ostatnich pozycjach liczby, która jest jej kwadratem, np. 5 (25), 25 (625). | ||
+ | - Proszę napisać program, który znajduje osiem takich liczb. | ||
+ | - Który typ danych pozwoli znaleźć największą liczbę takich liczb? Wskazówka: Można skorzystać ze stałych zdefiniowanych w ''limits.h'' (np. ''ULONG_MAX''). | ||
+ | - Czy istnieje jakaś prawidłowość w ciągu tych liczb? Czy można ją wykorzystać do przyspieszenia poszukiwań większych liczb automorficznych? (Oczywiście należałoby udowodnić zauważoną prawidłowość). | ||
- | * Uwagi: | + | |
- | * 1. Należy stosować - tam gdzie to jest uzasadnione (o tym kiedy jest, porozmawiamy indywidualnie) - podział programu na funkcje. | + | |
- | * 2. Pionowe kreski w tabeli można pominąć. | + | |
- | * Wskazówka (dla ułatwienia "pisania w kolumnach"): Jeżeli w łańcuchu sterującym dla funkcji //printf// użyjemy sekwencji %2d zamiast %d, to liczba jednocyfrowa będzie poprzedzana spacją - o szczegółach będziemy mówić w przyszłości. | + |