Zeitberechnen|Dreisatz - Problem bei Gleichung

  • VB.NET

Es gibt 16 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Zeitberechnen|Dreisatz - Problem bei Gleichung

    Hi,

    Quellcode

    1. X= MB pro sekunden
    2. Y= Gesamt MB
    3. Z= Ergebnis
    4. Y / X = A
    5. A / 60 = Z



    Ist die Gleichung so richtig? - Wenn ich das so mache kommt mir die zahl verdammt groß vor...


    Bitte um hilfe
    Ich wette, du hast dich irgendwo mit den Einheiten vertan. Das, was du bisher gefragt hast, ist übrigens keine VB-Frage. Sie hat keinerlei Bezug zu VB. Poste mal deinen Code, wo die Berechnung durchgeführt wird.

    lg SeriTools
    | Keine Fragen per PN oder Skype.
    1. Rechnen mit Strings...
    2. Array, wofür?
    3. Woher kommen die Inhalte für die TextBoxen?
    4. Warum benutzt du nicht sofort diese Quellen zur Berechnung?

    am ende wollte ich den vb code posten...so als lösung für alle..

    Mach das lieber nicht. Wenn du an so einem kleinen Problem scheiterst, solltest du den Code lieber löschen und die Grundlagen durcharbeiten, anstatt anderen helfen zu wollen, obwohl du es selbst noch nicht richtig kannst...
    | Keine Fragen per PN oder Skype.

    VB.NET-Quellcode

    1. temp = TextBox2.Text
    2. MsgBox(temp)
    3. rechnung(3) = (TextBox3.Text / temp) / 60
    4. TextBox6.Text = Format(rechnung(3))
    5. Timer1.Stop()


    temp ist 1400
    TextBox3.Text ist 218340105584896 (keine MB...war gerade nur ein platzhalter...)

    dann kommt dann 2,791074E+07 min raus raus also glaube ich kommt das net hin.


    Zum Thema array...das kommt, weil ich als erstes damit gerechnet habe, ich habe nicht die quellen genommen weil ich es mit variablen übersichticherfinde und auch abrufen wenn sich die textbox geändert hat.
    Warum willst du denn eigtl. die MB pro Sechzigstel-Sekunde berechnen (laut Rechnung im Startpost).

    Warum setzt nur temp und TB3.Text außerhalb realistischer Werte? UND WARUM THE FUCK RECHNEST DU MIT SCHEISS STRINGS. Gönn dir mal explizite Typkonvertierungen.
    | Keine Fragen per PN oder Skype.
    Jez rechne ich nicht mehr mit String.

    VB.NET-Quellcode

    1. TextBox6.Text = (TextBox3.Text / Int32.Parse(TextBox2.Text)) / 60
    2. Timer1.Stop()


    Wenn ich es nicht duch 60 teile hätte ich ja nur die Sekunden berechnet, wenn ich durch 60 teile bekomme ich die minuten raus?!
    machst du mal bitte Option Strict On!
    Wenn dann so :

    VB.NET-Quellcode

    1. TextBox6.Text = (integer.Parse(TextBox3.Text) / Integer.Parse(TextBox2.Text) / 60).ToString

    liefert zumindest bei mir das richtige ergebnis :thumbsup:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „FloFuchs“ ()

    schiess mal los...
    wieviel MByte hast du?
    wie hoch is die übertragungsrate?
    btw so... würd ich das glaub lösen

    VB.NET-Quellcode

    1. Dim GesamtMbyte As Integer
    2. Dim MbytePerSec As Integer
    3. If Integer.TryParse(TextBox1.Text, GesamtMbyte) AndAlso Integer.TryParse(TextBox2.Text, MbytePerSec) Then
    4. TextBox3.Text = New TimeSpan(0, 0, GesamtMbyte \ MbytePerSec).Minutes.ToString
    5. End If

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „FloFuchs“ ()

    @xDimitrius:
    Schmeiß das alles über den Haufen und fang bitte noch mal von vorne an.
    Wenn physikalisch-technische Größen in Deinem Programm eine Rolle spielen, gib jeder dieser Variablen einen Namen, der 1. für sich spricht und 2. auch die Einheit im Namen hat.
    Diesen Variablen weist Du ohne weitere Rechnung die Werte der Textboxen zu:

    VB.NET-Quellcode

    1. Dim GeschwindigkeitKmH As Double = Double.Parse(TextBox1.Text)
    2. Dim ZeitSec As Double = Double.Parse(TextBox2.Text)
    Und wenn Du Einheiten umrechnest, tu es so:
    (1 Stunde) / (3600 Sekunden) = 1 ' dies ist eine physikalische Gleichung.
    -------------
    Umrechnung Stunde => Sekunde:
    Zeit1Stunde * UmrechnungsfaktorSekunde_Durch_Stunde => Zeit1Stunde * 3600 Sekunden / Stunde ' hier kannst Du die Einheit Stunde kürzen
    also:
    Zeit1Sekunde = Zeit1Stunde * 3600 [* (Sekunden/Stunde)]
    -------------
    Umrechnung Sekunde => Stunde:
    Zeit1Sekunde * UmrechnungsfaktorStunde_Durch_Sekunde => Zeit1Sekunde * (1/3600 * Stunden / Sekunde) ' hier kannst Du die Einheit Sekunde kürzen
    also:
    Zeit1Stunde = Zeit1Sekunde / 3600 [* (Stunde/Sekunden)]
    ------------------
    Wenn Du das konsequent durchziehst, natürlich bezogen auf Deine Werte und Einheiten, musst Du Dich nicht über merkwürdig große oder kleine Zahlen wundern. :thumbsup:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!