kleine Mathe erweiterungen
Übersicht

$tankYBetreff: kleine Mathe erweiterungen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hab mich vor kurzem mit c++ beschäftigt, und hab dann letztens eine Vorlage für DLLs in Dev-C++ gesehen, da hab ich halt meinen BB Code in C++ umgeschrieben und in ne DLL gespeichert, das ist diese DLL:
DownloadLink Sie kann z.Z. nur - Wurzeln berechen (nur positive) - den ggT berechnen - den kgV berechnen - die Fakultät berechnen - nCr bzw N über R berechnen (aus dem Pascalschem Dreieck) Das is nur n Test von mia (in ner Min geschrieben), also nicht so viel erwarten ![]() |
||
Florian |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Schon wieder eine DLL
Code: [AUSKLAPPEN] Print SquareRoot(2) Print ggT(8,4) Print kgV(4,16) Print Fak(5) waitkey Function SquareRoot#(Zahl#) Return Sqr#(Zahl#) End Function Function Fak(Zahl) If Zahl=>1 Then Wert=1 For Nr=2 To Zahl Wert=Wert*Nr Next Return Wert End Function Function kgV(Zahl1,Zahl2) Local Counter Local kgV While Not kgV Counter = Counter + 1 If Float(Counter)/Float(Zahl1) = Counter/Zahl1 Then If Float(Counter)/Float(Zahl2) = Counter/Zahl2 Then kgV = Counter EndIf EndIf Wend Return kgV End Function Function ggT(a%,b%) While b<>0 r = a Mod b a = b b = r Wend Return a End Function |
||
- Zuletzt bearbeitet von Florian am Fr, Sep 22, 2006 20:15, insgesamt 2-mal bearbeitet
![]() |
Ninja |
![]() Antworten mit Zitat ![]() |
---|---|---|
Owned. | ||
Spiele & Security Tools
www.SelfSoft.org |
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
wie gesagt, is nur n test, die sachen hat ich auch zuerst in bb (habs se auch ins eglische forum geposted) und hab se halt zum ausprobieren umgeschrieben ![]() |
||
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Kannst du mal den (C++) Sourcecode posten?
Ich hab nämlich auch Dev C++, aber 0 Ahnung wie ich Funktionen erstellen / in Blitz reinkriegen kann. |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hab das ganze nach dem Tut von hier gemacht: LINK
Und Source (*erstma_such*): Musste erstma neues Projekt und dann auf DLL, dann in dllmain.cpp Code: [AUSKLAPPEN] #include <windows.h> #include "dll.h" EXPORT float CALLBACK Sqr(float a) { float x0; float check; while ( x0 != check) { check = x0; x0 = 0.5 * ( x0 + a / x0); }; return x0; } EXPORT int CALLBACK ggT(int A,int B) { int R; while ( B > 0 ) { R = A % B; A = B; B = R; }; return A; } EXPORT int CALLBACK kgV(int A,int B) { return A * ( B / ggT(A,B)); } EXPORT int CALLBACK Fak(int n) { int check=1; for (int i=1;i<=n;i++) { check=check*i; } return check; } EXPORT int CALLBACK nCr(int n,int k) { return Fak(n)/(Fak(k)*Fak(n-k)); } und in dll.h Code: [AUSKLAPPEN] #ifdef __cplusplus #define EXPORT extern "C" __declspec (dllexport) #else #define EXPORT __declspec (dllexport) #endif EXPORT float CALLBACK Sqr(float a); EXPORT int CALLBACK ggT(int A,int B); EXPORT int CALLBACK kgV(int A,int B); EXPORT int CALLBACK Fak(int n); EXPORT int CALLBACK nCr(int n,int k); Und die decls: Code: [AUSKLAPPEN] .lib "maths.dll" SquareRoot#( a# ):"Sqr" ggT%( A%,B% ):"ggT" kgV%( A%,B% ):"kgV" Fak%( n% ):"Fak" nCr%( n%,r% ):"nCr" PS: Manche Funktionen können noch optimiert werden. |
||
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Thx, aber welchen Button muss ich drücken, damit das ganze in eine Dll compiliert wird?
Also ich hab alle Buttons schon ausprobiert, aber da wird keine Dll raus ![]() |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
X0r |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Der erstellt die Dlls automatisch. Einfach mal den Button "Compile" ausprobieren. | ||
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich glaub ich mach irgendetwas falsch ![]() Ich klick immer auf den grünen Haken, und es wird auch etwas kompiliert, aber ich finde die Dll nicht??? |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich schick dir einfach die Projekt Dateien bzw einen Rohling, den kannste dann abändern wie du willst.
LINK Wenn du noch C++ lernst, dann kann ich dir ein gutes englisches Einsteiger Tutorial empfehlen: http://www.cplusplus.com/doc/language/tutorial/ |
||
lettorTrepuS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger. | ||
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Es reicht aus, wenn man an die Variable und an die Funktion ein einfaches #-Zeichen anhängt ![]() Code: [AUSKLAPPEN] Function SquareRoot#(Zahl#) Return Sqr(Zahl#) End Function überflüssig ![]() |
||
lettorTrepuS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger. | ||
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Es ist sehr unwahrscheinlich, dass Florian diesen Thread lesen wird und seinen vor 8 Monaten geposteten Code ändern wird ![]() ![]() |
||
lettorTrepuS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger. | ||
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi ich bins wieder:
Ich bin am verzweifeln, da ich es irgentwie nich hinbekommen eine Dll zu kompilieren ![]() ![]() ![]() ![]() Ich hab aber schon alles ausprobiert: "Run Project" "Compile Project" "Compile and Run Project" und "Rebuild All" Aber es will nicht !!! |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hast du meinen Rohling genommen?
Dann musst du einfach Projekt1.dev öffnen, dann auf "Ausführen" und dann auf "Kompilieren", dannach sollte Projekt1.dll in dem Ordner von Projekt1.dev sein. Die DLL kannst du umbennen. |
||
Florian |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo
Ich habe die Function SquareRoot in SquareRoot# geändert. MfG Florian |
||
$tankY |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Schön, dass du nun die Kopierfunktion beherrschst.
Abgerundet mit einem Zitat eines Vorredners: Ninja hat Folgendes geschrieben: Owned.
|
||
lettorTrepuS |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger. | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group