Plezier met Java - Draw A Diamond
Ik heb onlangs een interessant verzoek van een Java-student gevonden op een van de forums die ik heb gelezen. Zijn klas was gevraagd om een ​​for-lus te gebruiken om een ​​diamant uit asterisken te trekken (*). Hij had een correcte en functionerende oplossing, maar was afgebakend omdat het te ingewikkeld was en verschillende loops had. De student vroeg om suggesties voor eenvoudigere manieren om hetzelfde resultaat te bereiken. Ik vond dit een interessant probleem en besloot het te proberen. Mijn programma staat hieronder (of u kunt hier een kopie downloaden). Dit is duidelijk geen productiecode - in de eerste plaats, terwijl ik dol ben op de eenvoud van de?: Operator, ik probeer het niet in productiecode te gebruiken omdat veel programmeurs vinden dat het moeilijker wordt om te lezen en te begrijpen. Om nog maar te zwijgen, deze code zal breken als Maximale wijdte is gewijzigd in een getal groter dan 46. Maar het is een voorbeeld van een redelijk compacte en logische methode om het gewenste resultaat te bereiken. Kan jij het beter Meld terug op ons forum.

/*
 * diamanten. Java
 *
 * Gemaakt op 4 juni 2007, 23:39 uur
 */

/**
 *
 * @auteur Julie Baumler
 */
publieke klasse diamanten {

/ ** Creëert een nieuwe instantie van diamanten * /
openbare diamanten () {
}

/**
* @param args de opdrachtregelargumenten
*/
public static void main (String [] args) {
int max_width = 9; // # tekens breed om diamant te maken
int width = max_width% 2 == 0? max_width / 2: max_width / 2 +1;
String stars = "********************************************** ";
String spaces = "";
voor (int i = 1; i <(breedte * 2); i ++) {
System.out.print (spaces.substring (0, (i System.out.println (stars.substring (0,2 * (i <= breedte? I: breedte- (i% breedte)) - 1));
}

}

}

Het oorspronkelijke verzoek:
Pinimo. "Help me met java (sic)." Online plaatsen. Week van 13 mei 2007. Java Discussion (Forum). 4 juni 2007.

Video-Instructies: MINECRAFT HELLO NEIGHBOR & HIS BROTHER FIGHT 4 Basement Key |FGTEEV Scary Roleplay Games for Kids #2 (April 2024).