понеділок, 8 грудня 2014 р.

Магічний трикутник на сумах мовою програмування Pascal

Магічний трикутник  на сумах мовою програмування Pascal
1.Дано числа: 1, 2, 3, 4, 5, 6, 7, 8, 9. Розташуйте їх у кружечках трикутника  так, щоб суми на кожній стороні трикутника були рівними:  а) одному парному числу; б) одному непарному числу; в) трьом послідовним натуральним числам.  



Технічні умови. Програма утворює послідовність,  цілі числа якої послідовно заповнюють кружечки трикутника, починаючи з вершини за часовою стрілкою, і ці числа розміщуються так, що на кожній стороні трикутника виконується умова завдання.
Приклад: Починаючи з вершини за часовою стрілкою, числа розміщуються так:  а) 5; 3;  4; 8; 1; 9; 2; 6; 7( на кожній стороні по 20).    б)8;  5; 3; 7; 6;  1;  9;  4;  2; ( на кожній стороні по 23)    в) 8; 3; 5; 7; 6; 2; 9; 1; 4(це числа 22,23,24).
Розв′язання. Програма для магічного трикутника з магічною сумою 23
program magic_tpukytnuk;
var a,b,c,d,e,f, h,i, j: integer;    k:boolean;
begin
 {for a:=1 to 9 do begin} a:=9;         for b:=1 to 9 do begin     for c:=1 to 9 do begin
  {for d:=1 to 9 do begin} d:=8;       for e:=1 to 9 do begin       for f:=1 to 9 do begin
   {for h:=1 to 9 do begin} h:=7;       for i:=1 to 9 do begin      for j:=1 to 9 do begin
   k:= (a<>b) and (c<>a) and (a<>d) and (a<>e) and  (a<>f) and (a<>h) and (a<>i) and (a<>j);
   k:= k and(c<>b) and (b<>d) and (b<>e) and  (b<>f) and (b<>h) and (b<>i) and (b<>j);
   k:= k and (c<>d) and (c<>e) and  (c<>f) and (c<>h) and (c<>i) and (c<>j);
   k:= k and (d<>e) and  (d<>f) and (d<>h) and (d<>i) and (d<>j);
   k:= k and (e<>f) and (e<>h) and (e<>i) and (e<>j);
   k:= k and  (f<>h) and (f<>i) and (f<>j);
   k:= k and (h<>i) and (h<>j);
   k:= k and(i<>j);
   if k and(a+b+c+d=d+e+f+h) and (h+i+j+a=d+e+f+h) and (h+i+j+a=a+b+c+d) then
   begin
  writeln('  a+b+c+d=' , a+b+c+d); writeln('  d+e+f+h=' , d+e+f+h);
   writeln('  h+i+j+a=' , h+i+j+a);
   write('  a=', a, ';  ');   write('  b=', b, ';  ');  write('  c=', c, ';  ');
   write('  d=', d, ';  '); write('  e=', e, ';  ');write('  f=', f, ';  ');
   write('  h=', h, ';  '); write('  i=', i, ';  ');write('  j=', j, ';  '); writeln('  ');
end;end; end; end;end;end;end; { end; end;end;}  end.
Приклади, що є результатом виконання програми - це магічні трикутники з магічною сумою 23
 1)a+b+c+d=23, d+e+f+h=23,  h+i+j+a=23,   a=9;    b=1;    c=5;    d=8;    e=2;    f=6;    h=7;    i=3;    j=4;   
 2) a+b+c+d=23, d+e+f+h=23,  h+i+j+a=23,   a=9;    b=1;    c=5;    d=8;    e=2;    f=6;    h=7;    i=4;    j=3;   
 3)a+b+c+d=23, d+e+f+h=23,  h+i+j+a=23,   a=9;    b=1;    c=5;    d=8;    e=6;    f=2;    h=7;    i=3;    j=4;   
 4) a+b+c+d=23, d+e+f+h=23,  h+i+j+a=23,   a=9;    b=1;    c=5;    d=8;    e=6;    f=2;    h=7;    i=4;    j=3;   
 5)a+b+c+d=23,  d+e+f+h=23,  h+i+j+a=23,   a=9;    b=2;    c=4;    d=8;    e=3;    f=5;    h=7;    i=1;    j=6;   
 6) a+b+c+d=23, d+e+f+h=23,  h+i+j+a=23,   a=9;    b=2;    c=4;    d=8;    e=3;    f=5;    h=7;    i=6;    j=1;   
 7) a+b+c+d=23, d+e+f+h=23,  h+i+j+a=23,   a=9;    b=2;    c=4;    d=8;    e=5;    f=3;    h=7;    i=1;    j=6;   
 8) a+b+c+d=23,    d+e+f+h=23,  h+i+j+a=23,   a=9;    b=2;    c=4;    d=8;    e=5;    f=3;    h=7;    i=6;    j=1;   
 9) a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=4;    c=2;    d=8;    e=3;    f=5;    h=7;    i=1;    j=6;   
10)a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=4;    c=2;    d=8;    e=3;    f=5;    h=7;    i=6;    j=1;   
11)  a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=4;    c=2;    d=8;    e=5;    f=3;    h=7;    i=1;    j=6;   
12)  a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=4;    c=2;    d=8;    e=5;    f=3;    h=7;    i=6;    j=1;   
13)  a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=5;    c=1;    d=8;    e=2;    f=6;    h=7;    i=3;    j=4;   
14) a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=5;    c=1;    d=8;    e=2;    f=6;    h=7;    i=4;    j=3;   
15)  a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=5;    c=1;    d=8;    e=6;    f=2;    h=7;    i=3;    j=4;   

16)  a+b+c+d=23,   d+e+f+h=23,   h+i+j+a=23,   a=9;    b=5;    c=1;    d=8;    e=6;    f=2;    h=7;    i=4;    j=3;

Задача  для самостійного опрацювання.


Магічний трикутник  на добутках  мовою програмування Pascal
1.Дано числа: a, b, c, d, e, f, h, i, j. Розташуйте їх у кружечках трикутника  так, щоб добутки  на кожній стороні трикутника були рівними:  а) одному парному числу; б) одному непарному числу; в) трьом різним парним числам.  
Технічні умови. Програма утворює послідовність,  цілі числа якої послідовно заповнюють кружечки трикутника, починаючи з вершини за часовою стрілкою, і ці числа розміщуються так, що на кожній стороні трикутника виконується умова завдання.
Приклад: Починаючи з вершини за часовою стрілкою, числа розміщуються так: 

а) 25; 23;  24; 28; 21; 29; 22; 26; 27( на кожній стороні по 220).    б)3835; 33; 37; 3631393432; ( на кожній стороні по 323)    в) 28; 23; 25; 27; 26; 22; 29; 21; 24(це числа 222,223,224)



Класичний магічний квадрат 4х4 на сумах мовою Pascal

2.Записати алгоритм, який виводить  на екран  випадковий  фрагмент шістнадцятичленної арифметичної прогресії у вигляді магічного квадрату розміром 4х4   з магічною сумою та магічним добутком.
Технічні умови.  Програма на мові Паскаль випадковим чином задає три числа: 1)перший член для фрагменту арифметичної прогресії; 2) різниця для фрагменту арифметичної прогресії.  3) знаменник геометричної прогресії для магічного квадрату на добутках. Члени цієї прогресії,  це двоцифрові цілі числа, які утворює програма. І виводить на екран магічні квадрати 4х4 на сумах та добутках.
Приклад:
Утворення магічного квадрату 4х4 з 16 членів арифметичної прогресії

 Якщо дана арифметична прогресія з 16 членів:
а,  а + d,  а + 2d,  а +3d,  а + 4d, а +5d,  а + 6d,  а +7d,   а+8d, …, а + 14d, а + 15d
Тоді можна з цих чисел утворити магічний квадрат 4х4 з магічною константою 4а +30d:

а + 15d
а + 2d
а + d
а + 12d
а + 4d
а + 9d
а + 10d
а + 7d
а + 8d
а + 5d
а + 6d
а + 11d
а + 3d
а + 14d
а + 13d
а











Магічний квадрат на добутках

ра + 15d
ра + 2d
ра + d
ра + 12d
ра + 4d
ра + 9d
ра + 10d
ра + 7d
ра + 8d
ра + 5d
ра + 6d
ра + 11d
ра + 3d
ра + 14d
ра + 13d
ра















Немає коментарів:

Дописати коментар