28.12.2009, 18:26
общий
это ответ
Здравствуйте, Benqq.
Повозиться пришлось, хотя если б я внимательнее вчитался в слова про "последовательность остатков".
Итак. Программа сделана через запоминание всех остатков в массив. На каждом новом остатке массив просматривается сначала на предмет совпадения. Для N отведён 1 байт -- значит размер массива 255. Заодно вывожу само число. Насчёт графика -- это уж, наверно, самому нетрудно.
Если комментарии надо -- напиши в форум.
Приложение:
var N,i,j:byte;
r:integer;
a:integer;
ost:array[0..255] of byte;
begin
readln(N);
r:=10;
write('0.');
while r<N do
begin
r:=r*10;
write('0');
end;
i:=0;
repeat
inc(i);
write(r div N);
r:=r mod N;
ost[i]:=r;
r:=r*10;
j:=1;
while (ost[j]<>ost[i]) do inc(j);
until j<i;
writeln;
writeln(i-j);
readln;
end.