Se determină numărul de cifre ale numărului, decizia cu privire la sarcinile de programare
Explicarea problemei și algoritmul soluțiilor
Pentru a contoriza numărul de biți de numere de program, este necesar să se divide secvențial uniform divizibil cu 10, în timp ce acest număr este zero. În acest caz, numărul de numărul de diviziuni. De exemplu, având în vedere numărul 345. În cazul în care prima divizie 34 va, după a doua - 3, după al treilea - 0. Astfel, vom vedea că numărul de diviziuni egal cu numărul de externări.
ar trebui să utilizați „în timp ce“ buclă (în timp) pentru punerea în aplicare a acestui algoritm. Condiția pentru punerea sa în aplicare este discrepanței de la zero. În timp ce, atunci când se administrează numai numere pozitive sau negative, numere înainte de a fi convertit la pozitiv într-un subiect poate fi „mai mare decât zero“.
contor variabilă (de exemplu, i) înainte de a bucla este introdusă, care este setat la 0 și că, la fiecare diviziune într-un număr prestabilit de cicluri este incrementat cu unu. După finalizarea împărțirea prin valoarea sa va fi determinat de numărul de cifre ale numărului.
Deoarece este necesar să se scrie o funcție, este posibil ca această funcție trebuie să aibă un anumit număr, și să returneze numărul de externări.
Codul sursă în limbajul de programare Pascal
var num. longint;
cifre funcționale # 40; n. longint # 41;. octet;
i var. octet;
începe
i. = 0;
în timp ce n> 0 nu începe
n. = N div 10;
i. = I + 1
se încheie;
cifre. = i
se încheie;
începe
scrie # 40; „Introduceți numărul de:“ # 41; ;
readln # 40; Num # 41; ;
în cazul în care num<0 then num. = abs ( num ) ;
writeln # 40; „Numărul de biți =“. cifre # 40; Num # 41; # 41; ;
end.
Exemplu (e) al programului în limba Pascal
Tastați numerele: -98
Numărul de biți = 2
Codul sursă în limbajul de programare C
#include
cifre int # 40; int # 41; ;
principal # 40; # 41; # 123;
num int;
scanf # 40; "" . Num # 41; ;
printf # 40; "\ N". cifre # 40; Num # 41; # 41; ;
# 125;
cifre int # 40; int n # 41; # 123;
int i;
dacă # 40; n <0 ) n = - n ;
în timp ce # 40; n> 0 # 41; # 123;
n = n / 10;
i + = 1;
# 125;
întoarce i;
# 125;
Exemplu (e) al programului în limbajul C
Codul sursă în limbajul de programare Python
cifre def # 40; n # 41; :
i = 0
în timp ce n> 0:
n = n // 10
i + = 1
întoarce i
num = abs # 40; int # 40; intrare # 40; „Introduceți numărul de:“ # 41; # 41; # 41;
imprimare # 40; 'Digits'. cifre # 40; Num # 41; # 41;
Exemplu (e) al programului în limbajul Python
Introduceți numărul: 65098234
Numărul de cifre: 8
Codul sursă în idoli de programare
SAL kolich_razryadov
devreme
num intact
intrare num
nivelul de ieșire # 40; Num # 41;
joc
SAL evacuările intacte # 40; n intact # 41;
devreme
i intacte. m
m: = n
i: = 0
în cazul în care m <0 то m := - m всё
NC până m> 0
m: = div # 40; m. 10 # 41;
i: = i + 1
KC
VALOARE: = i
joc