Moro med Java - Draw A Diamond
Jeg fant nylig en interessant forespørsel fra en Java-student på et av forumene jeg leste. Klassen hans hadde blitt bedt om å bruke en for løkke for å trekke en diamant ut av stjerner (*). Han hadde en riktig og fungerende løsning, men hadde blitt markert fordi den var altfor komplisert og inneholdt flere løkker. Studenten ba om forslag til enklere måter å oppnå samme resultat. Jeg syntes dette var et interessant problem og bestemte meg for å prøve meg på det. Programmet mitt er nedenfor (eller du kan laste ned en kopi her.) Dette er helt klart ikke produksjonskode - for en ting, mens jeg elsker enkelheten til ?: Operatøren, jeg prøver å ikke bruke den i produksjonskode fordi mange programmerere opplever at det gjør det vanskeligere å lese og forstå. For ikke å nevne, denne koden vil knekke hvis MAX_WIDTH endres til et tall større enn 46. Men det er et eksempel på en ganske kompakt og logisk metode for å oppnå ønsket resultat. Kan du gjøre det bedre? Rapporter tilbake i forumet vårt.

/*
 * diamanter.java
 *
 * Opprettet 4. juni 2007, 23.39
 */

/**
 *
 * @ forfatter Julie Baumler
 */
diamanter i offentlig klasse {

/ ** Oppretter en ny forekomst av diamanter * /
offentlige diamanter () {
}

/**
* @param argumenterer for kommandolinjeargumentene
*/
public static void main (String [] args) {
int maks_bredde = 9; // antall ruter bredt for å lage diamant
int bredde = maks_bredde% 2 == 0? maks_bredde / 2: maks_bredde / 2 +1;
Stringstjerner = "********************************************** ";
String mellomrom = "";
for (int i = 1; i <(bredde * 2); i ++) {
System.out.print (mellomrom.substreng (0, (i System.out.println (stjerner.substreng (0,2 * (i <= bredde? I: bredde- (i% bredde)) - 1));
}

}

}

Den opprinnelige forespørselen:
Pinimo. "Hjelp meg med java (sic)." Online innlegg. Uken 13. mai 2007. Java-diskusjon (Forum). 4. juni 2007.

Video Instruksjoner: How to use the Smithing Table? - Infinite Diamond, Minecraft Village and Pillage (Bedrock Edition) (Kan 2024).