Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
expand_more
expand_more
format_list_bulleted
Question
I need this answer in Haskell
4. Write a function that adds two polynomials. Ensure that the polynomial produced matches the requirements.
addPoly :: (Num a, Eq a) => Poly a -> Poly a -> Poly a
For example:
> addPoly (P [1]) (P [-1,1])
P [0,1]
> addPoly (P [17]) (P [0,0,0,1])
P [17,0,0,1]
>addPoly (P [1,-1]) (P [0,1])
P [1]
You may find it helpful to write addPoly using two helper functions: one to combine the lists of coefficients, and one to trim trailing zeroes.
Your implementation of addPoly should have this property: addPoly p q $$ x == (p $$ x) + (q $$ x)
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution
Trending nowThis is a popular solution!
Step by stepSolved in 3 steps
Knowledge Booster
Similar questions
- Question 5 use c++ to Solve the following short programing tasks: Given a binary array, the task is to count the number of 1’s and 0’s in this array using STL Algorithms in C++.Given an array and an integer N, find elements which are divisible by N, using STL Algorithms in C++.Given a vector, reverse this vector using STL in C++ without using predefined functions/algorithms.Given two vectors, find common elements between these two vectors using STL in C+arrow_forwardIn c++ please help me answer this question I will give you a good rating :) implement the three versions of the addupto20() function: iterative, recursive, and divide-and-conquer approach test these functions with a few inputs from your main() Iterative solution * check if there exsits two numbers from vector data that add up to 20 e.g., if data=[2,5,3,15], the function returns true, as data [0] +data [3]==20 e.g., if data=[3,4,0,8], the function return false precondition: vector data has been initialized postcondition: if there are two numbers from list add up to 20, return true; otherwise, return false */ bool AddupTo20 (const vector‹int> & data){ } Come up with a recursive solution to the problem, following the hints given below: * check if there exsits two numbers from vector data[first...right] add up to 20 e.g., if data=[2,5,3,15], first=0, last=3, the function returns true, as data [0] +data [3]==20 e.g., if data=[2,5,3,15], first=2, last=3, the function returns…arrow_forwardModify the below program in c++ to give the correct output :- void array (int a[]) { cout <« sizeof (a) ; } Also write the driver functionarrow_forward
- For the following C++ code find and write the recurrence relation. You need to model the runtime of function "Func" in terms of n. (only the recurrence relation in terms of n, No output of the code or final runtime analysis is required) s= array L[] start index e= array L[] end index void Func(int L[], int s, int e) { if (s < e) { i=s-1; for (int j = s; j <= e - 1; j++) { if (A[j] <= x) { i++; swap (&L[i], &L[j]); } } swap (&L[i + 1], &L[e]); int k = i+1; Func(L, s, k - 1); Func(L, k + 1, e); } } Please explain how you get the relation Thank you!arrow_forwardI need this function to be defined using Haskell language. Hailstone sequences are produced by repeatedly applying the following mapping to numbers: an even number n maps to n/2 and an odd number m maps to 3m+1.The function hailmap applies this transformation to a single integer.hailmap :: Integer -> Integerhailmap n = undefined Note: when the function is called using an integer the answer will be given based on the number being odd or even. -- ghci> hailmap 7-- 22-- ghci> hailmap 8-- 4 Note: Use div rather than / for division, to avoid the need for conversion between numeric types.-- ghci> 15 `div` 2-- 7arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education