Помогите с задачкой по информатике, нужно решить с помощью оператора выбора (case):
Написать программу, которая для любого заданного натурального числа печатает количество цифр в записи этого числа. Максимально допускается пятизначное число. Через условие я решил, а надо было через оп. выбора, совсем не понимаю как через него тут можно решить.
Спасибо.
Написать программу, которая для любого заданного натурального числа печатает количество цифр в записи этого числа. Максимально допускается пятизначное число. Через условие я решил, а надо было через оп. выбора, совсем не понимаю как через него тут можно решить.
Спасибо.
-
-
13.01.2009 в 12:01вроде задача вообще легкотня. Тебе дают число,ты возвращаешь длину строки.
какие могут быть варианты вводимых данных?
можно на код посмотреть?
-
-
13.01.2009 в 19:42var a:integer;
begin
writeln('vvedite chislo');
readln(a);
if a div 10 = 0 then
writeln('1 cifra')
else
if a div 100 =0 then
writeln('2 cifri')
else
if a div 1000 = 0 then
writeln('3 cifri')
else
if a div 10000 = 0 then
writeln('4 cifri')
else
if a div 100000 = 0 then
writeln('5 cifer');
readln;
end.
-
-
13.01.2009 в 20:23var a:integer;
s:string;
begin
writeln('vvedite chislo');
readln(a);
s=str(a); {вроде такая функция, проверте в хелпе}
writeln(length(s),'-значное число');
readln;
end.
как решать с кэйсом не знаю, потому что условие тут не нужно
-
-
13.01.2009 в 20:31program cifri;
var a:integer;
begin
writeln('vvedite chislo');
readln(a);
case a of
0..9: writeln('1 cifra');
10..99: writeln('2 cifri');
100..999: writeln('3 cifri');
1000..9999: writeln('4 cifri');
10000..99999: writeln('5 cifer')
else writeln ('Mistake');
end;
readln;
end.
-
-
13.01.2009 в 21:47