Отримання знань
дистанційна підтримка освіти школярів
Тут ви можете виконати завдання чи задати питання по змiсту цього уроку.
Михальов Володимир (StarRover) 2014-08-26 15:49:30
Інверсія. Варіант 1. ----------------------- {Invers1} const max=1000; var a:array[1..max] of byte; c:byte; i,t,k:longint; begin Read(k); a[1]:=1; t:=1; while t while (i<=2*t)and(i<=k) do begin a[i]:=1-a[i-t]; i:=i+1; end; t:=2*t; end; c:=a[k]; WriteLn(c); end. ==================================== Інверсія. Варіант 2. ----------------------- {Invers2} var c,ck,k,p:longint; function Step2(x:longint):longint; var n,z:longint; begin n:=1; while n end; begin Read(k); ck:=k; c:=1; while ck>1 do begin p:=Step2(ck); ck:=ck-p; c:=1-c; end; WriteLn(c); end. |
Михальов Володимир (StarRover) 2014-08-26 16:17:23
Запитання 1. Якщо інверсна послідовність починається з нуля, то що буде на n-ому місці? -------------------------- Протилежне тому, що стоїть на n-му місці в послідовності що починається з одиниці. ========================== 2. Чи може в цій послідовності стояти підряд 3 одиниці? (3 нулі)? --------- Ні, не може. ========================== 3. Розробити алгоритм до наступної задачі: -------------------------- {Invers3} {->7-->9-->5->} var c,ck,k,p:longint; function Step2(x:longint):longint; var n,z:longint; begin n:=1; while n end; begin Read(k); ck:=k; c:=7; while ck>1 do begin p:=Step2(ck); ck:=ck-p; if c=7 then c:=9 else if c=9 then c:=5 else if c=5 then c:=7; end; WriteLn(c); end. |
В системі:
гості - (1); користувачі -
(0)