Autor Beitrag
Kirk1701A
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 103
Erhaltene Danke: 2

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 8.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 2015 Professional, VS 2017 Community/Enterprise)
BeitragVerfasst: Do 15.03.18 10: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

_________________
"Das Schicksal schützt Frauen, Kinder und Raumschiffe mit dem Namen Enterprise."
- Commander William T. Riker (TNG-Folge: Die Iconia-Sonden)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 3949
Erhaltene Danke: 810

Win7
C++, C# (VS 2015/17)
BeitragVerfasst: Do 15.03.18 10:39 
Hallo,

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

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 8.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 2015 Professional, VS 2017 Community/Enterprise)
BeitragVerfasst: Do 15.03.18 10: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:

_________________
"Das Schicksal schützt Frauen, Kinder und Raumschiffe mit dem Namen Enterprise."
- Commander William T. Riker (TNG-Folge: Die Iconia-Sonden)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 3949
Erhaltene Danke: 810

Win7
C++, C# (VS 2015/17)
BeitragVerfasst: Do 15.03.18 10: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 11:07, insgesamt 1-mal bearbeitet
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 103
Erhaltene Danke: 2

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 8.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 2015 Professional, VS 2017 Community/Enterprise)
BeitragVerfasst: Do 15.03.18 10: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.

_________________
"Das Schicksal schützt Frauen, Kinder und Raumschiffe mit dem Namen Enterprise."
- Commander William T. Riker (TNG-Folge: Die Iconia-Sonden)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 3949
Erhaltene Danke: 810

Win7
C++, C# (VS 2015/17)
BeitragVerfasst: Do 15.03.18 11: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: 103
Erhaltene Danke: 2

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 8.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 2015 Professional, VS 2017 Community/Enterprise)
BeitragVerfasst: Do 15.03.18 11: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:

_________________
"Das Schicksal schützt Frauen, Kinder und Raumschiffe mit dem Namen Enterprise."
- Commander William T. Riker (TNG-Folge: Die Iconia-Sonden)
Kirk1701A Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 103
Erhaltene Danke: 2

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 8.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 2015 Professional, VS 2017 Community/Enterprise)
BeitragVerfasst: Do 15.03.18 11: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?

_________________
"Das Schicksal schützt Frauen, Kinder und Raumschiffe mit dem Namen Enterprise."
- Commander William T. Riker (TNG-Folge: Die Iconia-Sonden)
OlafSt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 455
Erhaltene Danke: 85

Win7, Win81, Win10
Tokyo, VS2017
BeitragVerfasst: Do 15.03.18 11: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 11: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: 3949
Erhaltene Danke: 810

Win7
C++, C# (VS 2015/17)
BeitragVerfasst: Do 15.03.18 11: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: 103
Erhaltene Danke: 2

Linux, Ubuntu, Mac, IOS, Android (4.2.x - 8.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 2015 Professional, VS 2017 Community/Enterprise)
BeitragVerfasst: Do 15.03.18 11: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).

_________________
"Das Schicksal schützt Frauen, Kinder und Raumschiffe mit dem Namen Enterprise."
- Commander William T. Riker (TNG-Folge: Die Iconia-Sonden)
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Chefentwickler
Beiträge: 20313
Erhaltene Danke: 2102

Win 10
C# (VS 2017)
BeitragVerfasst: Do 15.03.18 16: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".