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

Exemplu (e) a programului într-un idol limbă