Autor Beitrag
Kirk1701A
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 126
Erhaltene Danke: 3

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 9.x.x), Win Mob., Micro. DOS, Win 95, Win 98, Win 2000, Win ME, Win XP, Win Vista, Win 7, Win8.1, Win 10
C# (VS 2017 Community/Enterprise, VS 2019 Professional/Enterprise), VB (VBA), JavaScript
BeitragVerfasst: Do 15.03.18 11:01 
Jolan Tru Leute,

ich bin momentan dabei, einen sog. Warprechner auf Basis folgender Formel zu gestalten (Konsole):
ausblenden Quelltext
1:
f(x) = x ^((10/3) / (1 - (x/10)^(( 91,28 / (10-x)^0,27))))					

Allerdings tritt das Problem auf, dass schon bei 1,2 unendlich auftritt. Unendlich darf erst bei exakt 10,0 auftreten. Ich habe schon den Entwickler diese Formel angeschrieben, er konnte sich das auch nicht erklären (er ist übrigens Mathematiker). Ich habe mit allen möglichen Taschenrechnern (Soft- und Hardware-Taschenrechner) versucht, die rechnen allerdings alles richtig. Könnt Ihr mir helfen? Ich gebe die URL an, die diese Formel, sowie eine Tabelle mit richtige Werten enthält. Sobald ihr meine Syntax braucht, meldet euch doch bitte.

Hier die URL: Warpcalc

Danke

Moderiert von user profile iconTh69: Topic aus C# - Die Sprache verschoben am Do 15.03.2018 um 10:35
Moderiert von user profile iconTh69: Code-Tags hinzugefügt
Moderiert von user profile iconTh69: URL-Tag hinzugefügt

_________________
"Ich war es und werde es immer bleiben... Ihr Freund!"
@Spock -> Star Trek II: Der Zorn des Khan
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 15.03.18 11:39 
Hallo,

zeig mal deinen zugehörigen C#-Code.
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 126
Erhaltene Danke: 3

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 9.x.x), Win Mob., Micro. DOS, Win 95, Win 98, Win 2000, Win ME, Win XP, Win Vista, Win 7, Win8.1, Win 10
C# (VS 2017 Community/Enterprise, VS 2019 Professional/Enterprise), VB (VBA), JavaScript
BeitragVerfasst: Do 15.03.18 11:43 
Jolan Tru,

hier der C# Code:
ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
static void Main()
        {
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("Bitte geben Sie den zu berechnende Warpfaktor ein!");
            double Warpfaktor;

            if(double.TryParse(Console.ReadLine(), out Warpfaktor))
            {
                if (Warpfaktor < 10)
                {
                    double Basis = 1.0 - (Warpfaktor / 10.0);
                    double Exp1 = 91.28 / (Math.Pow((10.0 - Warpfaktor), 0.27));
                    double NennerF1 = Math.Pow(Basis, Exp1);
                    double ZählerF1 = 10.0 / 3.0;
                    double F1 = ZählerF1 / NennerF1;

                    Console.WriteLine("~ " + Math.Pow(Warpfaktor, F1));

                    Console.WriteLine(Math.Pow(Warpfaktor, (10 / 3) / (Math.Pow((1 - (Warpfaktor / 10)), (91.28 / (Math.Pow((10 - Warpfaktor), 0.27)))))));
                }

                else
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Der Warpfaktor " + Warpfaktor + " ist nach der TNG-Einteilung eine unendliche Geschwindigkeit.\n");
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine("Die USS Voyager hat schon einmal mit dem Delta-Flyer versucht, allerdings mit der Nebenwirkung, dass Tom Paris und Captain Janeway sich in eine andere Lebensform transformiert hatten. Das MHN konnte die Beiden gerade so noch zurückverwandeln. Seit dem gilt Warp 10 (und schneller) als die gefährlichste Geschwindigkeit überhaupt und auch als eine unendliche Geschwindigkeit, weil theoretisch mit Warp 10 der gesamte Raum mit einmal eingenommen wird.\n\nIn TOS flogen Schiffe oft über Warp 10 (damals noch als Sol-Antrieb (SpeedOverLight) bekannt). Zu TNG änderte man allerdings die Warpeinteilung.");
                    Console.ForegroundColor = ConsoleColor.White;
                }
            }
            
            else
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("\n\nDer eingegebene Warpfaktor ist ungültig.\n");
                Console.ForegroundColor = ConsoleColor.White;
            }

            Console.ReadKey();
        }


Vielen Dank für die Hilfe :flehan:

_________________
"Ich war es und werde es immer bleiben... Ihr Freund!"
@Spock -> Star Trek II: Der Zorn des Khan
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 15.03.18 11:51 
Du berechnest die Variable Basis schon falsch. Erst die Potenz berechnen und dann diesen Wert von 1.0 abziehen...


Zuletzt bearbeitet von Th69 am Do 15.03.18 12:07, insgesamt 1-mal bearbeitet
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 126
Erhaltene Danke: 3

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 9.x.x), Win Mob., Micro. DOS, Win 95, Win 98, Win 2000, Win ME, Win XP, Win Vista, Win 7, Win8.1, Win 10
C# (VS 2017 Community/Enterprise, VS 2019 Professional/Enterprise), VB (VBA), JavaScript
BeitragVerfasst: Do 15.03.18 11:57 
Jolan Tru,

also meinst du, ich muss erst die Potenz (von der ganz oberen Potenz bis zur unteren herunter) ausrechnen, um diese dann mit der Basis zu verrechnen.

_________________
"Ich war es und werde es immer bleiben... Ihr Freund!"
@Spock -> Star Trek II: Der Zorn des Khan
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 15.03.18 12:04 
Ich habe mal eckige Klammern für dich gesetzt:
ausblenden Quelltext
1:
f(x) = x ^((10/3) / (1 - [(x/10)^(( 91,28 / (10-x)^0,27))]))					

Potenz vor Punkt vor Strich :lol:

Für diesen Beitrag haben gedankt: Kirk1701A
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 126
Erhaltene Danke: 3

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 9.x.x), Win Mob., Micro. DOS, Win 95, Win 98, Win 2000, Win ME, Win XP, Win Vista, Win 7, Win8.1, Win 10
C# (VS 2017 Community/Enterprise, VS 2019 Professional/Enterprise), VB (VBA), JavaScript
BeitragVerfasst: Do 15.03.18 12:23 
Jolan Tru,

ich habe den Code angepasst/geändert. Hier die Berechnungssyntax:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
double a = 91.28 / (10 - Warpfaktor);
double b = (Warpfaktor/10);
double c = Math.Pow(b, Math.Pow(a, 0.27));

double F1 = Math.Pow(Warpfaktor, (10/3) / 1) - c;

Console.WriteLine("~ " + F1);

Er rechnet jetzt zwar, aber ich kann den Fehler der totalen Fehlberechnung nicht finden. :bawling: :autsch: :gruebel:

_________________
"Ich war es und werde es immer bleiben... Ihr Freund!"
@Spock -> Star Trek II: Der Zorn des Khan
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 126
Erhaltene Danke: 3

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 9.x.x), Win Mob., Micro. DOS, Win 95, Win 98, Win 2000, Win ME, Win XP, Win Vista, Win 7, Win8.1, Win 10
C# (VS 2017 Community/Enterprise, VS 2019 Professional/Enterprise), VB (VBA), JavaScript
BeitragVerfasst: Do 15.03.18 12:29 
PS:
Ich habe nochmal ein Debugging gemacht und gemerkt, dass in der Variablen F1 (siehe obigen Code) etwas falsch verrechnet wird. Liegt das an der Schreibweise?

_________________
"Ich war es und werde es immer bleiben... Ihr Freund!"
@Spock -> Star Trek II: Der Zorn des Khan
OlafSt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 486
Erhaltene Danke: 99

Win7, Win81, Win10
Tokyo, VS2017
BeitragVerfasst: Do 15.03.18 12:44 
(10/3) / 1 ergibt... Genau, (10/3) ;)

So ist vllt besser (sehr ausführlich geschwafelt):
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
            double x = 3.5;

            //f(x) = x ^((10/3) / (1 - (x/10)^(( 91,28 / (10-x)^0,27)))) 
            double p1 = Math.Pow((10 - x), 0.27);
            double p2 = 91.28 / p1;
            double p3 = Math.Pow((x / 10.0), p2);
            double p4 = 1 - p3;
            double p5 = (10 / 3) / p4;
            double p6 = Math.Pow(x, p5);

_________________
Lies, was da steht. Denk dann drüber nach. Dann erst fragen.


Zuletzt bearbeitet von OlafSt am Do 15.03.18 12:49, insgesamt 1-mal bearbeitet

Für diesen Beitrag haben gedankt: Kirk1701A
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 15.03.18 12:44 
Hä, jetzt hast du schon wieder die (anderen) Potenzen falsch berechnet.
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
double x = Warpfaktor;

double a = 10.0 / 3.0;

double base2 = x / 10;
double pow2 = Math.Pow(10-x, 0.27);
double exp2 = 91.28 / pow2;
double pow1 = Math.Pow(base2, exp2);

double b = 1 - pow1;

double exp1 = a / b;

double f = Math.Pow(x, exp1);

s.a. Ideone-Code

Für diesen Beitrag haben gedankt: Kirk1701A
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 126
Erhaltene Danke: 3

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 9.x.x), Win Mob., Micro. DOS, Win 95, Win 98, Win 2000, Win ME, Win XP, Win Vista, Win 7, Win8.1, Win 10
C# (VS 2017 Community/Enterprise, VS 2019 Professional/Enterprise), VB (VBA), JavaScript
BeitragVerfasst: Do 15.03.18 12:51 
Jolan Tru,

WOW!!! Bin echt begeistert, vielen vielen vielen vielen vielen Dank Th69 und OlafSt!! Jetzt geht es.

P.S.:
Falls du es haben möchtest oder jmd. anderes es haben möchte, kann von mir das Programm ab dem 01.04.2018 anfordern (kostenlos).

_________________
"Ich war es und werde es immer bleiben... Ihr Freund!"
@Spock -> Star Trek II: Der Zorn des Khan
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 15.03.18 17:16 
user profile iconKirk1701A hat folgendes geschrieben Zum zitierten Posting springen:
Jetzt geht es.

Dann markiere den Thread doch bitte auch als beantwortet. Einfach den Link in dem dezenten Hinweis unterhalb dieses Threads klicken ;)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".