// بناء النص قطعة قطعة بباني النص.
استورد std.io.println;
استورد std.text.number;
استورد std.text.builder;
استورد std.text.transform;
عرف الرئيسية(): عدد {
دع السطر: متغير باني_نص = أنشئ_باني_نص();
دع ف: متغير عدد = 1;
طالما (ف <= 5) {
دع الرقم: نص = عدد_إلى_نص(ف * ف);
ألحق_نصا_بباني_النص(&متغير السطر, &الرقم);
إذا (ف < 5) {
دع الفاصلة: نص = ",";
ألحق_نصا_بباني_النص(&متغير السطر, &الفاصلة);
};
ف := ف + 1;
}
اطبع_سطر(نص_باني_النص(&السطر));
دع الشرطة: نص = "-";
اطبع_سطر(كرر_النص(&الشرطة, 12));
أرجع 0;
}// Building text piece by piece with a text builder.
import std.io.println;
import std.text.number;
import std.text.builder;
import std.text.transform;
def main(): int {
let line: mutable text_builder = new_text_builder();
let i: mutable int = 1;
while (i <= 5) {
let digit: string = int_to_text(i * i);
text_builder_append_text(&mutable line, &digit);
if (i < 5) {
let comma: string = ",";
text_builder_append_text(&mutable line, &comma);
};
i := i + 1;
}
println(text_builder_text(&line));
let dash: string = "-";
println(repeat_text(&dash, 12));
return 0;
}
التشغيل
بالمفسر، دون ترجمة:
./build/sultanc run examples/ar/strings/builder.snأو ترجمه إلى ملف تنفيذي:
./build/sultanc examples/ar/strings/builder.sn -o build/example && ./build/example