Дано натуральное число. Определить:
а) сколько раз в нем встречается цифра а;
б) количество его цифр, кратных z (значение z вводится с клавиатуры; z 2,
3, 4);
в) сумму его цифр, больших a (значение a вводится с клавиатуры; 0 a 8);
г) сколько раз в нем встречаются цифры x и y.
mnv1962:
А язык какой?
Написала на Паскаль
Ответы
Ответ дал:
3
var
a,str:string;
k,n,i,z,m,j,c,S,x,y,l:integer;
begin
writeln('введите число');
readln(str);
writeln('a ?');
readln(a);
writeln('z ?');
readln(z);
writeln('x & y');
readln(x,y);
n:=length(str);
for i:=1 to n do
begin
if str[i]=a then
k:=k+1;
val(str[i],m,j);
if m mod z=0 then
c:=c+1;
if str[i]>a then
begin
val(str[i],m,j);
s:=s+m;
end;
val(str[i],m,j);
if (m=x)or(m=y)then
l:=l+1;
end;
writeln('k: ',k,'кратное z: ',c,' s: ',s,' кол-во x,y: ',l);
end.
a,str:string;
k,n,i,z,m,j,c,S,x,y,l:integer;
begin
writeln('введите число');
readln(str);
writeln('a ?');
readln(a);
writeln('z ?');
readln(z);
writeln('x & y');
readln(x,y);
n:=length(str);
for i:=1 to n do
begin
if str[i]=a then
k:=k+1;
val(str[i],m,j);
if m mod z=0 then
c:=c+1;
if str[i]>a then
begin
val(str[i],m,j);
s:=s+m;
end;
val(str[i],m,j);
if (m=x)or(m=y)then
l:=l+1;
end;
writeln('k: ',k,'кратное z: ',c,' s: ',s,' кол-во x,y: ',l);
end.
Но ведь, как мне кажется, 0 кратен любому числу. Или я опять не права?
А вот это уже "философский вопрос". Когда говорят о делимости натуральных чисел, как Вы справедливо заметили, ноль не рассматривается. Т.е. в числе могут встречаться цифры 0, но когда мы их начинаем рассматривать, как самостоятельные числа, по-моему говорить об их делимости неправильно.
А z, как я понимаю из условия м.б. 2, 3, 4... Т.е тоже не ноль.
Иначе получится, что в числе 10 есть цифры, кратные одновременно 1, 2, 3, 4, 5, 6, 7, 8, 9 )))
Ну конечно z<>0, на ноль-то делить нельзя....
Впрочем, на то и комментарий, чтобы излагать СВОЁ мнение. Я не считаю Ваше решение неверным, но на мой взгляд все же с нулем - это ошибка. Хотя, повторюсь, "вопрос философский".
Кстати, про задачу о "внутри области". Вс-таки я с Вами согласна. Но исправить не получается, хотя я и написала модератору, чтобы дал такую возможность.
Все-таки "внутри" должно быть строгое неравенство
Может, еще дадут исправить. В Информатике с модераторами напряженка...
Спасибо, не сердитесь на меня. Я знаю, что упрямая. Но я люблю свой предмет и многие ошибки от невнимательности и торопыжести
Вас заинтересует
2 года назад
2 года назад
2 года назад
2 года назад
7 лет назад
7 лет назад
9 лет назад
9 лет назад