Почему не выдает числа?
uses crt;
var i:integer;
begin
for i:= 100 to 999 do
if i=((sqr(i div 100)*(i div 100)) +( (sqr(i div 10)mod 10)*(i div 10)mod 10) + (sqr(i mod 10)*i mod 10)) then
writeln (i);
end.
мышшшь:
если не канает попробуй ord((sqr(i div 100)*(i div 100)) +( (sqr(i div 10)mod 10)*(i div 10)mod 10) + (sqr(i mod 10)*i mod 10))
а вообще было бы неплохо для проверки завести интовую переменную например а, и перед if складывать значение скобки в а, а потом эту а сравнивать с i
все дело что после for нужно было вводить еще программу начало,конец.
спасибо за советы
а, и все?
begin
for i:= 100 to 999 do
begin
a:=i div 100;
b:= (i div 10) mod 10;
c:= i mod 10;
z:=(a*a*a+b*b*b+c*c*c);
if i=z then
writeln (i);
end;
end.
for i:= 100 to 999 do
begin
a:=i div 100;
b:= (i div 10) mod 10;
c:= i mod 10;
z:=(a*a*a+b*b*b+c*c*c);
if i=z then
writeln (i);
end;
end.
да
я поняла
просто там вроде одна операция, я подумала что не обязательно))
пожалуста))
Ответы
Ответ дал:
0
var i:integer;
begin
for i:=100 to 999 do
if i=sqr(i div 100)*(i div 100)+sqr((i div 10)mod 10)*((i div 10) mod 10)+
sqr(i mod 10)*(i mod 10) then writeln(i)
end.
begin
for i:=100 to 999 do
if i=sqr(i div 100)*(i div 100)+sqr((i div 10)mod 10)*((i div 10) mod 10)+
sqr(i mod 10)*(i mod 10) then writeln(i)
end.
Вас заинтересует
1 год назад
2 года назад
2 года назад
7 лет назад
7 лет назад
9 лет назад