Zum Inhalt springen

airenthusiast141

Mitglieder
  • Gesamte Inhalte

    1
  • Benutzer seit

  • Letzter Besuch

Beiträge von airenthusiast141

  1. Hallo,

    entschuldigt, dass ich hier jetzt einfach so reinplatze, aber ich habe ein ähnliches Problem. Ich komme bei einer relativ einfachen Berechnung einfach nicht auf das richtige Ergebnis im Programm. Ich habe mich durchgeackert durch viele Beiträge und unzählige für mich vorstellbare Feherquellen und habe meiner Meinung nach alle notwendigen Deklarationen und Besonderheiten beim Arbeiten mit "double" variablen durchgeführt und beachtet. Es geht um folgendes Problem. Ich möchte das Takeoffweight eines Flugzeuges berechnen lassen, bestehend aus dem vordefinierten Leergewicht, dem Gewicht aller Passagiere (Anzahl der Passagiere wird durch cin definiert) inkl. Gepäck (= toweightbasic) sowie dem zuvor auf ähnliche Weise erfolgreich berechneten Treibstoff in Pfund. Ich hatte einige Zeilen zuvor ein ähnliches Problem beim Ermitteln der empfohlenen Sinkrate, da ließ es sich aber durch das richtige Definieren mit xx.00 beispielsweise und das Rechnen ohne Zahlenwerte, also nur mit Variablen, lösen. Nur hier geht es einfach nicht. Ich habe meinen Taschenrechner gezückt und genauso wies im Quellcode steht 1:1 eingegeben und komme auf 146500 lbs während das Programm ausgibt: 1.03069e+265 bzw. bei einem anderen Testlauf weniger als das, was vorher für das Treibstoffgewicht rauskommt. Treibstoffgewicht bei jedem Durchlauf: 44630.6. Für toweightbasic = passengers*pasandluggageStdWeight kommt der korrekte Wert, nämlich 22880 lbs raus bei 104 Passagieren und 220 lbs als Standardgewicht pro Passagier (inkl. Gepäck). Anbei ein kompilierbarer Teil meines Codes, wäre für baldige Hilfe sehr dankbar. Ich übersehe ganz sicher was. 

    #include <iostream>
    #include <cmath>

    #include <cstring>

    using namespace std;

    int main()

    {

    // Definition of aircraft to use:

    string aircraft;

    cout << "Please tell me which aircraft you wanna use (ICAO): "; getline(cin, aircraft);

    // Aircraft ICAO Codes für eure Tests: Boeing 737 = B738; Boeing 747 = B744, Learjet 45 = LJ45;

    // TOW and TOS Variables
                    double pasandluggageStdWeight = 220.0; // lbs
                    cout << pasandluggageStdWeight; // Testausgabe
                    double passengers; // user input
                    double emptyweightb738 =  90170.0; // lbs
                    cout << emptyweightb738; // Testausgabe
                    double emptyweightb744 = 404845.0; // lbs
                    cout << emptyweightb744; // Testausgabe
                    double emptyweightlj45 =  13550.0; // lbs
                    cout << emptyweightlj45; // Testausgabe

                    double reftakeoffweightb738 = 140507.0; // lbs
                    double reftakeoffspeedb738 = 163.0; // knots
                    double reftakeoffweightb744 = 846365.0; // lbs
                    double reftakeoffspeedb744 = 205.0; // knots
                    double reftakeoffweightlj45 = 20500.0; // lbs
                    double reftakeoffspeedlj45 = 175.0; // knots

                    double maxtakeoffweightb738 = 172500.0; // lbs
                    double maxtakeoffweightb744 = 910000.0; // lbs
                    double maxtakeoffweightlj45 =  20500.0; // lbs

                    double takeoffweight;
                    double takeoffspeed;
                    // TOW and TOS Calculation

                    cout << "Please enter the no. of passengers for this trip (no+.0): "; cin >> passengers;
                    cout << passengers; // Testausgabe
                    double toweightbasic = passengers*pasandluggageStdWeight; cout << toweightbasic;
                    cout << "Calculating take off weight and speed";
                    for(int i=1; i<=5;++i)
                    {
                        cout << "."; Sleep(1000);
                    }
                    cout << ".\n\n";
                    if(aircraft == "B738")
                    {
                        takeoffweight = emptyweightb738+toweightbasic+cruisefuelgtog;
                        takeoffspeed = (takeoffweight/reftakeoffweightb738)*reftakeoffspeedb738;
                    }
                    if(aircraft == "B744")
                    {
                        takeoffweight = emptyweightb744+toweightbasic+cruisefuelgtog;
                        takeoffspeed = (takeoffweight/reftakeoffweightb744)*reftakeoffspeedb744;
                    }
                    if(aircraft == "LJ45")
                    {
                        takeoffweight = emptyweightlj45+toweightbasic+cruisefuelgtog;
                        takeoffspeed = (takeoffweight/reftakeoffweightlj45)*reftakeoffweightlj45;
                    }
                    cout << "Takeoff weight: " << takeoffweight << " lbs\n" << "Takeoff speed: " << takeoffspeed << " knots. Press 'Enter'!"; cin.get();
                    if(aircraft == "B738")
                    {
                        cout << "Maximum Takeoff Weight: " << maxtakeoffweightb738 << endl; Sleep(1000);
                    }
                    if(aircraft == "B744")
                    {
                        cout << "Maximum Takeoff Weight: " << maxtakeoffweightb744 << endl; Sleep(1000);
                    }
                    if(aircraft == "LJ45")
                    {
                        cout << "Maximum Takeoff Weight: " << maxtakeoffweightlj45 << endl; Sleep(1000);
                    }

    return 0;

    }

    Liebe Grüße,

    Martin

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...