tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
533
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von NSR
    NSR NSR ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Beiträge
    94
    Hi Leute,

    es geht darum, dass ich VB Code Convertiert habe und es in VB bei einem Wert von Math.Pow(X, (-5 / 17)) die -5/17 nicht 0 ist sondern eine Kommazahl. In C# allerdings müsste man -5.0 / 17.0 schreiben. Nun breuchte es allerdings etwas an Zeit hinter jede Zahl ein .0 zu schreiben und deswegen die Frage:
    Kann man in C# Visual Studio einstellen, dass in einer Klasse, in einem Namespace, ... jede geschriebene Zahl als double gesehen wird und nicht als int?

    Hoffe ihr versteht was ich meine.

    Danke schon einmal für die Antworten.

    Grüße,
    Nico
     

  2. #2
    Avatar von Turri
    Turri Turri ist offline Mitglied Brokat
    Registriert seit
    Jun 2005
    Beiträge
    354
    Hallo,

    warum nicht mit Convert.ToDouble() arbeiten?
     
    MfG Turri

    PS: Wenn ich helfen konnte, würde ich mich über ein Danke oder eine positive Bewertung freuen. :-)

  3. #3
    Avatar von NSR
    NSR NSR ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Beiträge
    94
    Hi,

    dann könnte ich ja auch den kompletten Code durchgehen und überall wo ne Zahl steht .0 dahintersetzen.
    Des wäre dann auch noch weniger schreibkram wie überall Convert... zu schreiben.
    Mir geht es aber darum, dass ich des nicht selber machen will, sondern im Studio oder irgend wo anders dem Code sagen möchte:"Werte alle Zahlen als double". Natürlich nur alle Zahlen, die keiner Variable zugewiesen sind.

    Noch als kleiner Hintergrund.
    Es geht in dem Programm um mathematische Formeln und da ist es extrem schlimm, wenn der depperte Compiler (wie im ersten Beitrag geschrieben) aus Math.Pow(5, (-5/17)) die -5/17 daraus keine Flieskommazahl berechnet sondern des als int lässt und deswegen nach der 0 abschneidet. Denn es ist ein gewaltiger Unterschied, ob man ^0 oder ^0.00431 hat.
    Geändert von NSR (14.04.11 um 11:06 Uhr)
     

  4. #4
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    "deppert" ist hier eher der Compiler von Visual Basic, -5 und 17 sind nunmal keine Fliesskommazahlen, warum sollte also der Compiler sie als solche auffassen? Und in den letzten Jahren in denen ich mit Visual Studio gearbeitet habe ist mir keine Möglichkeit aufgefallen das zu tun (was eigentlich auch gut ist).
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  5. #5
    Avatar von Turri
    Turri Turri ist offline Mitglied Brokat
    Registriert seit
    Jun 2005
    Beiträge
    354
    Ich frage mich eher warum bei NSR so viele "harte" Zahlen im Quellcode stehen,
    sodass es wirklich aufwand ist, alle umzuwandeln.
    Das erscheint mir etwas seltsam und undynamisch.
     
    MfG Turri

    PS: Wenn ich helfen konnte, würde ich mich über ein Danke oder eine positive Bewertung freuen. :-)

  6. #6
    Avatar von NSR
    NSR NSR ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Beiträge
    94
    @Turri: Das liegt daran, weil ich das Programm von VB6 in C# umwandeln soll und das Programm vor 25 Jahren von meinem Chef geschrieben wurde. Außerdem kann man dabei mit festen Werten arbeiten, da es sich um physikalische Größen handelt die gleich bleiben.
    @Muepe32: Hast schon recht, dass der VB Compiler da eigentlich was falsch macht, aber des isch jetzt halt voll ******e, da an verdammt vielen stellen im VB Code int zahlen stehen, die ich jetzt der Genauigkeit halber in doubles umwandeln muss.
     

  7. #7
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    Du kannst natürlich versuchen selber kurz ein Programm zu schreiben, das nach Zahlen sucht, die nicht von einem . gefolgt werden (Stichwort Regex) und das dann automatisch mal an einer Testcopie des Sourcecodes durchlaufen lassen, vielleicht funktionierts ja schon gut.
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  8. #8
    Avatar von NSR
    NSR NSR ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Beiträge
    94
    Habs so ähnlich gemacht. Ich bin mit Suchen und Ersetzen von Studio durchgegangen und hab alle ersetzt. Blöd nur, dass der dabei auch alle indexer auf double gesetzt hat, was wieder zu fehlern geführt hat.

    Nur mal so nebenher, ich hab das jetzt alles Händisch gemacht. Zumindest soweit ich was gesehen habe. Mich würde es aber trotzdem interresieren, ob man das umstellen kann.
    Vor allem, da ich noch Code habe, den ich von VB in C# umsetzen muss.
     

  9. #9
    Avatar von Shakie
    Shakie Shakie ist offline Mitglied Diamant
    Registriert seit
    May 2004
    Ort
    Europa
    Beiträge
    2.048
    Wie hast du denn den VB6-Code nach C# konvertiert? Das hört sich für mich nach einem Bug im benutzten Converter an. Das nächste Mal solltest du vllt. einen anderen benutzen.
     
    hihi = -h²

  10. #10
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Hi.
    Zitat Zitat von NSR Beitrag anzeigen
    Außerdem kann man dabei mit festen Werten arbeiten, da es sich um physikalische Größen handelt die gleich bleiben.
    Dann definiert man allerdings aussagekräftige Konstanten und verwendet keine "Magic Numbers".

    Wenn man sauber arbeitet, spart man sich oft eine Menge Arbeit...

    nur meine 0.02€

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  11. #11
    Avatar von NSR
    NSR NSR ist offline Mitglied Silber
    Registriert seit
    Nov 2008
    Beiträge
    94
    Mit sauber arbeiten ist leicht gesagt. Des Problem ist, dass es recht schnell gehen muss. Des ist meine Projektarbeit und da will ich echt nicht 20 Stunden mit dem Raussuchen von Konstanten verschwenden.

    Und alle die jetzt meinen von wegen des Projekt duchgehen und überall .0 hinter ne Zahl zu schreiben ist (fast) genauso Zeitaufwändig, gerade deshalb habe ich ja die ursprüngliche Frage gestellt.
     

Ähnliche Themen

  1. Antworten: 8
    Letzter Beitrag: 19.07.10, 15:09
  2. Minimum von beliebig vielen double Werten
    Von prinzschleifer im Forum Java
    Antworten: 11
    Letzter Beitrag: 28.02.09, 13:19
  3. Modulo mit double Zahlen
    Von roxX0r im Forum Java
    Antworten: 3
    Letzter Beitrag: 28.01.09, 13:41
  4. grafische Darstellung von Double-Werten
    Von paul meier im Forum .NET Windows Forms
    Antworten: 1
    Letzter Beitrag: 18.09.06, 17:51
  5. Antworten: 1
    Letzter Beitrag: 20.08.04, 18:11