Informatică, întrebare adresată de sikesjack1, 8 ani în urmă

Buna! Cum trebuie gandite problemele de genul? Sunt din variantele de bac, subiectul 2.
Nu stiu cum sa ma apuc de astfel de probleme.

Scrieţi numărul de perechi de valori aparţinând
intervalului [1,20], care pot fi citite pentru variabilele x
şi y, astfel încât rezultatul afişat să fie format din exact
12 caractere ?

Algoritmul e atasat.
Multumesc.

Anexe:

boiustef: (1;6)(6;1);(2;12);(12;2);(3;18);(18;3). 4 perechi.
boiustef: 6 perechi...
boiustef: primul daca interschimba valorile daca x
boiustef: daca x < y
boiustef: ciclul cat afiseaza la fiecare iteratie literele AB, deci 2 caractere.
Dace avem de scris exact 12 caractere, deci ciclul tr sa fie parcurs exact de 6 ori., adica x / y = 6, deci x este de 6 ori mai mare.
boiustef: deoarece valorile se iau din intervalul [1;20], atunci lui y dai valori, incepand de la 1 si afli x=6*y, cu conditia sa nu iesi din intervalul [1;20].

Răspunsuri la întrebare

Răspuns de CinevaFaraNume
5

Afiseaza 12 caractere, deci intra in structura repetitiva de 6 ori.

Primul if schimba x cu y daca x<y, deci y = minimul, x = maximul.

In structura repetitiva se intra cat timp x >= y.

Ca sa intre o singura data, y <= x < 2y

Ca sa intre de 2 ori, 2y <= x < 3y

Ca sa intre de n ori, ny <= x < (n+1)y

Ca sa intre de 6 ori, 6y <= x < 7y

Pentru y = 1, x din {6}

Pentru y = 2, x din {12, 13}

Pentru y = 3, x din {18, 19, 20}

Pentru y din {4, 5} nu putem gasi un x pentru care sa afisam 12 caractere.

Pentru y = 6, x = 1

Pentru y din {7,8,9,10,11}, iar nu avem solutii

Pentru y = 12, x = 2

Pentru y = 13, x = 2

...

Pentru y = 18, x = 3

Pentru y = 19, x = 3

Pentru y = 20, x = 3

-> 12 perechi

Alte întrebări interesante