Показать сообщение отдельно
Старый 13.08.2015, 17:50   #6 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Asya_inter Посмотреть сообщение
Вот что получилось, но можно ли лучше?
Уж не знаю, лучше или нет, но мне нравится больше. По крайней мере, удалось обойтись без вещественных форматов.
Код:
Var
 M,a,b,c,d:Integer;
 T:boolean;

Begin
 Write('M = ');
 Readln(M);
 a:=0;
 repeat
  Inc(a);
  b:=0;
  repeat
   Inc(b);
   c:=0;
   repeat
    Inc(c);
    d:=M-a*a*a-b*b*b-c*c*c;
    T:=(d=0);
   until T or (d<0);
  until T or (b*b*b+a*a*a>M-1);
 until T or (a*a*a>M-2);
 if T then
  writeln('Yes: ',M,' = ',a,'^3 + ',b,'^3 + ',c,'^3')
 else
  writeln('No');
 Readln
End.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070