Advertisement
MadCortez

Untitled

Oct 13th, 2020
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.32 KB | None | 0 0
  1. program laba2_2;
  2. //Uses
  3. //   Sys.Utils;
  4. const n = 17;
  5. type
  6.    TArray = array[0..n] of Integer;
  7.  
  8. procedure Print; forward;
  9. Function FindNumber: TArray; forward;
  10. procedure Task; forward;
  11.  
  12. procedure Print;
  13. var
  14.    i: Integer;
  15.    Num: TArray;
  16. begin
  17.    Write('Найденное число: ');
  18.    Num := FindNumber;
  19.    for i := 0 to n do
  20.       Write(Num[i]);
  21. end;
  22.  
  23. Function FindNumber: TArray;
  24. var
  25. Num: Tarray;
  26. Now, i, Ost, n, Temp: Integer;
  27. begin
  28.    Now := 2;
  29.    Ost := 0;
  30.    i := 0;
  31.    repeat
  32.       Now := Now * 2 + Ost;
  33.       if Now < 10 then
  34.          Ost := 0;
  35.       if Now >= 10 then
  36.       begin
  37.          Dec(Now, 10);
  38.          Ost := 1;
  39.       end;
  40.       Num[i] := Now;
  41.       Inc(i);
  42.    until (Now = 2) and (Ost = 0);
  43.    n := i;
  44.    for i := 0 to (n - 1) div 2 do
  45.    begin
  46.       Temp := Num[i];
  47.       Num[i] := Num[n - i - 1];
  48.       Num[n - i - 1] := Temp;
  49.    end;
  50.    FindNumber := Num;
  51. end;  
  52.  
  53. procedure Task;
  54. begin
  55.    Write('Данная программа находит самое маленькое число n, у которого если последнюю цифру ');
  56.    Writeln('перенести и поставить перед первой цифрой, то получится число, в два раза больше n');
  57. end;  
  58.    
  59. begin
  60.    Task;
  61.    Print;
  62. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement