Мы знаем, что операция n:=n div 10; удаляет одну последнюю цифру в числе n. Если у нас имеется четырехзначное число, то после одного удаления останется 3 цифры, после 2-х удалений останется 2 цифры, после 4-х удалений наше число станет равным 0 (все 4 цифры удалены). На этом принципе и строится алгоритм: считаем количество удалений цифр, пока число не станет 0. В нашей программе переменная k является счетчиком числа цифр ( и числа удалений).
Program A2_1; Var n, k:integer; begin readln(n); k:=0; if n=0 then k:=1; while (n<>0) do begin k:=k+1; { лучше написать INC(k);} n:=n div 10; end; writeln(k); readln; end. |
// Program A2.1; #include <iostream>
using namespace std;
int main() { int n,k=0; cin>>n; if(n==0)k=1; while(n!=0) { k++; n/=10; } cout<<k<<endl; return 0; } |