HILFE!! C++ Programm für SolarProjekt
-
ja,schon hab doch überall Float oder net?
das mit dem Punkt weiß ich, hab ich auch so in der Eingabeaufforderung geschrieben.
Wieso alte Header??? WElche sollte ich den benutzen ?

-
Deine komischen Werte kommen daher, weil du Gesamtleistung nirgends mit 0.0 initialisierst.
Zum speichern des Datums/Uhrzeit bietest sich ein array von time_t an.
Die neuen Header wären#include <iostream> #include <ctime> using namespace std; // eventuellKurt
-
wie meinst des mit dem array von time_t ???
kannste mir ein beispiel progen wär echt net !
danke
-
time_t zeitstempel[234];psycracker schrieb:
kannste mir ein beispiel progen
Kann mir unter "progen" nichts vorstellen.
Kurt
-
mit progen meinte ich programmieren...
deine erklärungen sind bestimmt gut aber nicht wirklich sinnvoll für mich da ich es nicht ganz versteh bin kein profi...
könntest du deine antworten vieleicht etwas mehr erläutern?`
Übrigens: Danke, das mit der Initialisierung hat gefunzt!
danke
-
> Deine komischen Werte kommen daher, weil du Gesamtleistung nirgends mit 0.0 initialisierst.
void Solar::ausrechneDurchschnitt() { int i; //Berechnung der Gesamtleistung Gesamtleistung = 0.0f; // initialisieren for(i=0;i<=4;i++) // sonst hat Gesamtleistung hat hier irgendeinen Wert da nicht initialisiert { float LeistungH; LeistungH=Leistung[i]; Gesamtleistung=Gesamtleistung+LeistungH; // du addierst zu einem undefinierten Wert // Mist + LeistungH ist immer noch Mist } //Berechnung und Ausgabe des Durchschnitts cout << "Die Gesamtleistung betraegt:" << Gesamtleistung << endl; Durchschnitt=Gesamtleistung/i; cout << "Der Durchschnitt der Gesamtleistung betraegt:" << Durchschnitt << endl; }> Zum speichern des Datums/Uhrzeit bietest sich ein array von time_t an.
Keine Ahnung wann du die Zeit speichern willst. Nehmen wir an in einem globalen array zeitstempel.
void zeistempelSpeichern( int idx ) { zeitstempel[idx] = time(0); } void zeistempelAnzeigen( int idx ) { tm *nun; nun = localtime(&zeitstempel[idx]); cout << nun->tm_mday << '.' << nun->tm_mon+1 << '.' << nun->tm_year+1900 << " - " << nun->tm_hour << ':' << nun->tm_min << endl; }Kurt
-
hmmmm.. okay, gute idee.
ich steh irgendwie grad aufn schlauch... brauch ich Werte für diesen Zeitstempel??
weil ich habs nun so:
long Zeitstempel[60]; void zeitstempelAnzeige(); void zeitstempelSpeichern(); void zeitstempelSpeichern() {Zeitstempel[60]=time(0);} void zeitstempelAnzeige() { //Datum und Zeit Funktion tm *jetzt; jetzt = localtime(&Zeitstempel[60]); cout << jetzt->tm_mday << '.' << jetzt->tm_mon+1 << '.' << jetzt->tm_year+1900 << " - " << jetzt->tm_hour << ':' << jetzt->tm_min << endl; }aber nun bekomm ich nur das Datum vom 1.1.1970 ausgegeben,warum des???
ich kapier des net mit diesem Stempel ....
-
//long Zeitstempel[60]; time_t Zeitstempel[60]; // platz fur 60 time_t void zeitstempelAnzeige(); void zeitstempelSpeichern(); void zeitstempelSpeichern() {Zeitstempel[60]=time(0);} // schlecht ungültiger index ( 0.. 59 ) void zeitstempelAnzeige() { //Datum und Zeit Funktion tm *jetzt; jetzt = localtime(&Zeitstempel[60]); // siehe oben cout << jetzt->tm_mday << '.' << jetzt->tm_mon+1 << '.' << jetzt->tm_year+1900 << " - " << jetzt->tm_hour << ':' << jetzt->tm_min << endl; }Kurt
-
okay, hab meinen Lehrer gefragt hat mir das nun eklärt.
weiß nun was du mit dem Index meinst,danke!
Habs nun so:
//Global time_t Zeitstempel[60]; void zeitstempelAnzeige(); void zeitstempelSpeichern(); void zeitstempelSpeichern() { for(int idx=0;idx<=4;idx++) {Zeitstempel[idx]=time(0);} } void zeitstempelAnzeige() { //Datum und Zeit Funktion for(int idx=0;idx<=4;idx++) { tm *nun; nun = localtime(&Zeitstempel[idx]); cout << nun->tm_mday << '.' << nun->tm_mon+1 << '.' << nun->tm_year+1900 << " - " << nun->tm_hour << ':' << nun->tm_min << endl; } }HAb aber immernoch das Problem das in meinem Zeitstempel nicht die korrekte Zeit und Datum drin ist!!! Hab immer nur den 1.1.1970 blabla uhrzeit.
Warum geht dat net =??

-
#include <iostream> #include <cstdlib> using namespace std; time_t Zeitstempel[60]; void zeitstempelAnzeige(); void zeitstempelSpeichern(); void zeitstempelSpeichern() { for(int idx=0;idx<=4;idx++) {Zeitstempel[idx]=time(0);} } void zeitstempelAnzeige() { //Datum und Zeit Funktion for(int idx=0;idx<=4;idx++) { tm *nun; nun = localtime(&Zeitstempel[idx]); cout << nun->tm_mday << '.' << nun->tm_mon+1 << '.' << nun->tm_year+1900 << " - " << nun->tm_hour << ':' << nun->tm_min << endl; } } int main() { zeitstempelSpeichern(); zeitstempelAnzeige(); }mein output:
13.2.2006 - 10:9 13.2.2006 - 10:9 13.2.2006 - 10:9 13.2.2006 - 10:9 13.2.2006 - 10:9Kurt
-
oooohhh,danke!!!
ich hab vergessen die Funktion: zeitstempelSpeichern noch aufzurufen!!