Long multiplication: Difference between revisions

Content added Content deleted
m (→‎{{header|Python}} (Trans Haskell): Foregrounded main function)
Line 592:
=={{header|Aime}}==
<lang aime>data b, c, v;
integer d, e, i, j, s;
 
b = argv(1).argv;
v = argvb.dump(2',');
v = 2.argv;
v.dump(',');
 
b_run(c, b_length.run(~b) + b_length(~v) + 1, 0);
 
for (i, d in b) {
i = -b_length(b);
b[i] = b[i]d - '0';
while (i) {
b[i] = b[i] - '0';
i += 1;
}
 
for (j, d of v) {
j = -1;
while (-b_length(v) <= j) {
d = v[j] - '0';
 
i = -1;
s = 0;
whilefor (-b_length(b)i, <=e iof b) {
s += b[i]e * d + c[i + j];
c[i + j] = s % 10;
s /= 10;
i -= 1;
}
while (s) {
Line 623 ⟶ 620:
i -= 1;
}
 
j -= 1;
}
 
b_delete(c, .delete(-1);
c.bf_drop0("");
if (!c[0]) {
b_delete(c, 0);
}
 
for (i, d in c) {
i = -b_length(c);
c[i] += 1d + '0';
while (i) {
c[i] = c[i] + '0';
i += 1;
}