Zestaw 1-2 Napisać następujące funkcje: • funkcję Pobierz
Transkrypt
Zestaw 1-2 Napisać następujące funkcje: • funkcję Pobierz
Zestaw 1-2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! Napisać następujące funkcje: • funkcję Pobierz pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję Wypisz wypisującą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję CzySymetrycznaParzystosc zwracającą wartość logiczną mówiącą, czy tablica podana jako parametr jest symetryczna ze względu na parzystość elementów, tzn. element pierwszy ma taką samą parzystość jak ostatni, drugi taki jak przedostatni, itd. (przykład: dla tablicy 2,-3,4,8 odpowiedzią powinno być false, dla tablicy 2,-2,0,1,3,7,0,-4,4 – true). Jeśli funkcja wymaga dodatkowych parametrów, należy je dodać; • funkcję NajdluzszaPodtablicaWiekszychPodwojona zwracającą tablicę powstałą z tablicy podanej jako parametr poprzez przekopiowanie do tablicy wynikowej najdłuższej podtablicy (tj. ciągu sąsiednich elementów tej tablicy) zawierającej wartości większe od liczby całkowitej G podanej jako drugi parametr, a następnie wydłużenie tej tablicy o drugi identyczny fragment (przykład: dla tablicy 4,5,-2,1,2,3,4,4,5,3,3,4,6,8,7,2,2,3,1 i G=3 wynikiem będzie tablica 4,6,8,7,4,6,8,7, dla tej samej tablicy i G=7 – tablica zawierająca tylko wartości 8,8). Jeśli funkcja wymaga dodatkowych parametrów, należy je dodać. Napisać program tworzący tablicę liczb całkowitych o długości podanej przez użytkownika, pobierający i wypisujący jej zawartość, wypisujący informację czy jest ona symetrycznej parzystości (funkcja CzySymetrycznaParzystosc) oraz, po pobraniu od użytkownika liczby całkowitej G, wypisujący jej najdłuższą podwojoną podtablicę liczb większych od G (funkcja NajdluzszaPodtablicaWiekszychPodwojona). Zestaw 2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia nale»y zapisa¢ we wspól- Oddajemy nym folderze o nazwie b¦d¡cej numerem indeksu, umieszczonym na pulpicie. tylko ¹ródªa programów (pliki o rozszerzeniach .cpp)!!! Wahaniem ci¡gu a1 , a2 , . . . , an nazywamy warto±¢ |a2 − a1 | + |a3 − a2 | + · · · + |an − an−1 | . Napisz funkcje: • Pobierz pobieraj¡c¡ zawarto±¢ tablicy liczb caªkowitych podanej jako parametr, o dªugo±ci podanej jako kolejny parametr. • Wypisz wypisuj¡c¡ zawarto±¢ tablicy liczb caªkowitych podanej jako parametr, o dªugo±ci podanej jako kolejny parametr. • CzyStalaSumaSymetryczna zwracaj¡c¡ warto±¢ logiczn¡ mówi¡c¡, czy w tablicy liczb caªkowitych podanej jako parametr suma wyrazów stoj¡cych na symetrycznych pozycjach jest staªa, tzn. czy suma wyrazów pierwszego i ostatniego jest taka sama jak suma drugiego i przedostatniego, trzeciego i przed przedostatniego itd. Je±li dªugo±¢ tablicy jest nieparzysta, to podane wy»ej sumy musz¡ by¢ równe wyrazowi 2, 3, 7, 5, 6 oraz 2, 3, 1, 4, 3, 4 funkcja 2, 3, 8, 5, 6 oraz 2, 3, 1, 5, 3, 4 funkcja zwraca ±rodkowemu. Przykªad: dla tablic zwraca true. false, dla tablic Je±li funkcja wymaga dodatkowych parametrów, nale»y je doda¢. • NajwiekszeWahanie zwracaj¡c¡ ci¡gªy fragment dªugo±ci d (gdzie d jest liczb¡ caªkowit¡ dodatni¡ podan¡ jako parametr) tablicy podanej jako parametr o najwi¦kszym wahaniu. Je±li takich fragmentów jest wi¦cej ni» jeden, to nale»y zwróci¢ pierwszy licz¡c od pocz¡tku tablicy wej±ciowej. Przykªad: dla tablicy 4, -2, 0, 5 i warto±ci d równej 3 funkcja zwraca tablic¦ 2, 4, -2. 2, -1, 2, Je±li funkcja wymaga dodatkowych parametrów, nale»y je doda¢. Warto±¢ bezwzgl¦dn¡ uzyskujemy funkcj¡ abs z biblioteki cmath. Napisz program tworz¡cy tablic¦ liczb caªkowitych o dªugo±ci podanej przez u»ytkownika, pobieraj¡cy i wypisuj¡cy jej zawarto±¢, wypisuj¡cy informacj¦ czy suma wyrazów wys- t¦puj¡cych w niej na symetrycznych pozycjach jest staªa (funkcja CzyStalaSumaSymetryczna) oraz, po pobraniu od u»ytkownika liczby caªkowitej go±ci d tej tablicy o najwi¦kszym wahaniu (funkcja 2 d, wypisuj¡cy ci¡gªy fragment NajwiekszeWahanie). dªu- Zestaw 3-2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! Napisać następujące funkcje: • funkcję Pobierz pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję Wypisz wypisującą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję OdwrocPoczatek modyfikującą tablicę podaną jako parametr poprzez odwrócenie kolejności K początkowych elementów tablicy (gdzie K jest liczbą całkowitą nieujemną będącą drugim parametrem funkcji; jeśli K jest większe od długości tablicy odwracana jest cała tablica). Przykład: dla tablicy 1,2,-3,-4,5,6,7 i K=4 wynikiem będzie tablica -4,-3,2,1,5,6,7; dla tej samej tablicy i K=10 wynikiem będzie tablica 7,6,5,-4,-3,2,1; • funkcję UsunNtkiNieparzystych zwracającą tablicę powstałą z tablicy podanej jako parametr poprzez przekopiowanie do tablicy wynikowej zawartości tablicy wejściowej z wyłączeniem takich grup sąsiednich elementów które zawierają tylko liczby nieparzyste, a ich długość jest nie mniejsza niż N (gdzie N jest liczbą całkowitą dodatnią będącą drugim parametrem funkcji). Przykład: dla N=2 i tablicy 1,2,-3,-1,3,4,-2,2,1,3,0 wynikiem będzie tablica 1,2,4,-2,2,0; dla N=5 i tablicy -1,3,-3 wynikiem będzie tablica pusta. Napisać program tworzący tablicę liczb całkowitych o długości podanej przez użytkownika, pobierający i wypisujący jej zawartość, a następnie pobierający długość fragmentu i wypisujący tablicę po odwróceniu kolejności elementów w tym fragmencie (funkcja OdwrocPoczatek) oraz, po pobraniu od użytkownika liczby całkowitej N, wypisujący tablicę powstałą poprzez usunięcie z tablicy pierwotnej podtablic liczb nieparzystych o długości co najmniej N (funkcja UsunNtkiNieparzystych). Zestaw 4-2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! Napisać następujące funkcje: • funkcję Pobierz pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję Wypisz wypisującą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję ZmienMale modyfikującą tablicę podaną jako parametr poprzez zastąpienie wszystkich elementów tablicy mniejszych od całkowitego K podanego jako drugi parametr funkcji największą lub najmniejszą wartością występującą w tablicy na zmianę – pierwsza zmieniana wartość jest zastępowana największa, druga - najmniejszą, itd. Przykład: dla tablicy 1,-10,3,-7,-1,6,-2,-8 i K=1 wynikiem ma być tablica 1,6,3,-10,6,6,-10,6; • funkcję ParyWiekszeOdwrocone zwracającą tablicę powstałą z tablicy podanej jako parametr poprzez przekopiowanie do tablicy wynikowej wszystkich rozłącznych par elementów stojących na sąsiednich pozycjach tablicy wejściowej zawierających same wartości większe od wartości całkowitej K podanej przez użytkownika jako parametr funkcji, przy czym liczby z każdej pary mają być przekopiowane w odwróconej kolejności (przykład: dla K=3 i tablicy 1,-2,-2,2,1,-3,5,13,-1,4,9,7,5,-3,2 wynikiem ma być tablica 13,5,7,9). Napisać program tworzący tablicę liczb całkowitych o długości podanej przez użytkownika, pobierający i wypisujący jej zawartość, modyfikujący ją poprzez zamianę naprzemiennie na największą lub najmniejszą wartość z tablicy wszystkich wartości mniejszych od K podanego przez użytkownika (funkcja ZmienMale) oraz wypisujący tablicę powstałą po przepisaniu z odwróceniem kolejności do tablicy wynikowej wszystkich rozłącznych par elementów tablicy wejściowej zawierających same wartości większe od wartości K (funkcja ParyWiekszeOdwrocone). Zestaw 5 - 2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! 1. Napisać program zawierający następujące funkcje: • funkcję pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako parametr; • funkcję wypisującą zawartość tablicy liczb całkowitych podanej jako parametr; • funkcję Symetryzuj pobierającą jako parametr tablicę liczb całkowitych i modyfikującą ją w następujący sposób: lewą połowę tablicy „odbijamy” na jej prawą połowę, tak aby otrzymać tablicę symetryczną. np. tablica 1 2 3 4 5 po modyfikacji ma postać 1 2 3 2 1 zaś tablica 1 2 3 4 ma postać 1 2 2 1 Funkcja ta nie zwraca żadnej wartości. • Funkcję NajdluzszaTablicaNiezerowych zwracającą najdłuższą podtablicę niezerowych elementów powstałą z tablicy liczb całkowitych podanej jako parametr. Przez podtablicę tablicy wyjściowej rozumiemy ciąg kolejnych elementów tablicy wyjściowej. Jeśli w tablicy wejściowej wszystkie elementy są zerowe funkcja zwraca NULL. Jeśli najdłuższa podtablica niezerowych nie jest wyznaczona jednoznacznie, to zwracamy pierwszą taką podtablicę (przykład: dla tablicy 2,4,6,0,7,0,7,3,5,9,0 wynikiem jest tablica 7,3,5,9 a dla tablicy 0,4,0,7,2,4,0,1,2,3 wynikiem jest tablica 7,2,4 ) oraz tworzący tablicę liczb całkowitych o długości podanej przez użytkownika, wywołujący funkcje Pobierz, Wypisz a następnie testujący funkcje Symetryzuj oraz NajdluzszaTablicaNiezerowych na tablicy pobranej przy użyciu funkcji Pobierz. Zestaw 6 - 2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! 1. Napisać program zawierający następujące funkcje: • funkcję pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako parametr; • funkcję wypisującą zawartość tablicy liczb całkowitych podanej jako parametr; • funkcję ZamienNaSumePoprzednich pobierającą jako parametr tablicę liczb całkowitych oraz modyfikującą ją w następujący sposób: każdy element tablicy wejściowej zamieniamy na sumę poprzedzających go elementów w tablicy wejściowej (pierwszy element zamieniamy na 0). Np. tablica 1 3 -1 4 2 po modyfikacji ma postać 0 1 4 3 7 zaś tablica 1 2 3 4 ma postać 0 1 3 6. Funkcja ta nie zwraca żadnej wartości. • funkcję PierwszaPodtablicaBliskich pobierającą jako parametr tablicę liczb całkowitych i zwracającą pierwszą podtablicę bliskich elementów. Przez podtablicę tablicy wejściowej rozumiemy ciąg kolejnych elementów tablicy wejściowej. Element tablicy nazywamy bliskim, jeśli co najmniej jeden z jego sąsiednich elementów nie różni się więcej niż o 1 od niego. Przyjmujemy, że jeśli w tablicy jest tylko jeden element, to jest on bliski. (przykład: w tablicy 1,0,2,-1,0 elementy bliskie to 1,0,-1,0; w tablicy jednoelementowej 3 element bliski to 3;w tablicy 2,4 nie ma elementów bliskich) Zatem dla tablicy 1,5,0,1,1,0,2,4, wynikiem jest tablica 0,1,1,0,2. oraz tworzący tablicę liczb całkowitych o długości podanej przez użytkownika wywołujący funkcje Pobierz, Wypisz a następnie testujący funkcje ZamienNaSumePoprzednich oraz PierwszaPodtablicaBliskich na tablicy pobranej przy użyciu funkcji Pobierz. Zestaw 7-2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! Napisać następujące funkcje: • funkcję Pobierz pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję Wypisz wypisującą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję MnozOdbite modyfikującą tablicę podaną jako parametr poprzez zastąpienie każdego elementu tablicy wartością równą iloczynowi tej wartości oraz wartości dla niej symetrycznej w tej tablicy, tzn. pierwszy i ostatni element zastępowane są iloczynem tych wartości, drugi i przedostatni iloczynem tych wartości, itd. Przykład: dla tablicy 1,-10,3,-7,4,0,6,-2,-8 wynikiem ma być tablica -8,20,18,0,16,0,18,20,-8. Jeśli funkcja wymaga dodatkowych parametrów, należy je dodać; • funkcję ParyParzyste zwracającą tablicę powstałą z tablicy podanej jako parametr poprzez wpisanie do tablicy wynikowej wszystkich takich nieuporządkowanych par utworzonych z elementów tablicy wejściowej stojących na różnych pozycjach, które zawierają same wartości parzyste. Przykład: dla tablicy 1,2,-3,-4,3,2,9 wynikiem będzie tablica 2,-4,2,2,-4,2, dla tablicy 2,4,6,8 wynikiem będzie tablica 2,4,2,6,2,8,4,6,4,8,6,8, dla tablicy 1,-3,-2 wynikiem będzie tablica pusta. Jeśli funkcja wymaga dodatkowych parametrów, należy je dodać. Napisać program tworzący tablicę liczb całkowitych o długości podanej przez użytkownika, pobierający i wypisujący jej zawartość, modyfikujący ją poprzez pomnożenie symetrycznych wartości w tej tablicy (funkcja MnozOdbite) oraz wypisujący tablicę powstałą z wpisania do tablicy wynikowej wszystkich nieuporządkowanych par elementów tablicy wejściowej stojących na różnych pozycjach zawierających same wartości parzyste (funkcja ParyParzyste). Zestaw 8-2 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia należy zapisać we wspólnym folderze o nazwie będącej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko źródła programów (pliki o rozszerzeniach .cpp)!!! Napisać następujące funkcje: • funkcję Pobierz pobierającą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję Wypisz wypisującą zawartość tablicy liczb całkowitych podanej jako parametr, o długości podanej jako kolejny parametr; • funkcję ZmienKoncowe modyfikującą tablicę podaną jako parametr poprzez zastąpienie każdego z M końcowych elementów tablicy (gdzie M jest liczbą całkowitą dodatnią będącą parametrem funkcji) wartością równą sumie wartości tego elementu i wartości elementu położonego symetrycznie w zmienianym fragmencie tzn. pierwszy i ostatni element fragmentu zastępowane są sumą tych wartości, drugi i przedostatni element fragmentu sumą tych wartości, itd. W przypadku gdy M jest większe niż długość tablicy zmieniana jest cała tablica. Jeśli funkcja wymaga dodatkowych parametrów, należy je dodać. Przykłady: ◦ dla tablicy 1,-10,3,-7,4,0,6,-2,-8 i M=5 wynikiem będzie tablica 1,-10,3,-7,-4,-2,12,-2,-4. ◦ dla tablicy 1,2,4,6 i M=5 wynikiem ma być tablica 7,6,6,7 • funkcję ParyPodzielne zwracającą tablicę powstałą z tablicy podanej jako parametr poprzez wpisanie do tablicy wynikowej wszystkich takich nieuporządkowanych par utworzonych z elementów tablicy wejściowej stojących na różnych pozycjach, które zawierają wartości podzielne przez siebie (pierwsza wartość w parze dzieli drugą lub druga dzieli pierwszą). Jeśli funkcja wymaga dodatkowych parametrów, należy je dodać. Przykłady: ◦ dla tablicy 1,2,-3,-4,3 wynikiem będzie tablica 1,2,1,-3,1,-4,1,3,2,-4,-3,3 ◦ dla tablicy 2,4,6 wynikiem będzie tablica 2,4,2,6,4,6 ◦ dla tablicy 1,-3,-2 wynikiem będzie tablica pusta. Napisać program tworzący tablicę liczb całkowitych o długości podanej przez użytkownika, pobierający i wypisujący jej zawartość, modyfikujący ją – po pobraniu od użytkownika wartości całkowitej dodatniej M - poprzez sumowanie symetrycznych wartości z M-elementowej końcówki tej tablicy (funkcja ZmienKoncowe) oraz wypisujący tablicę powstałą z wpisania do tablicy wynikowej wszystkich nieuporządkowanych par elementów tablicy wejściowej stojących na różnych pozycjach zawierających wartości podzielne przez siebie (funkcja Podzielne).