Documente Academic
Documente Profesional
Documente Cultură
Enunțul problemei
Să se realizeze un instrument virtual LabVIEW care să semnalizeze dacă un număr N
specificat de către utilizator este sau nu este număr prim.
În funcție de cum numărul N este sau nu este prim, se va afișa textul „Numărul N este
prim !” sau textul „Numărul N nu este prim, deoarece se divide cu X”, unde X este un
divizor al lui N.
Exemplu de panou
Atunci când o buclă While este dispusă în diagramă, terminalul său de continuare se
află în starea implicită Stop If True, adică bucla While va executa iterații până când la
terminalul său de continuare ajunge o valoare booleană True.
Fig. 8.3. Trecerea terminalului de continuare al buclei While în starea Continue If True
În starea Continue If True, bucla While își va încheia execuția atunci când la terminalul
de continuare ajunge valoarea booleană False.
În colțul stânga - jos, bucla While dispune de un terminal numărător (notat cu i) care
generează o valoare naturală reprezentând indicele iterației curente (aflate în curs de
execuție). Indicii iterațiilor sunt numerotați începând cu valoarea 0.
2
Programarea Calculatoarelor 1 - Algoritmi
Indicații
Un număr este prim dacă se divide (se împarte exact, cu rest nul) doar la unu și la el
însuși.
Pentru a verifica dacă un număr N este prim, se împarte succesiv numărul respectiv la
doi, trei, patru etc., până la o valoare mai mare sau egală cu valoarea N/2. Împărțirea
lui N la valori mai mari decât N/2 nu se mai justifică, deoarece N nu se poate divide cu o
astfel de valoare.
Dacă există un număr a astfel încât restul împărțirii lui N la a să fie nul, atunci numărul N
nu este prim.
Dacă nu există niciun număr a, mai mic decât N/2, pentru care restul împărțirii lui N la a
să fie nul, atunci numărul N este prim.
Astfel, bucla While își va încheia execuția când una din cele două condiții este
îndeplinită:
• dacă execuția buclei se va încheia datorită faptului că restul împărțirii lui N la i+2
este egal cu zero, atunci numărul N nu este prim;
• dacă execuția buclei se va încheia datorită faptului că s-a ajuns la un indice de
iterație i pentru care i+2 este mai mare sau egal cu N/2, atunci numărul N este
prim.
În cazul True, când numărul N este prim, la intrarea corespunzătoare a funcției Select
se conectează textul ”Numărul N este prim !”.
Textul este obținut prin concatenarea textelor:
• ”Numărul ”;
• textul rezultat prin convertirea valorii numerice N în valoare de tip string cu funcția
Number To Decimal String;
• ” este prim !”.
3
Programarea Calculatoarelor 1 - Algoritmi