Mohli by ste vysvetliť tento kód krok za krokom,pretože nechápem, prečo je v slučke while = 1. Celkový prehľad o tomto programe a jeho fungovaní by sa hlboko ocenil, pretože sa v súčasnosti učím slučky v Scale!
import scala.io.StdIn._
object loops4 {
def main(args: Array[String]): Unit = {
var outer = 1;
var inner = 1;
print("How many units for the base of the triangle? ");
var base: Int = readInt();
while (outer <= base) {
inner = 1
while (inner <= outer) {
print ("*");
inner += 1;
}
println("n");
outer += 1;
}
}
}
odpovede:
2 pre odpoveď č. 1Don 't' učiť slučky v scala ', je to strataČas. Naučte sa Scala. To isté (s výnimkou nadbytočných prázdnych riadkov medzi hviezdami) ako váš úryvok, s výnimkou toho, že sa nemusíte pýtať ľudí na internete, ako to funguje :)
(1 to base).foreach { n => println("*" * n) }
0 pre odpoveď č. 2
Môže byť užitočné ladiť kód akoNavrhnuté je carcigenicate. Vnútorná strana je nastavená na 1 vo vonkajšej slučke, pretože sa zmenila tak, aby zodpovedala vonkajšej slučke pri predchádzajúcej iterácii vonkajšej slučky. Ladenie a pozorovanie vnútornej na konci vonkajšej slučky. Pokiaľ ide o to, čo robí tento kód, Konštruuje trojuholník v štandardnom výstupe a vonkajšia slučka počíta čiary a vnútorná slučka vytvára čiary so symbolmi „*“. Ako povedal Dima, v Scale existuje viac idiomatických spôsobov.