Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.75
jlejluk
0 / 0 / 0
Регистрация: 14.05.2010
Сообщений: 32
#1

Вычислить сумму бесконечного сходящегося ряда - C++

15.05.2010, 16:11. Просмотров 2632. Ответов 7
Метки нет (Все метки)

Еще столкнулся с трудными заданиями,поможете буду признателен если нет,буду ломать голову.
1.Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину, меньшую заданной погрешности d. Значение d задается пользователем.

2.Реализовать выполнение заданных действий над одномерным массивом. Число элементов массива задаётся пользователем. Элементы могут заполняться как вручную, так и случайным образом (если другой способ явно не указан в условии задачи).
Проверить, можно ли переставить элементы массива так, чтобы получилась арифметическая прогрессия.

3.Реализовать выполнение заданных действий над двумерным массивом. Размерность матрицы задаётся пользователем.
Найти минимальный по модулю элемент матрицы и вычислить сумму строки, в которой он находится.

4.Задача на обработку строк
Дана строка. Заменить в ней все последовательности из нескольких пробелов одним пробелом.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2010, 16:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить сумму бесконечного сходящегося ряда (C++):

Вычислить сумму бесконечного сходящегося ряда. - C++
Есть такая вот задача.. Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых,...

Вычислить сумму бесконечного сходящегося ряда - C++
Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину,...

Вычислить сумму бесконечного сходящегося ряда - C++
Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину,...

Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину, меньшую заданной - C++
Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину,...

Вычислить частичную сумму числового сходящегося ряда - C++
Вычислить частичную сумму числового сходящегося ряда S=1/22-1/42+1/62-1/82+...-1/(2*n)2 Суммирование прекратить при появлении...

Вычислить сумму бесконечного ряда, используя подпрограммы - C++
Вычислить сумму бесконечного ряда, используя подпрограммы. Вычисление общего члену оформить в виде функции, вычисления факториала оформить...

7
Sn1pe
11 / 11 / 1
Регистрация: 10.05.2010
Сообщений: 23
15.05.2010, 16:39 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
№4
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
#include <vcl.h>
#pragma hdrstop
#include <string.h>
#include <conio.h>
#include <iostream.h>
//---------------------------------------------------------------------------
 
#pragma argsused
extern void deletes(char *s, int pos);
 void deletes(char *s, int pos)
{ int i;
if ((s[pos]== ' ') && (s[pos+1]== ' '))
{ deletes(s,pos+1); }
for (i = pos; i < strlen(s)-1; i++)
 {
  s[i]=s[i+1];
}
s[i]=0;
 
}
int main(int argc, char* argv[])
{
char s[150];
int i;
gets(s);
for (i = 0; i < strlen(s); i++)
 {  if ((s[i]==' ') && (s[i+1]==' '))
    deletes(s,i+1);
}
 cout <<s;
 getch();
}
Вроде неплохо, даже рекурсивная функция есть.. Много раз проверял, вроде все правильно.
3
neske
1502 / 869 / 84
Регистрация: 26.03.2010
Сообщений: 2,983
15.05.2010, 17:34 #3
К первой и второй задачи нет самого условия.

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
#include <iostream>
#include <iomanip>
#include <ctime>
 
int main ()
{
    int i,j;
    int row,column;
    std::cout << "Input number row: ";
    std::cin >> row;
    std::cout << "Input number column: ";
    std::cin >> column;
    int **MAS = new int *[row];
    for (int i = 0; i < row; i++)
    MAS[i] = new int [column];
 
    srand(time(NULL));
    std::cout << "Start matrix:\n";
    for (i=0; i<row; i++) // заполнеие и вывод матрицы.
    {
        for (j=0; j<column; j++) {
            MAS[i][j]=rand()%1001-500; //-500..500
            std::cout << std::setw(5) << MAS[i][j]; }
        std::cout << std::endl;
    }
    std::cout << std::endl;
 
    int indexRow, min=abs(MAS[0][0]);
    for (i=0; i<row; i++)
        for (j=0; j<column; j++)
            if (min>abs(MAS[i][j]))
            {
                min=abs(MAS[i][j]);
                indexRow=i;
            }
 
    int sum=0;
    for (j=0; j<column; j++)
        sum+=MAS[indexRow][j];
 
    std::cout << "Min: " << min << std::endl;
    std::cout << "Sum: " << sum << std::endl;
 
    for (int i = 0; i < row; i++)
    delete []MAS[i];
    delete []MAS;
    system("pause");
    return 0;
}
1
jlejluk
0 / 0 / 0
Регистрация: 14.05.2010
Сообщений: 32
15.05.2010, 20:44  [ТС] #4
Как написать функцию с дробями и степенями, из ворда не копирует (((

Добавлено через 7 минут
neske

Не могу запустить в си билдере 6 (выдает еррор)

Добавлено через 18 минут
S=1/2*1-1/2*2+1/2*3-1/2*4+...
Читается так:
Эс равно одна вторая в первой степени минус одна вторая во второй степени плюс одна вторая в третьей степени минус одна вторая в четвертой степени +...

(степени у знаменателей!)
надеюсь вы поняли.Это условие к 1 и 2 задаче.сами задания выше.

Добавлено через 1 час 59 минут
Никто не поможет ((((
0
Sn1pe
11 / 11 / 1
Регистрация: 10.05.2010
Сообщений: 23
16.05.2010, 09:37 #5
Цитата Сообщение от jlejluk Посмотреть сообщение
Не могу запустить в си билдере 6 (выдает еррор)
Как просил переделка задачи под билдер:
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
51
52
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>
 
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
int i,j;
int row,column;
cout << "Input number row: ";
cin >> row;
cout << "Input number column: ";
cin >> column;
int **MAS = new int *[row];
for (int i = 0; i < row; i++)
MAS[i] = new int [column];
 
cout << "Start matrix:\n";
for (i=0; i<row; i++) // заполнение и вывод матрицы.
{
for (j=0; j<column; j++) {
MAS[i][j]=rand()%1001-500; //-500..500
cout <<MAS[i][j]<<" "; }
cout <<endl;
}
cout <<endl;
 int indexRow, min=abs(MAS[0][0]);
for (i=0; i<row; i++)
for (j=0; j<column; j++)
if (min>abs(MAS[i][j]))
{
min=abs(MAS[i][j]);
indexRow=i;
}
 
int sum=0;
for (j=0; j<column; j++)
sum+=MAS[indexRow][j];
 
cout << "Min: " << min << endl;
cout << "Sum: " << sum << endl;
 
for (int i = 0; i < row; i++)
delete []MAS[i];
delete []MAS;
getch();
 
}
1
kazak
3038 / 2359 / 157
Регистрация: 11.03.2009
Сообщений: 5,405
Завершенные тесты: 1
16.05.2010, 09:49 #6
1)S-сумма, f-будет отдельное слагаемое, d-погрешность.
C++
1
2
3
4
5
6
7
8
9
double S=0, f, d;
...
f = 1/2.0;
while (fabs(f)>d)
{
   S += f;
   f *= (-1/2.0);
}
...
1
jlejluk
0 / 0 / 0
Регистрация: 14.05.2010
Сообщений: 32
16.05.2010, 18:59  [ТС] #7
Реализовать выполнение заданных действий над одномерным массивом. Число элементов массива задаётся пользователем. Элементы могут заполняться как вручную, так и случайным образом (если другой способ явно не указан в условии задачи).
Проверить, можно ли переставить элементы массива так, чтобы получилась арифметическая прогрессия.

Сложности с решением.
Массив вводится руками. размер массива тоже вводится руками.тут нужна формула арифметической прогрессии.
Арифметическая прогрессия это например a1 = 2, d = 3;
и далее считаешь a2 = a1 + d = 2 + 3 = 5;
a3 = a2 + d = 5 + 3; и так далее
проверяешь твои элементы являются частью прогрессии или нет. элемент a1 у тебя будет самым маленьким элементом в массиве

Вопрос,как это реализавать в код?!
0
kazak
3038 / 2359 / 157
Регистрация: 11.03.2009
Сообщений: 5,405
Завершенные тесты: 1
19.05.2010, 12:22 #8
Цитата Сообщение от jlejluk Посмотреть сообщение
Проверить, можно ли переставить элементы массива так, чтобы получилась арифметическая прогрессия.
Сортируешь массив, допустим по возрастанию. Далее в цикле проверяешь разность между всеми соседними элементами, если она будет постоянной, значит последовательность является арфметической.
0
19.05.2010, 12:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2010, 12:22
Привет! Вот еще темы с ответами:

Вычислить сумму бесконечного ряда с помощью функций! - C++
Такая вот задача: Вычислить и напечатать сумму членов бесконечного ряда для заданного значения х с точностью до эпсилонт=0,00001:Вычисление...

Вычислить с точностью (эпсилант) сумму бесконечного ряда. - C++
1)используя смешанный способ вычисления члена ряда, 2)используя рекуррентную формулу для вычисления члена ряда.

Вычислить сумму бесконечного ряда с заданной точностью - C++
Здравствуйте, пожалуйста, помогите найти ошибку в программе, которая должна находить сумму бесконечного ряда с заданной точностью...

Вычислить сумму бесконечного ряда с заданной точность для значения x - C++
Вычислить суму бесконечного ряда с заданной точностью ε &lt; 1 для –1 &lt; x &lt; 1 Программа должна содержать простое меню, которое...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru