E D R , A S I H C RSS

호너의법칙

호너의 법칙



문제 : 다항식
A(x) = (an)Xn+ an-1Xn-1 + ... + a1X + aX

((((an)X + (an-1))X + (an-2))X + ... a1)X + a0
로 변환하는 것을 호너(Horner)의 법칙이라 한다.

호너의 법칙을 이용한 프로그램을 작성하여라.

처리조건

  • 다항식을 처리할 때, 곱셈과 덧셈 횟수를 출력.
  • 이왕이면 곱셈과 덧셈 횟수를 적게.
  • A(x) 값 출력.
  • 파일 출력 사용.

input

 int a[11] = {3,3,3,3,3,3,3,3,3,3,3}
 X 값을 정수로 받아들인다.

output


=====================================================
|index| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
=====================================================
| data| 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 |  3 |
=====================================================
# Horner Function Value ----> 33
# Horner ADD      Count ----> 10
# Horner Multiply Count ----> 10


풀이

작성자 작성언어 개발시간 코드
조현태 C/C++ 호너의법칙/조현태
남도연 C/C++ 호너의법칙/남도연
김태훈(진트) C 호너의법칙/김태훈zyint
김정현 java 호너의법칙/김정현

쓰레드

...... 머리가 나빠서 문제를 이해하지 못해서 못풀겠다는...
첫째. Function Value라는 값은 어떤 값을 넣었을때의 a(x)인것인가?? (왜 인풋에는 넣는게 없지?)
아마 a[11 안에 들어있는 값들은 an, an-1인듯한데, 그렇다면 n의 값도 입력받는지? 11개 고정?
입력이 정말 저런모양인 것인가??? 앞에 int라고까지 적혀있다닛..;;한자씩 입력받는건가? 아니면 저 모양으로 파일입력? 아니면 소스내부에 존재?
Xn이라는 값은 아마 X^n을 뜻하는듯 한데, 맞는것인지..
곱셈과 덧셈횟수를 줄이라는데, { ... ((anX + an-1)X + an-2)x + ... a1 }X + a0 모양으로 정해진게 아니었던가..;;ㅁ;;
문제푸는것보다 이해가 어려워지는..!@#$%^&*()...........
컴퓨터 앞에서 머리를 싸메고 있는 ..-조현태

1넣어보니까 33이랑 10, 10이 나오긴 하네..음.. 그런데 저거 11개인거 입력받는겨??
an들은 다 어디서 나온디아?? 으앙..ㅠ.ㅜ -조현태

- 죄송 ! input안의 내용이 입력받아도 되고, 선언해도 될 듯, 선언이 더 나을것 같음.
그리고 Xn-1는 X의 n-1승 맞음. 곱셈이나 덧셈을 줄이라는 말은, 아마 최소의 항 수를 가지게 하는 것 같음.

문제이해를 못하겠습니다...... -_- --최경현

일반화된 식을 보고, 한번에 파악하기가 어렵다면 n = 1 부터 차근차근 넣어서 손으로 풀어보세요. n = 2, 3, ... 식으로 문제파악이 될때까지 풀어보세요. 그런후에 적절한 설계를 하고, 마지막으로 코딩을 하세요. 데블스캠프 세미나 때 한 하노이타워를 떠올려보세요. -- 보창

배열은 선언하고, 다항식에서 변수 x값은 표준입력받으세요. 예제 output에서는 변수 x = 1입니다. 출력은 output.txt파일에 한번 해보세요. 문제의 요구조건은 이정도 일것 같습니다. 좀 더 일반화된 프로그램을 만들고자 하는 분은 배열도 한번 입력받아 보세요. -- 보창

an 요거 n이 아래첨자군요 -_-;;;........ 태훈zyint

미안하군요. 앞으로 문제 표기 헷갈리지 않게 주의해서 쓰겠습니다 ! -- 아영
----
문제분류 LittleAOI
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2013-12-03 02:25:46
Processing time 0.0983 sec