Zajęcia 5. 1. Tablice. Napisz następujące programy przy użyciu

Transkrypt

Zajęcia 5. 1. Tablice. Napisz następujące programy przy użyciu
Zajęcia 5.
1. Tablice. Napisz następujące programy przy użyciu arytmetyki wskaźników - nie jest dozwolone
indeksowanie tablic. Każdy podpunkt stanowi osobne zadanie.
1. (wspólne) wypisanie elementów tablicy na standardowe wyjście
2. (samodzielne) wyszukiwanie największej liczby w tablicy
3. (samodzielne) wyszukiwanie pewnej liczby w posortowanej tablicy
4. (wspólne) przesunięcie cykliczne elementów tablicy w lewo o jeden. Po wykonaniu
algorytmu tablica ma mieć wartości
t[i] = t[i+1], dla i<N-1
t[N-1]=t[0]
gdzie N jest długością tablicy.
5. (samodzielne) odwracanie kolejności elementów tablicy
6. (samodzielne) przesunięcie cykliczne elementów tablicy w lewo o 'k' miejsc.
7. (samodzielne) scalanie dwóch posortowanych tablic w trzecią (również posortowaną)
2. (wspólne) Filtr: Napisz program, który:
1. wygeneruje tablicę (nazwijmy ją T) o długości podanej przez użytkownika programu oraz
uzupełni ją losowymi liczbami całkowitymi z zakresu [0,10]
2. wypisze elementy tablicy T na standardowe wyjście
3. Utworzy w pamięci komputera nową tablicę o minimalnym rozmiarze, zawierającą kolejne
elementy tablicy T z wyłączeniem wszystkich wystąpień podanej przez użytkownika liczby
n.
3. (nieobowiązkowe) Wielomiany: tablicę liczb możemy traktować jako współczynniki
wielomianu. Napisz program, który:
1. wygeneruje dwa losowe wielomiany o stopniach podanych przez użytkownika programu.
Współczynniki powinny być dowolnymi liczbami typu int
2. utworzy w pamięci komputera tablicę zawierająca współczynniki iloczynu tych
wielomianów
Spróbuj napisać ten program beż użycia indeksowania tablic, wykorzystując jedynie
arytmetykę wskaźników.
4. (nieobowiązkowe) Tablice nieregularne. Zadana jest liczba naturalna N ≥ 0. Napisz program,
który utworzy w pamięci komputera strukturę podwójnie indeksowaną taką, że
t[n][k] = symbol Newtona "n po k"
przy czym N ≥ n ≥ k ≥ 0 oraz dla ustalonego n, obiekt t[n] jest tablicą długości dokładnie n+1.
Zadbaj o zwolnienie przydzielonych zasobów (pamięci) przed zakończeniem działania programu.