middelværde er summen af værdierne/antal SAK er summenen af kvadrattet på (værdi- middelværdi) Spredning er kvadratrodden af følgende ((antalværdier gannge summen af kvadratet på værdierne) minus (kvadratet af summen af værdierne)). Alt dette skal divideres med antalet gange (antalet minus 1)
A og b er værdierne i liniesligning. Den formel vil jeg gerne sende til dig ( kan ikke læses hvis jeg skriver den ind). og billeder kan ikke indsættes. Hvis du sender en mail til lbl@net-ware.dk så skal jeg sende dig alle formelerne
Set conn = server.CreateObject(\"adodb.Connection\") conn.open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath (\"halstat_db.mdb\") \'***********find antal************* Sqlantal = \"SELECT Count(ID) As antal From data_hist WHERE data_hist_beregn_nr=\"&Session(\"beregn_id\") Conn.Execute Sqlantal
Set rs = conn.Execute(Sqlantal) antal=rs(\"antal\") response.write \"antal: \"&antal response.write \"<BR>\"
\'***********find gennemsnit på Y (sandværdi)************* Sqlmiddel_y = \"SELECT avg(sand) As middel_y From data_hist WHERE data_hist_beregn_nr=\"&Session(\"beregn_id\") Conn.Execute Sqlmiddel_y
Set rs = conn.Execute(Sqlmiddel_y) middel_y=rs(\"middel_y\")
\'***********find gennemsnit på X (sandværdi)************* Sqlmiddel_x = \"SELECT avg(malt) As middel_x From data_hist WHERE data_hist_beregn_nr=\"&Session(\"beregn_id\") Conn.Execute Sqlmiddel_x
Set rs = conn.Execute(Sqlmiddel_x) middel_x=rs(\"middel_x\")
\'***********find spredning på X (måltværdi)************* spredning_x=0 Sqlspredning_x = \"SELECT * From data_hist WHERE data_hist_beregn_nr=\"&Session(\"beregn_id\") Conn.Execute Sqlspredning_x
Set rs = conn.Execute(Sqlspredning_x) DO WHILE NOT rs.EOF spredning_x=spredning_x +((rs(\"malt\")-middel_x)^2)
\'***********find spredning på Y (sandværdi)************* spredning_y=0 Sqlspredning_y = \"SELECT * From data_hist WHERE data_hist_beregn_nr=\"&Session(\"beregn_id\") Conn.Execute Sqlspredning_y
Set rs = conn.Execute(Sqlspredning_y) DO WHILE NOT rs.EOF spredning_y=spredning_y +((rs(\"sand\")-middel_y)^2)
Nu hvor jeg læser dit spørgsmål igen. Det som du spøgerger efter er jo præsition i resultateterne. Da det er nøjagtigheden i den datatype du arbejder med som er afgørende, så er der 2 muligheder enten at kode om og regne med \"brøker\" indtil du slutter. eller fastlægge et niveau for præcisionen. i det sidste tilfælde kan du anvende Round( værdi, decimaler) Det bliver nok svært at arbejde helt igennem med brøker da du arbejder med kvadratrod som et element Derfor bør du måske vælge at arbejde med double se præsicionen nedenfor du kan så afslutningsvis bruge en funktion der afrunder resultatet før det præsenteres.
Jeg tror ikke det er mulig at komme et svar nærmere
Long Contains integer in the range -2,147,483,648 to 2,147,483,647. Single Contains a single-precision, floating-point number in the range -3.402823E38 to -1.401298E-45 for negative values; 1.401298E-45 to 3.402823E38 for positive values.
Double Contains a double-precision, floating-point number in the range -1.79769313486232E308 to -4.94065645841247E-324 for negative values; 4.94065645841247E-324 to 1.79769313486232E308 for positive values.
jeg har prøvet at køre med Dobbelt reelt tal mewn det hjælper ikke, jeg har en ide om at det evt er beregningen af avg ,altså \"avg(sand) As middel_y\" der laver fejlen, jeg vil prøve selv at beregne middel, så må vi jo se
Du kan jo også bede den om at skrive alle mellem resultater til skærmen ( debugging a lá Bill Gates ). Så kan du se hvor den ikke anvender det \"pæne\" tal
Du er med på at her står noget der er rimeligt tæt på nul. a: -2,27373675443232E-13
Ja problemet er at det skulle have givet nul !!! men efter hvad jeg har testet, så virker det hvis jeg skriver : middel_y=round(rs(\"middel_y\"),6) på alle de data jeg henter.
og det er nok den løsning jeg må bruge, men om jeg fatter det !!!! det er sq da fordumt at det ikke er muligt at få asp til at regne rigtig !
Nå men point til dig og tak for hjælpen
mvh sth ps. havde du noget kode der laver ca. det samme ?
hvis ja vil jeg da meget gerne se det, du kunne evt sende det til mig på sth@halstat.dk
Jeg har ikke en kode i asp til dette problem, men indledningsvis troede jeg at du ikke kendte formelerne, fordi jeg ikke læste dit spm ordentligt. Jeg blev klogere da jeg så din kode. Den er i øvrigt meget pæn
mvh Lars
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.