1

(12 відповідей, залишених у Pascal/Delphi)

Зрозуміло, просто так допомагати ніхто нехоче, видно перевились добрі люди на землі.

2

(12 відповідей, залишених у Pascal/Delphi)

Допоможіть будь-ласка вирішити завдання:

У середовищі Pascal
Ввести з клавіатури послідовність N однобайтних чисел в
шістнадцятковому форматі. Обчислити контрольну суму цієї
послідовності, використовуючи наступну рекурентну
формулу:
B[N+1]=B{N+1] and (B{i] or 25h) якщо i парне;
B[N+1]=B {N+1] or (B[i} xor 25h) якщо i непарне.
Вивести на екран послідовність B {i} і контрольну суму
B[N+1].

БУДУ ДУЖЕ ВДЯЧНИЙ!!!

3

(2 відповідей, залишених у Pascal/Delphi)

Все відбій програма справна та здатна виконувати завдання!

4

(2 відповідей, залишених у Pascal/Delphi)

Створив нову тему бо по поередній
(Re: Рекурентне співвідношення) відповіді не отримав.
Свою програму хочу  переробити використовуючи в ній власні функції для обчислення  виразу і степеня за зразком:[img](завдання на фото)[/img]

 Program Laba_6;  (обчислення факторіалу)
uses crt; 
Const 
E=0.00001; {задаємо значення E за допомогою константи} 
Var 
i : integer; {ціла змінна для циклу}  

n: integer; {змінна для значення n} 
а: real; {дійсна змінна для членів ряду} 
x: real; {дійсна змінна для значення X} 
Function Fact(n:integer):real; {функція обчислення факторіалу} 
Var 
i:integer; {допоміжні змінні} 
k:real; 
begin 
k:= 1; {початкове значення} 
for i:= 2 to n do k:= k*i;{так знаходимо n!} 
Fact:=k; {кінцеве значення функції} 
end; 
Function Pow_n(x:real, n:integer):real; {функція обчислення ступеню} 
Var 
i:integer; {допоміжні змінні} 
k:real; 
begin 
k:= 1; {початкове значення } 
for i:=1 to n do k:= k*x; {так знаходимо ступінь} 
Pow_n:=k; {кінцеве значення функції} 
end; 
Begin 
clrsrc; 

Write(’Введіть значення X:’); 
Readln(x); 
Write(’Введіть значення N:’); 
Readln(n); 
i:=0; {початкове значення i} 
s:=0; {початкове значення суми}  

Repeat 
a:= Pow_n(-1,i)*Pow_n(x,2*i+1)/ Fact(n+1+i); {обчислюємо і-тий член ряду} 
s:= s+a; {сумма i  перших членів ряду} 
inc(i); {збільшуємо i на 1} 
Until abs(a)<E; 
Writeln(’i=’, i-1);{виводимо значення i на 1 менше} 
Writeln(’a=’, a:10:6); 
Writeln(’s=’, s:10:5); 
End.

   

ТЕПЕР МОЯ ПРОГРАМА:(завдання на фото у темі Re: Рекурентне співвідношення)

Program korin;
 Uses Crt;
Var    xn1, xn :real;
        a,p:integer;
Begin
 CLRSCR;
    Writeln(' Vvedit A :');
    Readln(a);
    Writeln(' Vvedit P :');
    Readln(p);
  xn1:=a;
  Repeat
      xn:=xn1;
      xn1:=1/p*((p-1)*xn+a/exp(p-1*ln(xn)));
      until abs(xn1-xn) < 0.000001;
 
     Writeln('xn1=',xn1);
     Readln
End.
  

Моя мета подати форму  xn1:=1/p*((p-1)*xn+a/exp(p-1*ln(xn))); у вигляді xn1:=1/p*Viraz/Pow_n.
Function Viraz  - (маю наувазі частину формули (p-1)*xn+a).
Function Pow_n - (функція піднесення до степеня, ( exp(p-1*ln(xn)
Починаю складати функцію піднесення до степеня.

Function Pow_n(x:real, n:integer):real;
Var
i:integer; {допоміжні змінні функції}
P :real;
begin 

Що робити далі і як правельно записати цю та іншу функцію, нерозумію.

5

(5 відповідей, залишених у Pascal/Delphi)

Моя мета подати форму  xn1:=1/p*((p-1)*xn+a/exp(p-1*ln(xn))); у вигляді xn1:=1/p*Viraz/Pow_n.

Function Viraz  - (маю наувазі частину формули (p-1)*xn+a).

Function Pow_n - (функція піднесення до степеня, ( exp(p-1*ln(xn)

Починаю складати функцію піднесення до степеня.

Function Pow_n(x:real, n:integer):real;
Var
i:integer; {допоміжні змінні функції}
P :real;
begin

Що робити далі і як правельно записати цю та іншу функцію, нерозумію.

6

(5 відповідей, залишених у Pascal/Delphi)

Уточнення:(функції користувача).

7

(5 відповідей, залишених у Pascal/Delphi)

Програма вже справна,
але при її ствренні  мені потрібно  використати функції, підкажіть будь-ласка що і як записати у вигляді функції.

Program korin;

 Uses Crt;
Var    xn1, xn :real;
        a,p:integer;
Begin
 CLRSCR;
    Writeln(' Vvedit A :');
    Readln(a);
    Writeln(' Vvedit P :');
    Readln(p);
  xn1:=a;
  Repeat
      xn:=xn1;
      xn1:=1/p*((p-1)*xn+a/exp(p-1*ln(xn)));
      until abs(xn1-xn) < 0.000001;

     Writeln('xn1=',xn1);
     Readln
End.


[img](Якщо  потрібно, фото завдання у попередньму повідомленні).[/img]

8

(3 відповідей, залишених у Pascal/Delphi)

Допоможіть будь-ласка перекласти з C++ на Turbo Pascal (7.0)


    
#include <iostream>
#include <stdio.h>
#include <math.h>
 
using namespace std;
double pow_b (double a, int n){
    if (n==0) return 1;
    double result = 1;
    while (n>0) {
        if (n%2==0) {
            n/=2;
            a*=a;
        }
        else {
            n--;
            result*=a;
        }
    }
    return result;
}
int main () {
    double a, p, eps=0.00001; //Ініціалізуємо  змінні і задамо точність
    cin>>a>>p;
    double x=pow(a, 1/p);  //підрахуємо значення
    double xn=a, x_prev;
    int i=0;
    while (fabs(x-xn) > eps){  //створемо цикл, який рахує значення з допомогою рекурентного співвідношення  Ньютона
        x_prev=xn;
        xn=(1/p)*(x_prev*(p-1) + a/(pow_b(x_prev, p-1)));
        i++;
    }
    cout<<i<<' '<<xn<<' '<<x; //Виведем кількість ітерацій на екран.
    return 0;
}   , 

Також за умовою я маю  при ствренні програми   використати функції,
та  захист від «зациклювання».(Підкажіть що можна записати у вигляді функції.)

9

(5 відповідей, залишених у Pascal/Delphi)

Мова програмування Turbo Pascal 7.0
Умова на фото.
При ствренні програми   використати циклічні обчислення з використанням функцій ,
та  захист від «зациклювання».
Я написав програму, але результат незкдовільний, думаю труднощі виникли з введенням значення точності. Порадьте будь-ласка де і що виправити.

Program korin;

Var   a, xn1, xn,  p, e : real;
        n:integer;
Begin
    Write(' a>=0 a=:');
    Writeln(' Vvedit A :');
    Readln(a);
    Writeln(' Vvedit P :');
    Readln(p);
 Begin
  xn:=1;
  n:=0;
  Repeat
      n:=n+1;
      xn1:=xn;
      xn:=1/p*((p-1)*xn+a/exp(p-1*ln(xn)));
      until abs(xn1-xn) < 0.000001;
End;
     Writeln('xn=');
     Writeln('x=', sqrt(a));
     Readln
End.