ein kleines program :)
-
hallo leute !
ich muss ein program schreiben aber ich weiss es nicht wie muss ich anfangen???
die abgabe ist so: ich muss schreiben ein Programm zur Umrechnung von Sekunden in die entsprechende Anzahl von Jahren, Tagen, Stunden, Minuten und Sekunden und umgekehrt.
ich bitte um Hilfe !
mfg nargaroth
-
Nargaroth schrieb:
ich muss ein program schreiben aber ich weiss es nicht wie muss ich anfangen???
#include <iostream>
die abgabe ist so: ich muss schreiben ein Programm zur Umrechnung von Sekunden in die entsprechende Anzahl von Jahren, Tagen, Stunden, Minuten und Sekunden und umgekehrt.
Du überlegst dir erstmal mathematisch (also ohne an C++ auch nur zu denken), wie man das allgemein macht. Versuch es im Kopf. Oder mit Papier und Bleistift. Wenn du das gemacht hast, und nur noch die Umsetzung in C++ fehlt, kannst du dich wieder melden.
-
Als Tipp wäre noch zu sagen, dass C++ bei Divisionen von Ganzahlen und Ganzzahlvariablen das Ergebnis immer nach unten rundet.
Sprich:unsigned int s, h; s = 10080; h = s / 3600; //h ist jetzt 2 (und nicht 2.8)
-
..hat sich erledigt
da geht man kurz ausm zimmer um schon sind 5 posts da *g*
-
@Bashar:
warum verwenden hier alle immer nur diese C++-style programmierung??
findet ihr nicht, dass es für einen anfänger leichter zu verstehen ist wenn ihr ihm
#include <stdio.h>
und printf statt
#include <iostream> (ohne .h ...) und cout << ... zeigt?
ich denke dass erst wenn man die grundzüge von C verstanden hat, man sich an classen, namespaces usw wagen sollte. Wenn man gleich mit umdefinierten operatoren anfängt, wird übersehen, dass C eigentlich assembler code generiert, und dass die operatoren einem nur vorgegaukelt werden. Wenn man nie verstanden hat, wie aus einer *.c datei eine *.exe(oder in UN*X eine * datei) gemacht wird, wird man wohl gedanklich nie auf eine maschinenorientiertere basis kommen.
-
-
HellKnight schrieb:
... wird man wohl gedanklich nie auf eine maschinenorientiertere basis kommen.
Siehst du das als erstrebenswert an?
-
Ich muss HellKnight recht geben.
Ich habe als Anfänger auch nie so recht verstanden, warum in manchen Turorials cout stand und in manchen printf.
Und besonders nicht, warum das zweite immer als C++ Variante gepriesen wurde und was der Bitshift-Operator da zu suchen hatte.
-
hallo
wir sind hier im c++ forum.
in diesem c++ forum wird c++ gepostet.wer ansi c lernen will, geht ins ansi c forum.
wer c++ lernen will, sollte auch mit c++ anfangen.
nicht mit c. (das kann später dazukommen)hier geht es um die sprache.
so long.
-
HellKnight schrieb:
findet ihr nicht, dass es für einen anfänger leichter zu verstehen ist wenn ihr ihm
#include <stdio.h>
und printf statt
#include <iostream> (ohne .h ...) und cout << ... zeigt?Einfacher als cin >> a; gehts ja fast nicht, um das Äquivalent mit stdio hinzukriegen musst du schon Zeiger verstanden haben.
ich denke dass erst wenn man die grundzüge von C verstanden hat, man sich an classen, namespaces usw wagen sollte.
Ich stimme dir vom Grundsatz her zu, allerdings würde ich sagen, man sollte die Grundzüge von C++ verstanden haben. Man kann auch C++ langsam von unten her aufbauen, ohne zunächst Überladung, Referenzen usw. zu verschweigen. Sonst ziehst du C-Programmierer heran, die sich dann umgewöhnen müssen (und manchmal zu faul dazu sind.)
Wenn man gleich mit umdefinierten operatoren anfängt, wird übersehen, dass C eigentlich assembler code generiert,
C++ nicht? Oha.
und dass die operatoren einem nur vorgegaukelt werden. Wenn man nie verstanden hat, wie aus einer *.c datei eine *.exe(oder in UN*X eine * datei) gemacht wird, wird man wohl gedanklich nie auf eine maschinenorientiertere basis kommen.
Dass eine maschinenorientierte Basis das Ziel aller Bemühungen sein sollte, ist jetzt aber nur deine persönliche Ansicht.
BTW ist die Diskussion in diesem Thread absolut off-topic, mach einen neuen auf, wenn du über sowas diskutieren willst.
-
SeppSchrot schrieb:
Ich habe als Anfänger auch nie so recht verstanden, warum in manchen Turorials cout stand und in manchen printf.
Und besonders nicht, warum das zweite immer als C++ Variante gepriesen wurde und was der Bitshift-Operator da zu suchen hatte.mit demselben argument könnte ich dir und hellknight widersprechen.
ich finde sogar den überladenen operator in iostream sehr suggestiv, auf jeden fall naheliegender als die ü+berladung anderer operatoren für diese anwendung und zweifellos besser als printf.
-
naja die aufgabenstellung ist nicht so der hit
ne frage wenn ich jetzt x sec habe ( x sehr gross )
wie kann ich die anzahl der jahre wissen? nimmt man da kaufm. jahr?
wie kann ich wissen ob da jetzt 1 oder 2 mal ein schaltjahr drinnen war?
Also exakt kann man es so nicht bestimmen. Kann man IMHO nur machen wenn man StartDatum und/oder EndDatum hat.
-
Wenn Du davon ausgehst, dass ein Jahr nicht 365 Tage hat, sondern 365.25 Tage, sind darin die Schaltjahre vorhanden.
Möglicherweise hilft auch folgendes:
"
....
Das tropische Jahr (Von Frühlingspunkt zu Frühlingspunkt) ist das eigentliche Kalenderjahr, es entsprang der Forderung, dass der Frühlingsanfang immer auf den 21. März fällt.
Dauer: 365 Tage 5 Stunden 48 Minuten 45 SekundenDas siderische Jahr (von Fixstern zu Fixstern)
Dauer: 365 Tage 6 Stunden 9 Minuten 10 SekundenDas anomalistische Jahr (Von Perihel zu Perihel)
Dauer: 365 Tage 6 Stunden 13 Minuten 53 SekundenDas Finsternisjahr (Von Mondknoten zu Mondknoten)
Dauer: 346 Tage 14 Stunden 52 Minuten 54 Sekunden"Michael
-
ok gut zu wissen( allgemein )
aber kann alles richtig oder falsch sein ( aufgabenstellung )
-
mit demselben argument könnte ich dir und hellknight widersprechen.
ich finde sogar den überladenen operator in iostream sehr suggestiv, auf jeden fall naheliegender als die ü+berladung anderer operatoren für diese anwendung und zweifellos besser als printf.Was sugeriert der Operator denn? Meintest du intuitiv oder wolltest du was sagen, was ich nicht verstanden habe? (ernst gemeint)
-
intuitiv meinte er wohl.
den operator fidne ich aber auchs ehr gut gewählt, weil er die richtung der eingabe sogut beschreibt:
cout<<"hallo";//da geht was zu cout hin
cin>>i;//da geht etwas nach i