Avatar billede lillehans Nybegynder
26. april 2006 - 12:04 Der er 6 kommentarer og
1 løsning

Løse Ligninger af 1. og 2. grad randomfunktionen

Er der en der har kode til at få løst en ligning med én eller flere udbekendte?
Kan man få ligninger ved hjælp af random funktionen?
Avatar billede martin_moth Mester
27. april 2006 - 13:04 #1
forstår ikek hvad du spørger om..

Et er at løse ligninger med en eller flere ubekendte - hvad har det med random funktionen at gøre?

Hvad mener du med "Kan man få ligninger ved hjælp af random funktionen?"
Avatar billede lillehans Nybegynder
27. april 2006 - 18:57 #2
Det er 2 spørgsmål:
1) en kode til at løse ligninger
2) ved hjælp af random kan man få et tilfældigt tal, heltal eller decimaltal.
Måske kunne man også få en tilfældig ligning, fx x+2 = 10
Avatar billede martin_moth Mester
28. april 2006 - 08:17 #3
Hvis du bryder dine ligninger op i

Ax^2 + Bx + C = 0

og beder brugeren indlæse A (hvis der er et A), B og C, kan du jo selv opstille ligningen for at løse den, og skrive resultatet ud.

F.eks

If A=0 then 'førstegradsligning
  løsning = -C/B
Else 'Andengradsligning
  løsning1 = -B + sqr(B^2-4*A*C)/(2*A)
  løsning2 = -B - sqr(B^2-4*A*C)/(2*A)
End if

Du kan jo tjekke determinanten og fortegnene på koeficienterne for allerede inden du begynder at regne, at se om der overhovedet ER nogle løsniger - det kunne jo være, at størrelsen B^2-4*A*C er mindre end nul, og så er der jo ingen (reelle) løsninger

        ___________


Hvis du i stedet beder brugeren indtaste HELE ligningen, og ikke kun koeficienterne, altså fx "5x^2+3x-8=0" er det straks meget værre. - så skal du pille A, B og C ud af den tekststreng, og desuden gøre alverdens fikfakserier for at tjekke, at der er indtastet en lovlig ligning

        ___________


Random: Du kan jo bare via randomfunktionen genere en masse til, du kan smide ind som koeficienter i en ligning - brug Randomize imellem hver kørsel af Random, så bliver det mere tilfældigt
Avatar billede martin_moth Mester
28. april 2006 - 08:30 #4
-B - sqr(B^2-4*A*C)/(2*A)
rettes til
(-B - sqr(B^2-4*A*C))/(2*A)
Avatar billede martin_moth Mester
28. april 2006 - 08:31 #5
tilsvarende med løsning1 - der mangler også en parantes
Avatar billede lillehans Nybegynder
28. april 2006 - 08:51 #6
martin_moth Tak for hjælpen , jeg prøver senere på dagen. Hvis jeg ikke kan få det til at fungere, vender jeg tilbage.
Avatar billede martin_moth Mester
28. april 2006 - 09:25 #7
tjek selv om det hedder sqr() eller sqrt() - i VB6 hedder det det ene, i VBA det andet, kan ikke huske hvad der gælder i VB6
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester