Question: Racket language question The following Tree datatype implements a binary tree with a number in each node and leaf: (define-type Tree (leaf [val : Number])

Racket language question

The following Tree datatype implements a binary tree with a number in each node and leaf:

(define-type Tree

(leaf [val : Number])

(node [val : Number]

[left : Tree]

[right : Tree]))

Implement the function positive-trees?, which takes a list of trees and returns #t if every member of the list is a positive tree, where a positive tree is one whose numbers sum to a positive value. Hint 1: This function takes a list, not a tree, so dont try to use the template for a tree function. Hint 2: Use your sum function as a helper. Hint 3: (positive-trees? empty) should produce #t, because theres no tree in the empty list whose numbers sum to 0 or less. More examples: (test (positive-trees? (cons (leaf 6) empty)) #t) (test (positive-trees? (cons (leaf -6) empty)) #f) (test (positive-trees? (cons (node 1 (leaf 6) (leaf -6)) empty)) #t) (test (positive-trees? (cons (node 1 (leaf 6) (leaf -6)) (cons (node 0 (leaf 0) (leaf 1)) empty))) #t) (test (positive-trees? (cons (node -1 (leaf 6) (leaf -6)) (cons (node 0 (leaf 0) (leaf 1)) empty))) #f)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!