Форум » Системы счисления » 14.332 » Ответить

14.332

Машка-растеряшк: [pre2] begin var s:= biginteger.Pow(19,81)+biginteger.Pow(23,709)-4; var c:array [1..1012] of biginteger; var i,n:integer; (n,i):=(0,1); while s>0 do begin c[ i]:=s mod 9; s:= s div 9; i:=i+1; end; for i:=1 to 1012 do begin if (c[ i]=8) and ((c[i+1]=1)or(c[i+1]=2)or(c[i+1]=3)or(c[i+1]=4)or(c[i+1]=5)or(c[i+1]=6)or(c[i+1]=7)) then n:=n+1; end; writeln(n); end.[/pre2] программа выводит 80 в ответе 76 не могу найти ошибку, помогите

Ответов - 2

AnnaPershina: [pre2] x=19**81+23**709-4 y='' while x>0: y=str(x%9)+y x=x//9 k=0 for i in range(1,8): k+=y.count(str(8)+str(i)) print(k) [/pre2]

AnnaPershina: Наверное , ошибка в этой строчке if (c=8) and ((c[i+1]=1)or(c[i+1]=2)or(c[i+1]=3)or(c[i+1]=4)or(c[i+1]=5)or(c[i+1]=6)or(c[i+1]=7)) then



полная версия страницы