Hauskaa Java - Piirrä timantti
Löysin äskettäin mielenkiintoisen Java-opiskelijan pyynnön yhdestä lukemistani foorumista. Hänen luokkaansa oli pyydetty käyttämään silmukkaa piirtämään timantti tähdellä (*). Hänellä oli oikea ja toimiva ratkaisu, mutta hänet oli merkitty alas, koska se oli liian monimutkainen ja siinä oli useita silmukoita. Opiskelija pyysi ehdotuksia helpommista tavoista saavuttaa sama tulos. Ajattelin tämän olevan mielenkiintoinen ongelma ja päätin kokeilla käsiini. Ohjelmani on alla (tai voit ladata kopion täältä.) Tämä ei selvästikään ole tuotekoodi - yhdestä asiasta, vaikka rakastan?: -Operaattorin yksinkertaisuutta, yritän olla käyttämättä sitä tuotekoodissa, koska monet ohjelmoijat huomaavat, että se vaikeuttaa lukemista ja ymmärtämistä. Puhumattakaan, tämä koodi rikkoutuu, jos MAX_WIDTH muuttuu numeroon, joka on suurempi kuin 46. Mutta se on esimerkki melko pienikokoisesta ja loogisesta menetelmästä halutun tuloksen saavuttamiseksi. Voitko tehdä paremmin? Raportoi takaisin foorumillamme.

/*
 * timantit.java
 *
 * Luotu 4. kesäkuuta 2007 klo 23.39
 */

/**
 *
 * @author Julie Baumler
 */
julkisen luokan timantit {

/ ** Luo uuden timanttimallin * /
julkiset timantit () {
}

/**
* @param kirjoittaa komentoriviargumentit
*/
julkinen staattinen void main (merkkijono [] args) {
int max_leveys = 9; // merkkien # leveä timantin valmistamiseksi
int leveys = max_leveys% 2 == 0? max_leveys / 2: max_leveys / 2 +1;
Merkkijonot = "********************************************** ";
Merkkijonot = "";
varten (int i = 1; i <(leveys * 2); i ++) {
System.out.print (välilyöntiä nauha (0, (i System.out.println (stars.subinging (0,2 * (i <= leveys? I: leveys- (i% leveys)) - 1));
}

}

}

Alkuperäinen pyyntö:
Pinimo. "Auta minua java (sic): lla." Online-postitus. Viikko 13. toukokuuta 2007. Java-keskustelu (foorumi). 4. kesäkuuta 2007.

Video-Ohjeita: TRY NOT TO LAUGH (100% hauska edition) (Saattaa 2024).