Patrat2

Vom genera pătrate mai mici decât n. În algoritm, ieşim din structura când condiţia i * i < n nu mai este îndeplinită. În acest caz, dacă i * i este mai mare decât n, scădem din i valoarea 1 pentru a avea un pătrat care „încape” în n, îl scriem în fişier şi scădem din n pătratul aferent. Repetăm aceşti paşi până când n devine 0.
Algoritm Patrat(n):
  cât timp n > 0 execută:
    i = 1
    cât timp i * i < n execută:
      i = i + 1
    sfârşit (cât timp)
    dacă i * i > n atunci
      i = i – 1
    sfârşit(dacă)
    Scrie i
    n = n – i * i
  sfârşit (cât timp)
Sfârşit (algoritm)