• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Wyliczenie w(x) dla danego wielomianu

VPS Starter Arubacloud
0 głosów
480 wizyt
pytanie zadane 14 listopada 2019 w C i C++ przez P_T_ Nowicjusz (140 p.)
zamknięte 14 listopada 2019 przez P_T_

Cześć! Jestem początkujący i mam problem z kodem który napisałem.

Mam przykładowy wielomian x^3-4x^2+x+6 i np dla x = 2 chcę wyliczyć w(x) (z definicji a nie za pomocą schematu Hornera)

Niestety z jakiegoś powodu w drugiej pętli for wyrażenie x = x * x0 z nieznanego mi powodu nie zmienia swojej wartości (powinno być w kolejnych przejściach 8,4,2,1)

#include <stdio.h>


int main(){
    int n = 3, x, x0=2;
    int i = 0, k =0;
    int A[3];
    A[0]=6;
    A[1]=1;
    A[2]=-4;
    A[3]=1;
  int w = 0;
  for(i = n; i >= 0; i--){
    x = 1;
    for(k = 1; k <= i; k++){
            x = x * x0;}
    w = (A[i]*x+w);}




printf("%i", w);


return 0;

}

Może wiecie co jest problemem? Albo możecie mi jakoś podpowiedzieć jak zmnienić kod aby działał? Jeśli wiecie gdzie mogę znaleźć pseudokod do takiego zadania to też będę wdzięczny.

komentarz zamknięcia: .

2 odpowiedzi

0 głosów
odpowiedź 14 listopada 2019 przez los losiowski Obywatel (1,800 p.)
Polecam sprawdzić czy obie pętle działają np. w każdej iteracji będzie napisane"pętla 1 działa"
0 głosów
odpowiedź 14 listopada 2019 przez Bondrusiek Maniak (61,440 p.)

Witam,

nie potrzebnie robisz 2 pętle for. Jedna wystarczy:

int horner(int wsp[],int st, int x)
{
	int wynik = wsp[0];

	for(int i=1;i<=st;i++)
		wynik = wynik*x + wsp[i];
	
	return wynik;
}

gdzie wsp[] to współczynnik przy potędze, st to stopień wielomianu a x to argument, który chcesz sprawdzić.

Więcej info z teorią:

http://www.algorytm.edu.pl/algorytmy-maturalne/schemat-hornera.html

Podobne pytania

0 głosów
0 odpowiedzi 374 wizyt
+5 głosów
2 odpowiedzi 1,614 wizyt
0 głosów
0 odpowiedzi 229 wizyt

93,008 zapytań

141,975 odpowiedzi

321,256 komentarzy

62,350 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...