Консультация № 175659
27.12.2009, 15:34
35.00 руб.
0 2 1
нужно решить
Дано натуральное число N. Определить длину периода 1/n. Период дроби равен периоду в последовательности остатков. Построить график зависимости периода от N.

Обсуждение

давно
Профессионал
304622
583
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.
5
Неизвестный
28.12.2009, 18:59
общий
большое спс за ответ
Форма ответа