나는 이것이 새 질문이라는 것을 알고 있습니다. 구성표에 다항식을 표시하는 'displayPoly'함수를 만들려고합니다.계수 목록으로 표현 된 다항식을 문자열로 변환합니다.
(define degree
(lambda(list)
(if (null? list)
(- 1)
(+ 1 (degree (cdr list))))))
: 예를 들어, 목록 '(2 0 1 5.1 8)에 표시한다 배^4 + X^2 + 5.1 배 + I는 다음과 같이 "도"를 정의 제
같이 주어진다
기본 체계 기능에 엄격하게 제한됩니다. • 정의, 람다, 조건, 조건, 죄수, 자동차, CDR, 목록, 구성원, 목록 참조 • 조건 자 : null? 명부? 같은? 끈? 번호? 회원? • 산술 연산자, 관계 연산자, 논리 연산자 • 정렬, 매핑, 필터, foldr, foldl, 길이, 역방향, 추가, 마지막, let, let *, letrec, 인쇄, 시작, 줄 바꿈, 표시, expt, 문자열 추가 , 축소, 범위
제안 사항은 음수 계수에 문제를 일으킬 수 있습니다. 예. '(-1 2 -5)'는'-x^2 + 2x - 5'로 만들어야합니다. – Sylwester
'(-1) x^2 + 2x + (-5)'는 완벽하지는 않지만 적어도 정확합니다. – soegaard
@skywester 네거티브가 표시되는 방식은 문제가 아니 었습니다. "+"가 사이에있는 한. 어쨌든 재귀를 사용하여 작업하고 디스플레이합니다. 내가 얻은 유일한 문제는 0 (5 0 3 -2 1) = 5x^4 + 0x^3 + 3x^2 + -2x + 1이다. 나는 모노와 필터를 매핑하려했지만, 불운. 이것이해야 할 것 같아요. 고맙습니다. –