четвер, 22 лютого 2018 р.

Алгоритми виокремлення цифр для випадкових чисел

Практична робота 10. Алгоритм піднесення до степеня випадкових чисел
Завдання 1. Скласти та реалiзувати мовою Pascal aлгоритм  піднесення числа до степеня, тобто обчислення  mn.  Для цього використовують  число-експоненту е=2,71828… і мовою Паскаль створюють форму запису:  ху= еlnх*y,  кодуючи  exp(ln(m)*n).
program stepyn1;
var  n,m,k: real;
begin
writeln(‘введіть  число, яке є основою степеня m=’);  readln(m);     {ввiд основи}
writeln(‘введіть  число, яке є показником  степеня n=’);  readln(n);  {ввід показника}
k:=exp(ln(m)*n);                                                              {виконується обчислення степеня}
writeln(‘число, яке є результатом m^ n', m, '^', n, '=', k);  end.
Протестуйте правильність роботи алгоритму, якщо (m; n )={(2; 3), (7; 5), (0.16; 0.5), (6; 9)}
Завдання 2. Скласти та реалiзувати мовою Pascal aлгоритм  піднесення випадкового числа до випадкового степеня, тобто обчислення  mn.  Для цього використовують  число-експоненту е=2,71828 y формі запису:  ху= еlnх*y.
program stepyn2;
var  n,m,k: real;
begin
write('  вводиться випадкове  число, яке є основою степеня m=');      {вводиться основа  степеня}
m:=random(20); write(m); writeln;
write('вводиться випадкове  число, яке є показником степення  n=');    {вводиться показник  степеня}
n:=random(10); write(n); writeln;
k:=exp(ln(m)*n);                                                                     {виконується обчислення степеня}
writeln('результат обчислення  m^ n=', m, '^', n, '=', k); writeln; end.
Протестуйте правильність роботи алгоритму.
Завдання 3. Скласти та реалiзувати мовою Pascal aлгоритм  який округлює до цілого результат піднесення випадкового дробового числа до випадкового дробового степеня, тобто обчислення  mn.  Для цього використовують  експоненту е=2,71828… в такій формі запису:  ху= еlnх*y.
program stepyn3;
var  n,m,k: real;
begin
write('  вводиться випадкове  число, яке є основою степеня m=');   { основа  степеня}
m:=10*random; write(m); writeln;
write('вводиться випадкове  число, яке є показником степення  n=');   { показник  }
n:=10*random; write(n); writeln;
k:=trunс((exp(ln(m)*n)));                                {виконується обчислення степеня}
writeln('результат обчислення  m^ n=', m, '^', n, '=', k); writeln; end.
Протестуйте правильність роботи алгоритму.
Завдання 4. Скласти та реалiзувати мовою Pascal алгоритм,  який обчислює піднесення до степеня, а саме,  випадкове дробове  число із проміжку [15; 18] підносить до випадкового дробового степеня із проміжку [1; 10], тобто виконує обчислення  mnДля цього використовують  експоненту е=2,71828… i форму запису:  ху= еlnх*y.
program stepyn4;
var  n,m,k: real;
begin
write('  вводиться випадкове  число, яке є основою степеня m=');  { основа  степеня}
m:=15+random(4); write(m); writeln;
write('вводиться випадкове  число, яке є показником степення  n=');  {показник  степеня}
n:=1+random(10); write(n); writeln;
k:=trunс((exp(ln(m)*n)));                                         {виконується обчислення степеня}
writeln('результат обчислення  m^ n=', m, '^', n, '=', k); writeln; end.
Протестуйте правильність роботи алгоритму.



Практична робота 11. Алгоритми виокремлення цифр для випадкових чисел
Завдання 1. Скласти та реалiзувати мовою Pascal aлгоритм  виокремлення цифр випадкових трицифрових  чисел, та знаходження суми усіх цифр  числа. Для цього використовують  операцію з цілими числами div  - ділення на ціло i операцію mod - остача від ділення.
program zyfra1;
var  n,m,k: integer;
begin
writeln(‘випадкове  число, m=’);  m:=100+random(900); writeln(m);    {ввiд числа}
k:= (m mod 10) +((m div 10) mod 10) + m div 100; {виконується обчислення суми цифр}
writeln(‘число, яке є сумою цифр', m mod 10, '+', (m div 10) mod 10, '+',  m div 100,  '=', k);  end.
Протестуйте правильність роботи алгоритму.
Завдання 2. Скласти та реалiзувати мовою Pascal aлгоритм  виокремлення цифр випадкових трицифрових чисел, та знаходження добутку усіх цифр  числа. Для цього використовують  операцію з цілими числами div  - ділення на ціло i операцію mod - остача від ділення.
program zyfra2;
var  n,m,k: integer;
begin
writeln(‘випадкове  число, m=’);  m:=100+random(900); writeln(m);    {ввiд числа}
k:= (m mod 10) *((m div 10) mod 10) * (m div 100); {виконується обчислення добутку}
writeln(‘число, яке є сумою цифр', m mod 10, '+', (m div 10) mod 10, '+',  m div 100,  '=', k);  end.
Протестуйте правильність роботи алгоритму.
Завдання 3. Скласти та реалiзувати мовою Pascal aлгоритм  виокремлення цифр випадкових чотирицифрових чисел, та знаходження добутку усіх цифр  числа. Для цього використовують  операцію з цілими числами div  - ділення на ціло i операцію mod - остача від ділення.
program zyfra3;
var  n,m,k: integer;
begin
writeln(‘випадкове  число, m=’);  m:=1000+random(9000); writeln(m);    {ввiд числа}
k:= (m mod 10) *((m div 10) mod 10) * ((m div 100) mod 10)*((m div 1000) mod 10); {виконується обчислення добутку}
writeln(‘число, яке є сумою цифр', m mod 10, '*', (m div 10) mod 10, '*',  (m div 100) mod 10,  '*',  (m div 1000) mod 10, '=',    k);  end.
Протестуйте правильність роботи   алгоритму.
Завдання 4. Скласти та реалiзувати мовою Pascal aлгоритм створення з виокремленних цифр випадкових чотирицифрових чисел,  числа зі зворотним записом  цифр у новому  числі. Для цього використовують  операцію з цілими числами div  - ділення на ціло i операцію mod - остача від ділення.
program zyfra4;
var  n,m,k: integer;
begin
writeln(‘випадкове  число, m=’);  m:=1000+random(9000); writeln(m);    {ввiд числа}
n:= 1000*(m mod 10) +100*((m div 10) mod 10) +10* ((m div 100) mod 10)+((m div 1000) mod 10);
writeln(‘число має цифри: ', m mod 10, '*', (m div 10) mod 10, '*',  (m div 100) mod 10,  '*',  (m div 1000) mod 10, '=',    n ); writeln; end.

Протестуйте правильність роботи   алгоритму.