Anonymní profil Marek.M – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Marek.M – Programujte.comAnonymní profil Marek.M – Programujte.com

 

Příspěvky odeslané z IP adresy 95.85.252.–

Marek.M
Pascal › Hornerovo schéma
3. 5. 2011   #141503

Jsem to ale trouba, řikám, že mi to nemyslí. Díky moc, už to funguje... =)) jupí.

Marek.M
Pascal › Hornerovo schéma
2. 5. 2011   #141490

Zkratka, zadáli uživatel stejné hodnoty, jako jsou následně níže uvedeny, vyjde naprosto odlišné číslo. a já nechápu proč. Něco mi stále uniká.

Marek.M
Pascal › Hornerovo schéma
2. 5. 2011   #141489

Tak, zkusil jsem něco vytvořit, ale mám problém. Zadám-li konkrétní hodnoty koeficientů u jednotlivých mocnin neznámé x, vše se v pořádku vypočítá. Zadám-li hodnoty koeficientů ručně, vypočíta se výsledná hodnota chybně. Nevím proč, pořád něco přehlížím, už mi to nemyslí... Prosím, pomozte, kde dělám chybu ?


Totot je onen nefunkční program (chybný výpočet)



type
stupen=array[0..20] of real;

var
a,b:stupen;
x,s:real;
n:integer;
d:integer;

procedure horner(var a,b:stupen;var x,s:real; n:integer);
var
i:integer;
begin
b[0]:=a[0];
for i:=1 to n do b[i]:=a[i]+b[i-1]*x;

s:=b[n];
end;

begin
clrscr;
writeln('zadej stupen polynomu');
read(n);

writeln('zadej hodnotu pro x');
readln(x);

for d:= 0 to n do
begin writeln('zadej koeficient pri x^',n-d);
readln(a[n]);
end;


write('hodnota funkce v bode',x:1:0,' je:');
horner(a,b,x,s,n);
writeln(s:6:2);

readln;
end.



Nahradím-li část kódu od zadávání stupně polynomu až po konec cyklu napevno danými hodnotami -


n:=3;
a[0]:=2;
a[1]:=-6;
a[2]:=2;
a[3]:=-1;
x:=3;


vše funguje, tak jak má (správný výpočet hodnoty v bodě x=3). Nejspíš je chyba naprosto triviální, já ji však prostě nevidím.
Můžete mi pomoci ? díky.

Marek.M
Pascal › Hornerovo schéma
2. 5. 2011   #141474

Děkuji za rady.
Ta chyba je můj omyl, v programu to mám správně. Jsem už zvyklý používat takovéto značení, ale chápu, že je asi méně praktické. Budu-li v budoucnu zde opět žádat o rady, určitě se Vaší připomínkou inspiruji.
Jdu se pokusit o řešení dle vašich rad, nastane-li nějaký problém, asi se opět ozvu, Prozatím díky.

Marek.M
Pascal › Hornerovo schéma
2. 5. 2011   #141463

Zdravím, pokud mám vyřešenou metodu půlení intervalu za pomoci použití hornerova schématu, jak jej mám použít samotné, aby fungovalo ?





program ...;
var a: array [0..50]of real;

function Horner (Hc:real; Hn:integer):real;
var i:integer;
b:real;

begin b:=a[0];
for li:= 1 to Hn do b:=Hc*b+a[i];
Horner:=b;
end;



Potřebuju nějak tuto funkci použít k zadávaní hodnot polynomu a jeho následného výpočtu právě tak, jak to Hornerovo schéma "umí". Jsem začátečník a moc si s tím nevím rady. Můžete mi prosím pomoci ? Děkuji.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý