Foarte urgent !!! Va rog!!
Se considera următorul algoritm descris in pseudocod. S-a notat cu a%b restul împărțirii numărului a la nr nat nenul b .
Citește a,b (nr nat , a>=2 ; b>=2)
Dacă a>b atunci
{ x primește a
a primește b
b primește x. }
S =0
Pentru x ii se atribuie a, b executa
{ c primește 2
Cât timp x%c>0 executa
C primește c+1
S primește s+c
Scrieți S
a) scrieți valoarea afișata dacă se citește in aceasta ordine 7 , 4
b) scrieți patru seturi de date de intrare , nr nat din intervalul [2,9] , care pot fi citate astfel încât in urma execuției algoritmul,pentru fiecare dintre acestea,sa se afișeze valoarea 7
c) scrieți in pseudocod un algoritm echivalent cu cel dat înlocuind adecvat structura cat timp ... executa cu o structura repetitivă cu test final
Răspunsuri la întrebare
Răspuns de
4
Programul respectiv calculeaza suma divizorilor cei mai mici ai fiecarui numar din intervalul [a,b] care sunt diferiti de 1.
In cazul in care a>b, atunci in prima structura decizionala le interschimba valorile din cele 2 variabile.
Apoi, de la a la b, incepand de la posibilul divizor 2, se mareste valoarea lui c cat timp restul impartirii lui x la c este mai mare ca 0, adica nu s-a gasit un divizor. O data gasit primul divizor(cel mai mic al lui x diferit de 1), atunci se aduna la suma.
a) Numerele din intervalul [4,7] sunt 4,5,6,7.
Divizorii cei mai mici ai celor 4 numere sunt: 2,5,3,7
Suma lor este: 2+5+3+7=17
b) Ca suma sa dea 7, putem avea urmatoarele sume de termeni:
2+5
2+3+2
Din intervalul [2,9] putem avea urmatoarele perechi de valori
2,4 avem 2,3,4 care au divizorii 2,3,2
4,5 avem divizori 2,5
5,6 avem divizori 5,2
mai putem folosi faptul ca se inverseaza valorile si putem scrie si 4,2 sau 5,4
c)
c=1;
executa
c=c+1;
cat timp x%c>0;
In cazul in care a>b, atunci in prima structura decizionala le interschimba valorile din cele 2 variabile.
Apoi, de la a la b, incepand de la posibilul divizor 2, se mareste valoarea lui c cat timp restul impartirii lui x la c este mai mare ca 0, adica nu s-a gasit un divizor. O data gasit primul divizor(cel mai mic al lui x diferit de 1), atunci se aduna la suma.
a) Numerele din intervalul [4,7] sunt 4,5,6,7.
Divizorii cei mai mici ai celor 4 numere sunt: 2,5,3,7
Suma lor este: 2+5+3+7=17
b) Ca suma sa dea 7, putem avea urmatoarele sume de termeni:
2+5
2+3+2
Din intervalul [2,9] putem avea urmatoarele perechi de valori
2,4 avem 2,3,4 care au divizorii 2,3,2
4,5 avem divizori 2,5
5,6 avem divizori 5,2
mai putem folosi faptul ca se inverseaza valorile si putem scrie si 4,2 sau 5,4
c)
c=1;
executa
c=c+1;
cat timp x%c>0;
123456789056:
Dar la a) nu ar trebui sa parcurgem algoritmul ?
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Chimie,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă