Funkce – Pascal – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Funkce – Pascal – Fórum – Programujte.comFunkce – Pascal – Fórum – Programujte.com

 

Pax
~ Anonymní uživatel
1 příspěvek
24. 11. 2008   #1
-
0
-

Mám řadou zadanou funkci suma (od k=1,do n) sin(1/k)*sin(k*x). V zadaném intervalu mám vypsat funkční hodnoty pro 3 daná n. Napsal jsem takovýto program:



function F(n:integer;x:real):real;
var F1:real;
k:integer;
const n1=3;
n2=7;
n3=33;
begin
k:=0;
F1:=0;
if n=n1 then
begin
while k<=n1 do
begin
k:=k+1;
F1:=F1+sin(1/k)*sin(k*x);
end;
end
else if n=n2 then
begin
while k<=n2 do
begin
k:=k+1;
F1:=F1+sin(1/k)*sin(k*x);
end;
end
else if n=n3 then
begin
while k<=n3 do
begin
k:=k+1;
F1:=F1+sin(1/k)*sin(k*x);
end;
end;
F:=F1;
end;
var x:real;
const min=-4;
max=4;
bodu=1000;
begin
x:=min;
while x<=max do
begin
x:=x+(abs(min)+max)/bodu;
writeln(x,' ',F(3,x),' ',F(7,x),' ',F(33,x));
end;
end.

Problém je v tom, že ta funkce by měla počítat součet pro libovolné hodnoty n (a konkrétní n, která chci, se mají asi zadávat až v těle programu), což nevím, jak udělat. Děkuji za pomoc

Nahlásit jako SPAM
IP: 83.208.79.–
o-lox0
Super člen
24. 11. 2008   #2
-
0
-

Na načtení hodnoty do n je
Readln(n);
to je zacatecnicka lekce Pascalu.
Tu sumu pocitej primo v te funkci. Udelej dva vnorene cykly.
To n=n1,n=n2,n=n3 je nesmysl, budes normalne predavat takto:

function F(n:integer):real; {x tam neni bude ve funkci uvnitr}

...
for i:=1 to 3 do begin
readln(n);
{zpracovani} F(n);
end;

Deklaraci promennych (const,var) min,max,bodu,x dej pred tu svou FUNKCI!
++
pokud opravdu potrebujes mit na radku soucasne funkcni hodnotu pro vsechna 3 n, nech si tu puvodni deklaraci, usporadani programu a vypises Write(F(n[i],x),' '); { F(n:integer;x:real):real }
n:array[1..3] of integer;
nacteni : for i:=1 to 3 do readln(n[i]);
a dale jak si to mel.

Nahlásit jako SPAM
IP: 85.71.152.–
Yety0
Stálý člen
23. 12. 2008   #3
-
0
-

To Pax : A jaký tvar má ta funcke suma?

Nahlásit jako SPAM
IP: 89.176.117.–
Kapitán A. J. Rimmer vesmírný dobrodruh
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Moderátoři diskuze

 

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