Dibuixant rectes P30796


Statement
 

pdf   zip

thehtml

Siguin x1, x2, … nombres enters tals que 0 < x1 < x2 < …, i siguin (a1, b1), (a2, b2), … parells de nombres enters. Podem definir una funció f(x) per a x ≥ 0 així:

f(x)=




    a1x + b1,si 0 ≤ x < x1
    a2x + b2,si x1x < x2
      …  ,

Feu un programa que dibuixi aquesta funció. Suposeu que l’eix de les x és el vertical, de dalt a baix. Per a cada x, escriviu una línia amb tants caràcters com f(x): tots han de ser punts, excepte l’últim, que ha de ser una ‘X’.

Entrada

L’entrada consisteix en una seqüència de triplets xi, ai, bi. Podeu suposar 0 < x1 < x2 < …, i que f(x) ≥ 1 per a tota x.

Sortida

Dibuixeu una gràfica de la funció tal i com s’ha explicat anteriorment.

Observació

No podeu fer servir strings, ni vectors, ni res similar.

Public test cases
  • Input

    4 1 3
    7 0 2
    10 1 3
    14 -2 27
    

    Output

    ..X
    ...X
    ....X
    .....X
    .X
    .X
    .X
    .........X
    ..........X
    ...........X
    ......X
    ....X
    ..X
    X
    
  • Input

    1 0 1
    2 5 0
    3 3 -1
    

    Output

    X
    ....X
    ....X
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Other languages
    Spanish
    Official solutions
    C++
    User solutions
    C++