Suma wielomianów
Treść zadania
Napisz funkcję suma_wielomianow(a, b), która otrzymuje listy współczynników dwóch wielomianów (mogą mieć różne stopnie) i zwraca listę współczynników ich sumy.
Program wczytuje oba wielomiany, wywołuje funkcję i wypisuje współczynniki wyniku.
Dane wejściowe
- 1. linia:
n— stopień pierwszego wielomianu (n ≥ 0) - 2. linia:
n+1liczb całkowitycha_n ... a_0 - 3. linia:
m— stopień drugiego wielomianu (m ≥ 0) - 4. linia:
m+1liczb całkowitychb_m ... b_0
Dane wyjściowe
Jedna linia: dokładnie max(n, m) + 1 liczb całkowitych — współczynniki sumy od najwyższej potęgi, oddzielone spacją. Nie usuwaj zer z początku wyniku (np. gdy najwyższe potęgi się zredukują).
Ograniczenia
0 ≤ n, m ≤ 10-100 ≤ a_i, b_i ≤ 100
Uwagi
- Jeśli stopnie są różne, wyrównaj listy „od końca” (od wyrazu wolnego), dopisując zera na początku krótszej listy. Np.
1 2 3 4+5 6=1 2 8 10.
Przykład
2 3 5 2 2 2 -8 1
5 -3 3
$(3x^2 + 5x + 2) + (2x^2 - 8x + 1) = 5x^2 - 3x + 3$.
Potrzebujesz teorii?
Zasady obowiązujące w rozdziale 14
Poniższe zadania dotyczą pisania funkcji operujących na wielomianach. Wielomian zapisujemy jako listę jego współczynników od najwyższej potęgi do wyrazu wolnego: lista [a_n, a_{n-1}, ..., a_1, a_0] oznacza wielomian $a_n x^n + a_{n-1} x^{n-1} + \dots + a_1 x + a_0$.
Konwencje wspólne:
- Każde zadanie to osobny program: czyta standardowe wejście i wypisuje wynik na standardowe wyjście. Główną pracę wykonuje funkcja opisana w treści zadania — program tylko wczytuje dane, wywołuje funkcję i wypisuje wynik (gotowy szkielet znajdziesz w sekcji „Kod startowy”).
- Wielomian stopnia
njest podawany w dwóch liniach: najpierw liczban, a w następnej liniin+1liczb całkowitycha_n a_{n-1} ... a_0oddzielonych spacjami. - Współczynniki są liczbami całkowitymi (mogą być ujemne). Dla
n ≥ 1współczynnika_njest różny od zera. - Gdy wynikiem jest wielomian, wypisz jego współczynniki od najwyższej potęgi w jednej linii, oddzielone pojedynczą spacją, bez nawiasów i przecinków.
- Program nie wypisuje komunikatów typu „Podaj liczbę:”.
Zadanie pochodzi z otwartego zbioru Nauka-Programowania (z rozwiązaniami wzorcowymi). Zgłoś błąd w treści lub testach.
Przywrócono Twój zapisany kod.
Python uruchomi się w przeglądarce przy pierwszym teście.
Kod zapisuje się automatycznie w tej przeglądarce. Tab wstawia wcięcie; aby opuścić edytor klawiaturą, naciśnij Esc, a potem Tab.
Testy
Program dostaje „Wejście” przez input() i musi wypisać „Oczekiwane wyjście”. Liczby porównywane są z tolerancją 0,01, a tekst podany w input("…") nie jest sprawdzany.
Test 1
Nie uruchomiono2 3 5 2 1 1 2
3 6 4
Test 2
Nie uruchomiono0 5 2 1 0 -1
1 0 4
Test 3
Nie uruchomiono3 1 2 3 4 1 5 6
1 2 8 10
Test 4
Nie uruchomiono2 3 5 2 2 -3 1 1
0 6 3
Test 5
Nie uruchomiono0 4 0 -4
0