 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 22.02.2007, 21:06 Titel: Def Fn-like in FB? |
|
|
Hi,
naja, als fleißiger Leser der Befehlsreferenz weiß ich natürlich, daß es die Anweisung:in FB nicht gibt, aber im englischen Forum wurde die Frage diskutiert, ob und wie Pointer Funktionsergebnisse liefern können.
Wie kann das Ergebnis denn nun genutzt werden?
Ich habe hier mal ein paar Anwendungsmöglichkeiten zusammengefaßt: Code: | #define Real Double
Option Explicit
Function AddIt(Byval x As Real, Byval y As Real) As Real
Return x+y
End Function
Function SubIt(Byval x As Real, Byval y As Real) As Real
Return x-y
End Function
Function MulIt(Byval x As Real, Byval y As Real) As Real
Return x*y
End Function
Function DivIt(Byval x As Real, Byval y As Real) As Real
Return x/y
End Function
Const MaxFun=3
Dim DefFn(MaxFun) As Function(Byval x As Real, Byval y As Real) As Real
Dim DefFn2(MaxFun) As Function(Byval x As Real, Byval y As Real) As Real={@AddIt, @SubIt, @MulIt, @DivIt}
Dim As Real a, b
Dim As Long i
Dim As String s="+-*/"
For i=0 To MaxFun
Read DefFn(i)
Next
Data @AddIt, @SubIt, @MulIt, @DivIt
a = 10
b = 20
?"a=" &a &" b=" & b
?"+:" &DefFn(0)(a, b)
?"-:" &DefFn(1)(a, b)
?"*:" &DefFn(2)(a, b)
?"/:" &DefFn(3)(a, b)
b=0
?"/:" &DefFn(3)(a, b)
?DefFn(3)(a, b)*3
b = 20
?"a=" &a &" b=" & b
For i=0 To MaxFun
?Chr(s[i]) &":" &DefFn2(i)(a, b)
Next
b=0
?"/:" &DefFn2(MaxFun)(a, b)
?DefFn2(MaxFun)(a, b)*3
Sleep
End | Teils Sachen die offensichtlich sind, teils Sachen, die ich ausprobieren wollte..
..wahrscheinlich gibt es noch viel mehr Möglichkeiten..
Gruß
ytwinky _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 22.02.2007, 22:06 Titel: Re: Def Fn-like in FB? |
|
|
Interessant, aber nun ein bissl off-topic:
ytwinky hat Folgendes geschrieben: | x As Real |
hab ich wa verpasst? Real? _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 22.02.2007, 22:42 Titel: |
|
|
Ja, hast du:
Code: | #define Real Double |
Das steht in der 1. Zeile  _________________
Code: | #include "signatur.bi" |
|
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 22.02.2007, 22:45 Titel: |
|
|
Das ist nämlich ein rattenscharfes define
Wenn du irgendwann feststellst, daß Double sowie vielzuviel ist, dann änderst du nur 1 Zeile und fertich
Wobei ich natürlich zugeben muß, wenn Double durch Long ersetzt wird, funktionieren nicht mehr alle Funktionen richtig(jedenfalls hier).. _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 22.02.2007, 23:20 Titel: |
|
|
Hab mich schon gewundert bzw gefreut, dass es jetzt wieder einen neuen. grooooßen datentyp gibt  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 23.02.2007, 00:04 Titel: |
|
|
gibts ja auch: genauso groß wie du ihn 'define'st und neu ist er dann auch noch  _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
PMedia
Anmeldungsdatum: 14.08.2006 Beiträge: 2847
|
Verfasst am: 23.02.2007, 00:09 Titel: |
|
|
Das beste dran: es ist sein individueller Datentyp xD
Ich definier ma den Datentyp PMedia... große Klappe, nix dahinter xDD
Hm, kein Datentyp geworden... na egal, is ja eh sinnlos  |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|