четвер, 10 листопада 2016 р.

Тренувальні задачі з програмування для початківців при підготовці до олімпіад

Зразки задач для складання алгоритмів мовою програмування Pascal

Задача Tel. Василь з батьком купували два мобільні телефона – мамі і Василеві. Так як на другий товар у супермаркеті суттєва знижка, за перший заплатили R1  гривень, а за другий менше -  R2 . Число S називається середнім з двох чисел R1 і R2, якщо S дорівнює (R1 + R2) / 2.  Василь негайно підрахував  середнє значення ціни S, яке також виявилося цілим числом. Коли мамі вручили новий телефон, сказали його ціну R1  та розповіли про знижку. Мама поцікавилася, а скільки ж коштує телефон Василя, але він пам’ятав лише середнє значення ціни та ціну маминого телефона.  Допоможіть Василю сказати мамі правду.
Технічні умови. Програма Tel  читає з пристрою стандартного введення  два цілих числа R1 і S, (обидва між 1000 і +10000) в одному рядку через пропуск, програма виводить на пристрій стандартного виведення єдине ціле число – вартість телефона Василя.
Приклад.  Введення   4000 3000. Виведення 2000.  Функція для розв’язання Задача Tel: R2(R1;S)=2*S-R1 якщо (1000<=R1<=10000), &(1000<=S<=10000).
var  R2, S, R1: integer;
begin
read (R1, S);
R2:= 2*S – R1;
write (R1);
end.

var r1,r2,s:int64;
begin
  read(r1,s);
  r2:=2*s-r1;
  write(r2);
end.









Задача Ink. Як відомо, все частіше і частіше  різні папери не пишуть від руки, а друкують на принтері. Актуальною є проблема придбання запасних картриджів. Їх варто купувати разом з принтером. Якщо разом з принтером купити N  картриджів, це буде коштувати А+В*N гривень. Відомо, що  покупець на всю покупку може витратити не більше С гривень.
Визначте максимальне число запасних картриджів, що їх зможе купити покупець.
Технічні умови. Програма Ink  читає з пристрою стандартного введення  три цілих числа A, B, C (1 ≤ A, B, C ≤ 2*109, A ≤ C) - вартість принтера, вартість одного картриджа і максимальну вартість усієї покупки. Програма виводить єдине число - максимальне придбаних картриджів.
Приклад .  Введення
Виведення
20 10 55
3
Функція для розв’язання Задача Ink: N(a;b;c)=[(c-a)/b],  якщо а+b *n<=C
var
A, B, C, N: real;
begin
read(A, B, C);
N:=(C-A)/B;
write(trunc(N));
end.

var a,b,c,n:int64;
begin
  read(a,b,c);
  c:=c-a;
  if c<0 then c:=0;
  n:=(c div b);
  write(n)
end.


Задача Wiring.   Василь бажає підключити всі свої m електроприладів  до n розеток, що є в кімнаті. У магазині продаються  розгалужувачі з 1 розетки на 2 по ціні A гривні за штуку, а мультиплексори з однієї розетки на п’ять — по ціні B гривні за штуку. Запас обох товарів у магазині завжди достатній. Розгалужувачі та мультиплексори можна вільно підключати один до одного та розетки, що є. Яку мінімальну суму доведеться  витратити Василю, аби  підключити всі наявні в нього  електроприлади?  Василь не проти, якщо після підключення всіх m приладів залишаться незаняті розетки, его турбує  лише мінімізація затрат.
Технічні умови. Програма  Wiring  читає з пристрою стандартного введення рядок  чисел через пропуск: n (1 ≤ n ≤ 1015) — кількість розеток,  m (1 ≤ m ≤ 1015) — кількість електроприладів, два цілих числа a і b (1 ≤ a,b ≤ 1000), - вартість розгалужувача  і мультиплексора відповідно. Програма виводить на пристрій стандартного виведення  єдине число – мінімальну суму, яку повинен витратити Василь.
Приклади
Введення
Виведення
1 3 1 10
2
2 4 9 10
10
3 8 9 10
19
Функція для розв’язання Задача Wiring: 1)C(a;b;k;l)=min[(ak+bl],  цей мінімум шукають на множині (k+4l<=m-n)&(k+l<=m-n), якщо n-m<0.  2) C(a;b;k;l)=0, якщо (n-m)>=0. 
var n,m,a,b,min,k,d,mo:int64;
begin
   read(n,m,a,b);
   k:=m-n;
   if k<=0 then begin write(0) end
           else begin     d:=(k div 4);    mo:=(k mod 4);
                   min:=k*a;
                   if mo>0 then m:=d*b+b
                           else m:=d*b;
                   if min>m then min:=m;
                   m:=d*b+mo*a;
                   if m<min then min:=m;
                   write(min);
                end; end.

Задача Tiles. План будинку має форму прямокутника зі сторонами axb. Вздовж всіх стін  (всередині будинку) проходить коридор шириною h. Підлогу коридору вирішили покрити плиткою розміром 1х1. Скільки плиток для цього потрібно купити? Вважайте, що a>2h,  b>2h.
Технічні умови.  Програма Tiles читає з пристрою стандартного введення  три натуральних  числа  a,b,h (кожне з них не більше 106. Програма виводить на пристрій стандартного виведення  єдине число – кількість плиток, яку потрібно купити.
Приклад. Введення  5 10 2.  Виведеня  44.  Функція для розв’язання Задача Tiles: K(a;b;h)=2ah+2h(b-2h],  якщо a>2h,  b>2h.
var
a, b, h, x: integer;
begin
read (a, b, h);
x:=2*h*(a+b-(2*h));
write (x);
end.

var a,b,h,r:int64;
begin
  read(a,b,h);
  r:=a*b-(a-2*h)*(b-2*h);
  write(r);
end.




1.                Складіть програму, яка знаходить найбільше число рядка із m цілих чисел.

program bilshe;
CONST  n=5;
TYPE  MASSIV=array[1..n]of integer;
VAR   max, a, b, c, d, i, e:longint;
      S:MASSIV;
BEGIN
write('Введіть рядок  із  ‘,n , ’  цілих чисел');
for a:=1 to n do
begin
write(' A[',a,']=');
read (S[a]);
end;
writeln('Це даний рядок чисел');writeln;
for a:=1 to n do  write(S[a],'; ');
MAX:=S[1];  i:=1;
for a:=1 to n do
if S[a]>=MAX then
begin
MAX:=S[a];
I:=a;
end;
writeln('найбільше число в рядку MAX = ', MAX );
writeln(' номер найбільшого числа  A[',i,'] = ', MAX,' в рядку  i = ', i);
END.



СОРТУВАННЯ  ЕЛЕМЕНТІВ  РЯДКА  МЕТОДОМ  БУЛЬБАШКИ
В ПОРЯДКУ ЗРОСТАННЯ
Цей метод ґрунтується на перестановці сусідніх чисел. Для впорядкування чисел в рядку здійснюємо повторні проходи по рядку, кожного разу переміщаючи найменший елемент частини масиву, що залишився, на початок.
Переміщення елементів рядка здійснюється таким чином: переглядаємо рядок справа на ліво, порівнюючи пари сусідніх чисел; якщо числа в парі розміщені в порядку зростання, то залишаємо їх без змін, а якщо в порядку спадання, то міняємо їх місцями.
В результаті першого проходу найменше число буде поставлене на початок масиву. У другому проході такі операції виконуються над елементами з останнього до другого, у третьому проході такі операції виконуються над елементами з останнього до третього, і так далі. Впорядкування рядка буде закінчено, якщо при проході рядка не виконуватиметься жодної перестановки елементів рядка. Факт перестановки фіксується за допомогою допоміжної змінної prap, яка на початку має значення 0 і  набуває значення 1 тоді, коли  виконуватиметься перестановка в якій-небудь парі. Прапорець prap, ще використовується з метою економії часу в тому випадку, коли частина рядка наперед впорядкована.
ПРОГРАМA  НА МОВІ PASCAL для розташування 10-ти чисел в порядку зростання, від найменшого числа до найбільшого числа методом бульбашки.
 Program Bubblesort;
  CONST {оголошується перелік постійних величин}
      n=10; {оголошується постійна величина, це кількість чисел у рядку, їх буде рівно 10}
 TYPE {оголошується  тип (MASSIV)рядок  цілих чисел  і кількість місць для них від 1 до n в діапазоні  integer }
     MASSIV=array[1..n] of  integer;
 VAR  {оголошується перелік усіх змінних величин, що використовуються у програмі}
i, j, adop, prap: longint; {оголошуються довгі цілі змінні величини, що будуть використовуватися у програмі}
      A: Massiv; {оголошується рядок із змінних величин, що будуть використовуватися у програмі}
BEGIN  {оголошується рядок  початок виконання  алгоритмічних дії програми}
writeln('Введіть елементи рядка');
for i:=1  to n do {цикл з лічильником у зростаючому порядку для присвоєння усім десяти елементам рядка  А[i]  довільних чисел }
begin
writeln;
write('À[',i,'] = '); {попереджає і записує на моніторі чергове місце  для введення  з клавіатури поточного числа рядка}
read (A[i]);  { виконується 10 разове введення з клавіатури на поточне місце рядка  нового числа }
end;  {оголошується  кінець виконання циклу для введення рядка із десяти цілих чисел  }
writeln('Рядок чисел до сортування'); {оголошується  про запис на моніторі рядка із десяти цілих чисел  }
writeln;
for i:=1  to n do writeln(a[i]:5);
   i:=2;
   repeat  {оголошується  про цикл з після умовою  для сортування рядка із десяти цілих чисел  }
   prap:=0;
   for j:=n downto i do  {оголошується  про цикл з лічильником у зворотному напрямі  для сортування рядка цілих чисел  }
    begin
   if  A[j]<A[j-1] then {оголошується  неповне розгалуження   для порівняння двох сусідніх цілих чисел  }
        begin
  adop:=A[j-1];  {якщо вірне порівняння(для порядку зростання) двох сусідніх цілих чисел , то відбувається їх обмін}
            A[j-1]:=A[j];
            A[j]:=adop;
            prap:=1;  {якщо фіксується, що відбувався обмін чисел}
        end;
   end;
   i:=1+ i; {це параметр циклу з лічильником у зворотному напрямі,   потрібний  для  обмеження  несортованої кількості  цілих чисел  }
    until prap=0;  {якщо виконується умова  prap=0,  не було обміну двох чисел, то цикл завершується}
writeln; {оголошується  про запис на моніторі рядка із десяти цілих чисел, що розташовані в порядку зростання  }
writeln('Рядок чисел після сортування');
writeln;
for i:=1  to n do writeln('A[',i,'] = ', A[i],';  '); {цикл з лічильником у зростаючому порядку для виводу на монітор  усіх десяти елементів рядка  А[iв порядку зростання }
writeln;
end.



Завдання для самостійної роботи

2.Складіть програму, яка знаходить найменше число рядка із m цілих чисел.
3.Складіть програму, яка знаходить середнє арифметичне двох цілих чисел, середнє гармонійне двох чисел, середнє геометричне двох чисел, середнє квадратичне двох чисел, і запам’ятовує їх  в рядку в порядку зростання.
4.Складіть програму, яка знаходить найбільшу і найменшу різницю між цілими числами рядка.
5.Складіть програму, яка знаходить найбільше число рядка із m цілих чисел і запам’ятовує його номер  в рядку.
6.Складіть програму, яка знаходить найменше додатне число рядка із m цілих чисел і запам’ятовує його номер  в рядку.
7.Складіть програму, яка знаходить найменше додатне число рядка і найбільше від’ємне числа із n цілих чисел і запам’ятовує його номер  в рядку та видає їх інформацію про наявність цих чисел.
8.Складіть програму, яка знаходить найменше число рядка і найбільше  числа із n цілих чисел і запам’ятовує його номер  в рядку і обмінює їх місцями, використовуючи MАX = MАX+MIN; MIN= MАX-MIN; MIN = MАX-MIN.
9.Складіть програму, яка впорядковує числа рядка за зростанням.
10.  Складіть програму, яка впорядковує числа рядка за спаданням.
11.  Складіть програму, яка знаходить відсоток додатних чисел і від’ємних чисел а) в рядку; б)в квадратному масиві.
12.  Складіть програму, яка знаходить прості  числа в а) в рядку; б)в квадратному масиві.
13.  Складіть програму, яка знаходить усі дільники натурального числа.
14.  Складіть програму, яка знаходить усі цифри натурального числа і записує їх у порядку зростання.
15.  Складіть програму, яка знаходить усі цифри натурального числа і записує їх новим натуральним числом, з цифрами у зворотному порядку до даного числа.
16.  Складіть програму, яка знаходить усі цифри натурального числа і записує їх новим натуральним числом, з цифрами у зворотному порядку до даного числа.
17.  Складіть програму, яка знаходить кількість цифр і суму цифр натурального числа.
18.  Складіть програму, яка виясняє, чи дане натуральне число ділиться націло на кожну свою цифру.
19.  Складіть програму, яка виясняє, чи сума цифр даного натурального числа ділиться націло на цифри даного числа.
20.  Складіть програму, яка для даного натурального числа розташовує його цифри  так, що спочатку записуються усі парні цифри даного числа в порядку зростання, а за ними усі непарні цифри в порядку спадання.
21.  Складіть програму, яка дане «слово» із довільних символів розташовує і прочитує у зворотному порядку.
22.  Складіть програму, яка знаходить в заданому діапазоні пару цілих розв’язків для довільного лінійного рівняння з двома змінними.
23.  Складіть програму, яка знаходить в заданому діапазоні  чисел трійки цілих розв’язків рівняння Піфагора.
24.  Складіть програму, яка виявляє в заданому діапазоні чисел розв’язки даного квадратного рівняння.
25.  Складіть програму, яка виявляє належність точки заданому відрізку в прямокутній системі координат.
26.  Складіть програму, яка виявляє існування трикутника в прямокутній системі координат за трьома точками.
27.  Складіть програму, яка знаходить площу  і периметр 3-кутника в прямокутній системі координат за трьома точками.
28.  Складіть програму, яка знаходить кути 3-кутника в прямокутній системі координат за трьома точками.
29.  Складіть програму, яка знаходить довжини медіан 3-кутника в прямокутній системі координат за трьома точками.
30.  Складіть програму, яка знаходить довжини висот 3-кутника в прямокутній системі координат за трьома точками.
31.  Складіть програму, яка знаходить довжини бісектрис 3-кутника в прямокутній системі координат за трьома точками.
32.  Складіть програму, яка знаходить вид 3-кутника в прямокутній системі координат за трьома точками.
33.  Складіть програму, яка виявляє існування 4-кутника в прямокутній системі координат за чотирма точками.
34.  Складіть програму, яка знаходить площу  і периметр 4-кутника в прямокутній системі координат за чотирма точками.
Складіть програму, яка виявляє вид 4-кутника 


Завдання для самостійного програмування

 

Завдання С 

Задання С1. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних розв’язків на числових проміжках [-k; k], де k- ціле число, рівняння

n2+(n-1)2+n2(n-1)2=(n(n-1)+1)2,

де - ціле невідоме число.

 

 

Завдання С2. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних розв’язків на числових проміжках [-k; k], де k- ціле число, рівняння 

n2+(n-1)2+(n-2)2+ n2(n-1)2 +(n-1)2(n-2)=(n(n-1)(n-2)+1)2,

де - ціле невідоме число.

 

Задання С3. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (a;b;c)  на проміжках [-k; k], де k- ціле число, рівняння

(a-b)3+(b-c)3+(c-a)3=3(a-b)(b-c)(c-a)

де a, b,c - цілi невідомі числa.

 

 

Задання С4Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (a;b;c) на числових проміжках [-k; k], де k- ціле число, рівняння

(a+b)3+(b+c)3+(c+a)3-3(a+b)(c+b)(a+c) =2(a3+b3+c3-3abc)

де a, b,c - цілi невідомі числa.

  

Задання С5Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (a;b;c) на числових проміжках [-k; k], де k- ціле число, рівняння

(a+b+c)(a2+b2+c2-ab-cb-ac)=a3+b3+c3-3abc

де a, b,c - цілi невідомі числa.

 

Задання С6. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (a;b;c) на числових проміжках [-k; k], де k- ціле число, рівняння

(a+b+c)3-3(a+b)(b+c)(c+a)=a3+b3+c3-3abc

де a, b,c - цілi невідомі числa.

 

Завдання D 

Задання D1. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних розв’язків на числових проміжках [-p; p], де p - ціле число, рівняння

12 + n2 = 4(9+n),

де - ціле невідоме числa.

 

Задання D2. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних двійок-розв’язків (m;n)  на числових проміжках [-p; p], де p - ціле число, рівняння

m2 + n2 = m(m+n),

де m,n - цілi невідомі числa.

 

Задання D3. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n)  на числових проміжках [-p; p], де p - ціле число, рівняння

m2 + n2 + k2=km+mn+kn,

де k,m,n, - цілi невідомі числa.

 

 

Задання D4. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n)  на числових проміжках [-g; g], де g - ціле число, рівняння

m2n+k2n+n2m=n3+m3+k3

де k,m,n - цілi невідомі числa.

Задання D5. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n) на числових проміжках [-q; q], де q - ціле число, рівняння

m3n2+k3m2+n3k2 = n5 +m5+k5,

де k,m,n, - цілi невідомі числa.

 

Задання D6. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних четвірок-розв’язків (k;m;n) на числових проміжках [-g; g], де g - ціле число, рівняння

(mn+kp)2=(n2+m2)(k2+p2)

де k,m,n,p - цілi невідомі числa.

 

 

 

Завдання F 

Задання F1. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних розв’язків на числових проміжках [-d; d], де d - ціле число, рівняння

1 + 18n+ n2 = (2+n)(59+n),

де - ціле невідоме числa.

Задання F2. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних двійок-розв’язків (m;n)  на числових проміжках [-t; t], де t - ціле число, рівняння

m2 + n2 = (m-6)(m+n+30),

де m,n - цілi невідомі числa.

 

Задання F3. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n)  на числових проміжках [-r; r], де r - ціле число, рівняння

(m-1)2 + n2 + (k+1)2=k(m-1)+mn+(k+1)n,

де k,m,n, - цілi невідомі числa.

 

 

Задання F4. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n)  на числових проміжках [-h; h], де h - ціле число, рівняння

m2(n-1)+k2n+(n+1)2m=(n-1)3+m3+(k+1)3

де k,m,n - цілi невідомі числa.

Задання F5. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n) на числових проміжках [-s; s], де s - ціле число, рівняння

m4n+k4m+n4k = n5 +m5+k5,

де k,m,n, - цілi невідомі числa.

 

Задання F6. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних четвірок-розв’язків (k;m;n) на числових проміжках [-g; g], де g - ціле число, рівняння

(mn+kp)2=((n-1)2+(m-1)2)((k+1)2+(p+1)2)

де k,m,n,p - цілi невідомі числa.

 

Завдання W 

Задання W1. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних розв’язків на числових проміжках [-n; n], де n - ціле число, рівняння

1=0.25(m2+1)2 – 0.25(m2-1)2

де  - ціле невідоме числa.

Задання W2. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних двійок-розв’язків (m;n)  на числових проміжках [-t; t], де t - ціле число, рівняння

mn=0.25(mn+n)2-0.25(mn-n)2   

де m,n - цілi невідомі числa.

 

Задання W3. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних трійок-розв’язків (k;m;n)  на числових проміжках [-y; y], де y - ціле число, рівняння

k4 + 4 =  (m2 2m + 2)(n2 + 2n + 2),

де k,m,n, - цілi невідомі числa.

 

 

Задання W4. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних двійок-розв’язків (a;b)  на числових проміжках [-h; h], де h - ціле число, рівняння

a4 + 4b4 = (a2 2ab + 2b2)(a2 + 2ab + 2b2);

де a,b - цілi невідомі числa.

Задання W5. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних двійок-розв’язків (k;n) на числових проміжках [-s; s], де s - ціле число, рівняння

k4+(n+k)(n+2k)(n+3k)(n+4k)=(n2 + 5kn+5k2)2,

де k,n, - цілi невідомі числa.

 

Задання W6. Створити та реалізувати мовою програмування Python3 в середовищі програмування Thonny

алгоритм пошуку цілочисельних двійок-розв’язків (k;n) на числових проміжках [-g; g], де g - ціле число, рівняння

k4+(n-k)n(n+k)(n+2k)=(n2 + kn- k2)2;

де k,n - цілi невідомі числa.

 




Довідник. Формули скороченого множення

Властивості степенів з цілим показником

аnam=an+mаn:am=an-m;  (аn)m=anm;  а0=1;  а-n=1:an; а=а0,5a0,5=1a1 =(a0,5)2;

(ab)m = ambm = 1/a– mb– m =(ab)m;     am:bm = (a:b)m = b– m a– m =(b:a) – m       

 Різниця та сума квадратів    1=0,25(m2+1)2 – 0,25(m2-1)2 m=(m+0,25)2-(m-0,25)2 ;   m2=0,25(m2+1)2-0,25(m2-1)2;   mn=0,25(mn+1)2-0,25(mn-1)2   

 

a2 + b2не розкладається  на цілі множники на множині многочленів

a2b2 = (a b)(a + b) – це різниця квадратів двох виразів.

Різниця та сума кубів

а3b3 = (a b)(a2 + аb + b2)це різниця кубів двох виразів.

а3 + b3 = (a + b)(a2 – аb + b2) – це cума кубів двох виразів.

Різниця та сума біквадратів

а4b4 = (a b)(a3 + а2b + аb2 + b3) = (a b)(a + b)( a2 + b2);

а4 + b4  - не розкладається на множники

а5 b5= (a b)(a4+ а3b + а2b2 + аb3 + b4);

а5 + b5= (a+b)( a4 а3b + а2b2 аb3 + b4);

a2m + b2m  - не розкладається на множники

аn bn = (ab)( an-1+ аn-2b + аn-3b2 +… + а2bn-3 + аbn-2 + bn-1);

Якщо  b =1, тоді  аn – 1= (a–1)( an-1n-2  + аn-3  +… +а2 + а + 1);

Степінь суми двох виразів.

(a±b)0 = 1;        (a±b)1 = a±b;  1:an ±(1:bn) =a-n±b-n=(ab)-n(an ± bn) =a-n ± b-n 

Квадрат  двочлена:

(a + b)2 =(b + a)2 = a2 + 2ab + b2 –  це квадрат суми двох чисел.

(ab)2 =(ba)2 = a2 – 2ab + b2 –  це квадрат різниці двох чисел.

Куб  двочлена:

(a + b)3 = a3 + 3a2b + 3ab2 + b3  це куб суми двох чисел;

(ab)3 = a3 – 3a2b + 3ab2b3  це куб суми або різниці двох чисел;

Іноді стають у нагоді такі формули:

(a±b)4 = a4±4a3b +6a2b2 ±4ab2 + b4;

(a±b)5 = a5±5a4b +10a3b2 ±10a2b3 +5ab4 ± b5;

(a±b)6= a6±6a5b +15a4b2 ±20a3b3 +15a2b4 ±6ab5 +b6.

Для непарних n: аn + bn = (a+b)( an-1n-2 b + аn-3b2 -… +а2bn-3 - аbn-2 + bn-1);

Якщо  b =1, тоді a2n+1 + 1= (a+1)( an-1- аn-2  - аn-3  +…2 - а + 1);

Сума трьох квадратів і трьох кубів.

а3 + b3 + c3 - 3abc = (a+b+c)(a2 + b2 +c2 –аb–bc–ac);

(a + b + c)2 = a2 + b2 + c2 + 2аb + 2bc +2ac;

(a – b)3 + (b c)3 + (c – a)3 =3 (a – b)(b – c)(c – a).

a4 + 4 =  (a2 2a + 2)(a2 + 2a + 2);

a4 + a2 + 1 = (a2 + a + 1)(a2 a + 1);

а5 + a +1 = (a2 + a + 1)(a3 a2 + 1);

a10 + a5 + 1 = = (a2 + a + 1)(a8 a7 + a5 a4 + a3 a + 1);

a3 + b3 + c3 – 3abc = (a + b +  c)(a2+ b2 + c2 – ab – ac – bc).

a4 + 4b4 = (a2 2ab + 2b2)(a2 + 2ab + 2b2);

4a4 + b4 =  (2a2 2ab + b2)(2a2 + 2ab + b2);

(х – m)(х – m - 2) + 1 = (х – m - 1)2;

1+ (n-1)n(n+1)(n+2)=(n2+n-1)2;

 (х-а)(х-(а+1))(х-(а+2))(х-(а+3))+1 = ((х2-(а +4)х+ (а+4))2;

 16+(n-2)n(n+2)(n+4)=(n2 + 2n- 4)2 ;  

81+(n-3)n(n+3)(n+6)=(n2 + 3n- 9)2; 

256+(n-4)n(n+4)(n+8)=(n2 + 4n- 16)2;

k4+(n-k)n(n+k)(n+2k)=(n2 + kn- k2)2;

k4+(n+k)(n+2k)(n+3k)(n+4k)=(n2 + 5kn+5k2)2

 якщо m+k=p+q, тоді

 |mkpq-(0,5km+0,5pq)2|+(x+k)(x+m)(x+p)(x+q))=

=(x2 - (k+m)x+0,5km+0,5pq)2

 

 Три способи запису квадратного тричлена

ax2 + bx + c = а(х – х1)(х – х2)= а(х - 0,5b:a)20,25D:a.

Запис квадратного тричлена у вигляді декількох квадратів:

ax2 + bx + c=m(x-k)2+p(x-q)2

ax2 + bx + c=m(x-k)2+p(x-q)2 +u(x-v)2 

 

Дискримінант  D = b2 – 4ac

Два корені:   х1 = (‒ b ‒ (b2 ‒ 4ac)0,5 )/(2a),  х2 = (‒ b + (b2 ‒ 4ac)0,5 )/(2a).  

Розв’язування квадратного рівняння без обчислень дискримінанта:

Якщо a + b + с = 0, то корені  кв. рівняння:  х1 = 1,  х2 = с/а.  

Якщо а - b + с = 0, то корені кв. рівняння:   х1 = - 1,  х2 =  - с/а.  

 

Координати вершини  квадратичної  параболи  y= ax2 + bx + c

це точка (хверш; уверш), де хверш= - 0,5b:a =0,5(х2 + х1);    

 увершaхверш 2+ bхверш+c= -D/4a.

x2 + 2ax + b =  n1(x + m1)2 + n2(x + m2)2 + n3(x + m3)2

 

xy + x + + а = (х + 1)(y + 1) + а - 1.                xy + x + + 1= (х + 1)(y + 1)

aху + bх + cу + d = (x + c:a)(ау + b) + d – (cb:a).

Якщо b2 ‒ 4acневід’ємний,  то ax2 + byх + cy2 = а(х ‒ k1y) (х ‒ k2y),

де k1, k2 ‒ корені квадратного рівняння  ak2 + bk + c = 0.

А) многочлен (х - а1) (х - а2)(х - а2) … (х -  аn) - 1 – незвідний, тобто не розкладається на многочлени меншого степеня, якщо аі  – різні числа

Б) многочлен (х - а1)(х - а2)(х - а2) … (х -  аn) + 1 – незвідний, тобто не розкладається на многочлени меншого степеня, окрім наступних випадків:

1+ (n-1)n(n+1)(n+2)=(n2+n-1)2;

 (х-а)(х-(а+1))(х-(а+2))(х-(а+3))+1 = ((х2-(а +4)х+ (а+4))2;

    Випадки розкладу на множники

16+(n-2)n(n+2)(n+4)=(n2 + 2n- 4)2 ;  

81+(n-3)n(n+3)(n+6)=(n2 + 3n- 9)2

256+(n-4)n(n+4)(n+8)=(n2 + 4n- 16)2;

k4+(n-k)n(n+k)(n+2k)=(n2 + kn- k2)2

В) многочлен (х - а1)2(х - а2)2(х - а2)2 … (х -  аn)2 + 1 – незвідний, тобто не розкладається на многочлени меншого степеня;

Г) якщо р – просте число, то многочлен хр – х – 1 – незвідний, тобто не розкладається на многочлени меншого степеня;

Д) якщо р – просте число, а – натуральне число, що не ділиться на р, то многочлен хр – х – а – незвідний, тобто не розкладається на многочлени меншого степеня;

Є) будь-який многочлен з цілими коефіцієнтами можна записати як суму двох незвідних многочленів.

Тотожності.

1=0,25(m2+1)2-0,25(m2-1)2  

 m=(m+0,25)2-(m-0,25)2

 

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

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