Hi,
es tut mir leid, aber ich kann das nicht einfach so lassen stahn.
Wir sind hier ein _ordentlicher_ Sauhaufen! ;-)
#ifdef __cplusplus
#include <cstdio>
#else
#include <stdio.h>
#endif
main() {
Nach ISO-14882 ist in C++ main() vom Typ int.
int x=8;
int y=13;
Funktioniert das auch mit anderen Werten?
int end_x;
int end_y;
int x_laenge=1;
int y_laenge=6;
int richtung=1;/* Erst mal in der Mitte raus nach oben, damit es symmetrisch wird */
while (y != 7) {
printf("x=%d, y=%d\n",x,y);
y--;
}
Es funktioniert also nicht mit andern Werten. Hat das einen bestimmten Grund? Oder möchtest Du den OP einfach ein wenig hoppnehmen?
/* Jetzt unterschiedlich lange Strecken ablaufen, da es keine X*X sondern ein
e Y*X-Matrix ist, wobei X != Y (damit gewisse Erbsenzaehler zufrieden sind) */
Das Du überhaupt diese Einschränkung machst wundert mich.
[merkwürdig komplizierte Vorgehensweise, aber egal, gestrichen]
return 0;
}
Bei C++ ist die Voreinstellung bereits die Rückabe von 0, deshalb ist die Zeile "return 0;" für C++ überflüssig. Da sie aber bei C++ nicht schadet und bei C vorgeschrieben ist, kann man sie hinsetzen, wenn man auf beide Sprachen portierbar bleiben möchte. (Wobei die 0 da eigentlich falsch ist. Der Rückgabewert für einen erfolgreichen Abschluß muß nicht zwingend 0 sein. Der C++-Compiler kann das und muß das sogar regeln, der C-Compiler tut es aber nicht, darf er ja auch gar nicht. Macht aber auch nix, der hat dafür dann Macros.)
So, sofern copy&paste nicht irgend einen Mist gemacht hat, muesste es so klappen. Statt printf dann entsprechend System.out.println()
Ach, 's ist für Java? Warum gibst Du dann keinen Javacode an? Keine Java-VM auf der Maschine? Soviel sollte aber selbst "Kaffe" schaffen, Lizenzprobleme sind also zumindest hier kein Grund ;-)
so short
Christoph Zurnieden