Wurzelziehen
Übersicht

![]() |
FaFiBetreff: Wurzelziehen |
![]() Antworten mit Zitat ![]() |
---|---|---|
wäre es möglich ein Programm zum Wurzelziehen mit Blitz Basic zu schreiben ?
(nur mal so gefragt) |
||
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ne, das is unmöglich. ![]() Natürlich geht das. Guck dir den Befehl Sqr in der Onlinehilfe an. |
||
~ Hey Ho Let's Go ~ |
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Meinte er vielleicht eine eigene Routine? Bzw. was, wenn er die kubikwurzel will?? ![]() grüße |
||
http://bl4ckd0g.funpic.de |
![]() |
FaFi |
![]() Antworten mit Zitat ![]() |
---|---|---|
ja
ich meine eine eigene routine oder funktion |
||
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Vielleicht schon sowas?
Code: [AUSKLAPPEN] zahl# = 15 Text 0,0,"Wurzel aus "+ Int(zahl#) +" : "+wurzel#(zahl#) Function wurzel#(z#) Return Sqr(z#) End Function WaitKey():End |
||
~ Hey Ho Let's Go ~ |
- Zuletzt bearbeitet von Blitzkrieg Bop am Do, Sep 16, 2004 18:38, insgesamt einmal bearbeitet
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
[ot] Ohhhh Bop!! Hihi, nein ... das is wirklich total cool!!! Das muss ich mir merken! [/ot] grüße |
||
http://bl4ckd0g.funpic.de |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
David, was soll diese Ironie? ![]() Er hat nach einer Routine zum Wurzelziehen gefragt und da habe ich ihm ein kleines, simples Beispiel geliefert, oder funzt es nicht? ![]() |
||
~ Hey Ho Let's Go ~ |
David |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi!
Hehe, nein! Ich glaube er will eine Routine wo die Wurzel ohne mithilfe der BlitzBasic Funktion berechnet. Quasi eine eigene Herleitung. grüße |
||
http://bl4ckd0g.funpic.de |
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Meinst du? ... hmm ... warum so kompliziert, wenns so einfach geht?
Also das werde ich ihm nun nicht mehr coden. ![]() |
||
~ Hey Ho Let's Go ~ |
![]() |
FaFi |
![]() Antworten mit Zitat ![]() |
---|---|---|
is eigentlich für die Schule ![]() wollt halt mal rumprobieren |
||
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Was ist für die Schule bzw. bist du mit der SQR Lösung zufrieden? | ||
~ Hey Ho Let's Go ~ |
![]() |
FaFi |
![]() Antworten mit Zitat ![]() |
---|---|---|
die SQR Lösung geht
unser Lehrer wollt uns morgen wurzelziehen am pc zeigen und da wollt ich mich ein bischen einschleimen und eine selbstprogrammiertes programm mitbringen ![]() |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Wurzel aus einer Zahl entspricht gleich der Zahl hoch dem Quotient von 1 und der gewünschten Wurzel.
Also 4 ^ (1/2) = (Quadrat-)Wurzel aus 4. Analog für alle anderen Wurzeln... Viel Spass beim Selberprogrammieren.... |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() Dann nimm doch gleich ne Annäherungs-Routine ![]() Code: [AUSKLAPPEN] C + C _______ B * A => A A + C In BlitzBasic sieht das dann so aus: Code: [AUSKLAPPEN] A = (( C + C ) / (A^B + C )) * A
Das ganze packst du in eine Funktion. A, B und C müssen global und als Floats deklariert sein. Vor dem ersten Aufruf muss A auf 1 gesetzt werden, C auf den wert, von dem du die Wurzel haben willst und B gibt die Wurzel an (2 für Quadratwurzel, 3 für Kubikwurzel etc... ) Jedesmal wenn du dann die Funktion aufrufst, nähert sich A schrittweise der "B-ten" Wurzel aus C. Habs getestet, nach 8-20 Schritten (je nach gewünschter genauigkeit oder ausgangszahl für C ) hast du das ergebnis ![]() MfG Edit: Offenbar lässt die "Genauigkeit" von Blitz es nicht zu, extrem hohe Zahlen zu ziehen, schon bei der 8en Wurzel aus 256 rechnet er unendlich ![]() |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
glaub ich weis was du meinst, das haben wir auch in Informatik gemacht. Eine Art schrittweise Iteration oder Näherung zu Wurzel. Ist aber schon länger her. Sollte ichs finden, schick ichs dir ![]() |
||
![]() |
Triton |
![]() Antworten mit Zitat ![]() |
---|---|---|
1/x^n ![]() |
||
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@Triton: nicht wirklich, wenn man Wurzel aus zwei Rechnet, also x=2 und n=2 dann erhält man 1/(2^2) = 0.25, müsste aber ~1.4 sein. Oder ich hab nicht ganz verstanden was du meintest ![]() |
||
![]() |
TheProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] wert# = wurzel(64,3) Print wert# Function wurzel(n#,w#) wert# = n# ^ (1.0/w#) Return wert# End Function so. Hier wird z.B die ³-Wurzel von 64 zurückgeliefert. Ein Problem: Die Zahlen werden gerundet... Wie kann man das ändern? |
||
aktuelles Projekt: The last day of human being |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Garnicht, das ist die maximale Zahlengenauigkeit.
Wenn du es genauer willst musste Delphi oder C / C++ nehmen oder eine sonstige Sprache die Doubles unterstützt. ( da werden sie auch gerundet, nur haben da die zahlen viel mehr stellen zur verfügung ) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Vertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Function sqr2#(value#, error# = 0.00001)
Local a#, b# a# = 1.0 b# = value# Repeat b# = (b# + a#)/2.0 a# = value#/b# Until (b#-a#)<error# Return a# End Function Print sqr2#(25.0) WaitKey |
||
vertex.dreamfall.at | GitHub |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group