Составить программу для вычисления суммы k членов ряда ∑_ (n = 1) ^k (x ^ (n) / n), где k определяется из критерия, || Uk | - | Um || <ебселунт, где ебселунт - заранее заданная точность вычисления и m = k + 1. При вводе данных необходимо учитывая то, x может принимать любое значение из допустимого диапазона, который приведен в условии каждой конкретной задачи. Если такой диапазон не указан, то ограничений на значение переменной x нет. При составлении программы использовать рекурсивную функцию для вычисления Um с рекуррентной формулы U_m = U_n * x*( n / (n-1)), m = n + 1 и | x | <1.
program ryazantsev;
var str, newstr: string;
pos,i,k:integer;
begin
newstr:='';
Writeln ('Введите строку с фамилиями');
Readln(str);
for i:=1 to Length(str) do begin
if str[i]=' ' then continue;
if (i=1) or (str[i-1]=' ') then pos:=i
else if (i=Length(str)) or (str[i+1]=' ') then begin
if LowerCase(str[i])=LowerCase(str[pos]) then k:=k+1;
if (i-pos+1) mod 2 <> 0 then newstr:=newstr+Copy(str, pos, i-pos+1)+' '
end
end;
writeln('Количество фамилий начинающихся и заканчивающихся на одну букву: ', k);
writeln('Новая строка: ', newstr)
end.
using namespace std;
struct P
{
P() = default;
P(int x, int y)
{
this->x = x;
this->y = y;
};
int x;
int y;
};
int main()
{
int size;
cin >> size;
P *arr = new P[size];
for (int i = 0; i < size; i++) {
cin >> arr[i].x;
cin >> arr[i].y;
};
P temp; // временная переменная для обмена элементов местами
// Сортировка массива пузырьком
for (int i = 0; i < size - 1; i++) {
for (int j = 0; j < size - i - 1; j++) {
if (arr[j].x > arr[j + 1].x) {
// меняем элементы местами
temp.x = arr[j].x;
arr[j].x = arr[j + 1].x;
arr[j + 1].x = temp.x;
}
}
}
// Вывод отсортированного массива на экран
for (int i = 0; i < size; i++) {
cout << arr[i].x << " ";
}
delete[] arr;
}