1 / 1 / 2
Регистрация: 28.11.2011
Сообщений: 49
1

Вычислить значения элементов последовательности.

23.12.2011, 13:56. Показов 2045. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У меня вот такая замудрёная задача!!!!
7. Вычислить значения элементов последовательности
z/3, (z-1)/4, (z-2)/5, (z-3)/6, … . Отпечатать каждое третье значение.
Вычисления закончить, когда очередной элемент будет отличаться от предыдущего на величину, не превышающую заданную величину d.
Сначала написал по своему:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream >
#include <conio.h>
#include <windows.h>
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int i, j, k = 1;
    double *rez, raz = 0, d, z;
 
    rez = new double[k];
 
    cout << "Введите значение переменной z:";
    cin >> z;
 
    cout << "Задайте значение величины d:";
    cin >> d;
 
    rez[k - 1] = 0;
 
    for (i = 3; raz <= d; i++) {
        j = i - 3;
        rez[k] = (z - j) / i;
        raz = rez[k] - rez[k - 1];
 
        if (raz < 0)
            raz = -raz;
 
        if (k == 1 || k % 3 == 0) {
            cout << (double)rez[k] << "\t" << k <<
                "-ый результат!\n";
            k++;
        } else
            k++;
    }
 
    delete[]rez;
    getch();
}
выдавала только одно значение или вообще ничего!!!! Препод подсказал, что надо вроде как использовать 3 переменные для результатов и выводить только третью.... я написал что-то вроде этого..... ничего не получается!!!!!! Может поможете, подскажите что не так??? Буду премного благодарен!!!! ПЛИЗ!!!

Вот текст проги:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include <conio.h>
#include <windows.h>
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    int i, j, t;
    double rez1, rez2, rez3, raz = 0, d, z;
 
    cout << "Введите значение переменной z:";
    cin >> z;
    cout << "Задайте значение величины d:";
    cin >> d;
 
    raz = d + 1;
 
    for (i = 3; raz > d; i++) {
        j = i - 3;
        for (t = 0; t < 3; t++) {
            if (t = 0) {
                rez1 = (z - j) / i;
                raz = 0 - rez1;
                if (raz < 0)
                    raz = -raz;
                break;
            } else if (t = 1) {
                rez2 = (z - j) / i;
                raz = rez2 - rez1;
                if (raz < 0)
                    raz = -raz;
                break;
            } else {
                rez3 = (z - j) / i;
                raz = rez3 - rez2;
                if (raz < 0)
                    raz = -raz;
                cout << (double)rez3 << "\t" <<
                    "-ый результат!\n";
                break;
            }
        }
    }
 
    getch();
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.12.2011, 13:56
Ответы с готовыми решениями:

Вычислить значения элементов последовательности
7. Вычислить значения элементов последовательности z/3, (z-1)/4, (z-2)/5, ...

Вычислить значения элементов последовательности
Всем привет! Возникла проблема с решением следующей задачи: Вычислить значения элементов...

Цикл: вычислить среднее арифметическое элементов последовательности, значения которых находятся в заданном интервале
Задача: Дана послідовніть з н цілих чисел. Обчисліть середнє арифметичне чисел, значення яких...

Цикл: вычислить среднее арифметическое элементов последовательности, значения которых находятся в заданном интервале
Задача: Дана последовательность из n целых чисел. Вычислить среднее арифметическое чисел,...

4
Заблокирован
Автор FAQ
23.12.2011, 14:15 2
Цитата Сообщение от sniperni Посмотреть сообщение
Вычислить значения элементов последовательности
z/3, (z-1)/4, (z-2)/5, (z-3)/6, … . Отпечатать каждое третье значение.
Вычисления закончить, когда очередной элемент будет отличаться от предыдущего на величину, не превышающую заданную величину d.
- это называется вычислить сумму ряда с точностью d
Вот Вам сходное задание Написать программу для нахождения значения функции с помощью ряда Тейлора
подправьте под ваши нужды
0
62 / 62 / 11
Регистрация: 16.10.2011
Сообщений: 200
23.12.2011, 14:29 3
Ща проверю код....
Очень интересно, у тебя k = 1, ты заводишь массив на k элементов rez = new double[k]; А далее в программе ты увеличиваешь k yf 1. Т.е. потом обращаешься к элементу rez[1] потом rez[2], а у тебя массив всего лишь на 1!!!! элемент, ты не можешь записывать в массив на 1!!! элемент второй третий четвертый и т.д.

Добавлено через 6 минут
Либо заводи массив, размер которого будет с избытком, но это плохо. Либо вообще откажись от массива и каждый элемент последовательности сразу выводи на экран.
0
1 / 1 / 2
Регистрация: 28.11.2011
Сообщений: 49
23.12.2011, 16:24  [ТС] 4
Про массив ищ одного элемента я заметил..... только вот задача и состоит в том,чтобы выводить каждый третий результат!!!
0
62 / 62 / 11
Регистрация: 16.10.2011
Сообщений: 200
23.12.2011, 16:47 5
Цитата Сообщение от sniperni Посмотреть сообщение
Вычисления закончить, когда очередной элемент будет отличаться от предыдущего на величину, не превышающую заданную величину d.
Отличаться от предыдущего выведенного элемента, или предыдущего элемента последовательности?

Добавлено через 15 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <stdlib.h>
 
double abs( double x )
{
   return (x < 0 ? -x: x);
}
 
void main( void )
{
  int z;
  double d;
  cout << "Insert z: ";
  cin >> z;
  cout << "Insert d: ";
  cin >> d;
  // Предыдущий и третий элементы
  double prev = (z-1)/4, cur = (z - 2)/5;
  int i = 1;
  cout << "Result:";
  do
  {
    prev = (z - i) / (3 + i); // Предыдущий
    i++;
    cur = (z - i) / (3 + i) ; // Текущий
    i += 2;
 
    cout << " " << cur;
  }
  while (abs(cur - prev) > d)
  cout << "\n";
  system("pause");
}
Т.е. есть у нас:
a1 a2 a3 a4 a5 a6 a7 a8
Я значло счиатю a2, затем a3, вывожу a3, затем считается a5, затем a6, выводится a6 и т.д.
0
23.12.2011, 16:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.12.2011, 16:47
Помогаю со студенческими работами здесь

Подсчитать количество элементов последовательности, значения которых больше значения предыдущего элемента
Дана последовательность из n действительных чисел.( Задачу нужно решить, используя одномерный...

Ограничить снизу значения тех элементов массива, значения которых меньше среднего для последовательности
Помогите с кодом программы на С Во всех последовательностях положительных чисел ограничить...

Вычислить значения последовательности
Рассмотреть указанную последовательность в цикле и выйти из цикла, достигнув указанного условия с...

Вычислить значения суммы и произведения последовательности
Даны натуральное число N и вещественное x. Вычислить S=\sum_{i=1}^{N}1/{x}^{i} ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru