Другие языки программирования и технологии
помогите кто дружит с паскалем! задание : напишите на языке программирования . Дано ...
Напишите на языке программирования . Дано натуральное число n . Определите сколько цифр в записи данного числа .
Вот программа, которая работает с числами типа longint, поэтому вводимые данные должны быть от -2 млрд. до +2 млрд (с хвостиком) . Плюс этой программы, что она работает с отрицательными числами:
var n:longint;
s:byte;
begin
read(N);
s:=0;
repeat
s:=s+1;
n:=n div 10;
until n=0;
writeln(s);
end.
Следующий вариант программи работает со строками, что более выгоднее, но все равно вводимые данные считывают только 256 символов.
var s:string;
flag:boolean;
i:byte;
function is_number(a:char):boolean; {Проверяем, является ли символ цифрой}
begin
if (a='1')or(a='2')or(a='3')or(a='4')or(a='5')or(a='6')or(a='7')or(a='8')or(a='9')or(a='0')
then is_number:=true else is_number:=false
end;
begin
read(s);
i:=1;
flag:=true;
while (i<=length(s))and flag do
begin
if not is_number(s) then flag:=false;
i:=i+1;
end;
if flag then writeln(length(s)) else writeln('Vvedite korrectno 4yslo!');
end.
И последний вариант программы, которая базируется на простом считывании символов. Колличество вводимых цифр ограничено только типом переменной, которая их считает.
uses crt;
var c:char;
flag:boolean;
s:integer;
function is_number(a:char):boolean;
begin
if (a='1')or(a='2')or(a='3')or(a='4')or(a='5')or(a='6')or(a='7')or(a='8')or(a='9')or(a='0')
then is_number:=true else is_number:=false
end;
begin
flag:=true;
s:=0;
c:='1';
while (c<>#13)and flag do
begin
c:=readkey;
write(c);
if c<>#13 then
begin
if (not is_number(c)) then flag:=false;
s:=s+1
end
end;
writeln;
if flag then writeln(s) else writeln('Vvedite korrectno 4yslo!');
end.
____
Минусом последних двух программ есть то, что они не опеределяют колличество цифр отрицательных чисел. Если тебе это надо, пиши, помогу.
var n:longint;
s:byte;
begin
read(N);
s:=0;
repeat
s:=s+1;
n:=n div 10;
until n=0;
writeln(s);
end.
Следующий вариант программи работает со строками, что более выгоднее, но все равно вводимые данные считывают только 256 символов.
var s:string;
flag:boolean;
i:byte;
function is_number(a:char):boolean; {Проверяем, является ли символ цифрой}
begin
if (a='1')or(a='2')or(a='3')or(a='4')or(a='5')or(a='6')or(a='7')or(a='8')or(a='9')or(a='0')
then is_number:=true else is_number:=false
end;
begin
read(s);
i:=1;
flag:=true;
while (i<=length(s))and flag do
begin
if not is_number(s) then flag:=false;
i:=i+1;
end;
if flag then writeln(length(s)) else writeln('Vvedite korrectno 4yslo!');
end.
И последний вариант программы, которая базируется на простом считывании символов. Колличество вводимых цифр ограничено только типом переменной, которая их считает.
uses crt;
var c:char;
flag:boolean;
s:integer;
function is_number(a:char):boolean;
begin
if (a='1')or(a='2')or(a='3')or(a='4')or(a='5')or(a='6')or(a='7')or(a='8')or(a='9')or(a='0')
then is_number:=true else is_number:=false
end;
begin
flag:=true;
s:=0;
c:='1';
while (c<>#13)and flag do
begin
c:=readkey;
write(c);
if c<>#13 then
begin
if (not is_number(c)) then flag:=false;
s:=s+1
end
end;
writeln;
if flag then writeln(s) else writeln('Vvedite korrectno 4yslo!');
end.
____
Минусом последних двух программ есть то, что они не опеределяют колличество цифр отрицательных чисел. Если тебе это надо, пиши, помогу.
var N,S:integer;
begin
read(N);
while N!=0 do
begin
S:=S+N mod 10;
N:=N div 10;
end;
writeln(S);
end.
begin
read(N);
while N!=0 do
begin
S:=S+N mod 10;
N:=N div 10;
end;
writeln(S);
end.
Пиши в личку сделаю за 40 рублей
Похожие вопросы
- Люди как сделать легкую программу на паскале, и вобще какой язык программирования лучше для новичка
- Как написать новый язык программирования
- почему процессор компьютера не может исполнять программы написанные на языке программирования Basic или Pascal
- Какие программы написаны на языках программирования?
- Помогите решить задачу в паскале. Задание: Заменить в строке все вхождения "да" на "нет".
- Язык программирования! Дайте мне точный ответ уважаемые, от вашего ответа зависят мои следующие 2-3 года
- Написать собственный язык программирования
- Как написать свой язык программирования?
- Разработать компьютерную программу, написанную на языке программирования PascalABC, используя тип данных «запись»,
- Помогите закодировать фразу "Я люблю тебя Саша" на языке программирования