powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Упорядочить Последовательность
12 сообщений из 12, страница 1 из 1
Упорядочить Последовательность
    #38059537
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите, пожалуйста!!!!
По заданным х0 и n построить последовательность чисел х={х1,х2,...,хn} по закону хi=F(xi-1), i=1,2,3,..,n. Затем эту последовательность упорядочить в новую последовательность y={y1,y2,y3,..,yn} согласно правилу П и найти в у номер r элемента, удовлетворяющего условию А.
Входные данные х0,n. Программа должна напечатать два массива чисел х и у, номер r.
Предусмотреть:
1) процедуру-функцию,вычисляющую значение F(x) с формальным параметром х
2) процедуру упорядочивания массива В размерности m в массив С в соответствии с правилом П - с формальными параметрами B,C,m.

Функция F(x):
i 2 4 2
F(x)=(-1) * (ln(1+x )/ (2x +3x +1)
i i i i

Правило П упорядочивания массива х в массив уi: |у1|<=|у2|<=...|уn|
Условие А, которому должен удовлетворять элемент уr: yr- первое слева положительное число( если таких чисел нет, то r=n+1)
Числовые данные: _
X=1,2, n=10
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059542
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alina_Li,

Давайте начнём с простого. Напишитеавтор1) процедуру-функцию,вычисляющую значение F(x) с формальным параметром х
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059567
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,

F(xi)=(-1) i * (ln(1+xi 2 )/(2xi 4 + 3xi 2 +1)
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059577
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alina_Li,

Это функция на языке программирования C++?
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059582
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,

Да
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059587
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alina_LiAbstraction,

ДаНеправильный ответ.
Вы можете написать функцию на языке C++, вычисляющую значение F(x)?
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059588
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,

Числовые данные:
_
Х=1,2, n=10
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059594
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,

Нет. Только-только начала учить с++.
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38059636
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alina_LiAbstraction,

Нет. Только-только начала учить с++.Бывает. Можете написать функцию, которая принимает на вход (вещественный) аргумент x и возвращает -x?
(Кстати, ровно такую функцию, как описано в задании, написать нельзя в принципе - из-за (-1) i . Но с этим разберёмся чуть позже.)
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38070405
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,

Помогите, пожалуйста, исправить условие и ошибка какая-то еще есть...
Где что нужно изменить и какой код?
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38070413
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,
#include<iostream>
#include<math.h>
#include<fstream>
using namespace std;
double fx(double x)
{
double xi;
xi=log(1+x*x)/(2*x*x*x*x+3*x*x+1);
return xi;
}

void regulation(double b[100], double c[100], int m)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;i<m-1-i;j++)
if(sqr(b[j])<=sqr(b[j+1]))
{
c[j]=b[j];
b[j]=b[j+1];
b[j+1]=c[j];
}
for(i=0;i<m;i++)
c[j]=b[j];
}

void main()
{
double x[100], y[100]={0};
int i,r,n,b=1;
cin»n»x[0];
for(i=1;i<n;i++)
{
b=b*(-1);
x[i]=b*fx(x[i-1]);
}
regulation(x,y,n);
r=i;
while (y[r]<=0&&r<=0)
r++;
for(i=1;i<n;i++)
cout«x[i]«' '«'\n';
for(i=0;i<n;i++)
cout«y[i]«' '«'\n';
if(r>=0)
cout«r;
else
cout«r=n+1;
}
...
Рейтинг: 0 / 0
Упорядочить Последовательность
    #38070444
Alina_Li
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Abstraction,

Или лучше так?
#include<iostream>
#include<math.h>
#include<fstream>
using namespace std;
double fx(double x)
{
double xi;
xi=log(1+x*x)/(2*x*x*x*x+3*x*x+1);
return xi;
}

void regulation(double b[100], double c[100], int m)
{
int i,j;
for(i=0;i<m;i++)
for(j=0;i<m-1-i;j++)
if(sqr(b[j])<=sqr(b[j+1]))
{
c[j]=b[j];
b[j]=b[j+1];
b[j+1]=c[j];
}
for(i=0;i<m;i++)
c[j]=b[j];
}

void main()
{
double x[100], y[100]={0};
int i,r,n,b=1;
cin»n»x[0];
for(i=1;i<n;i++)
{
b=b*(-1);
x[i]=b*fx(x[i-1]);
}
regulation(x,y,n);
r=i;
while (y[r]<=0&&r<=0)
r++;
for(i=1;i<n;i++)
cout«x[i]«' '«'\n';
for(i=0;i<n;i++)
cout«y[i]«' '«'\n';
if(r>=0)
cout«r;
else
cout«r=n+1;
}
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Упорядочить Последовательность
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]