Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
LordSilren
0 / 0 / 2
Регистрация: 25.11.2011
Сообщений: 32
#1

Рекурсивная функция для вычисления суммы элементов арифметической прогрессии - C++

25.12.2012, 17:43. Просмотров 518. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <conio.h>
 
int pr(int n, int a1, int d,int sum)
{
if(n==1) return a1;
sum=a1+(n-1)*d+pr(n-1,a1,d);
return sum;
}
 
int main()
{
  int n,a1,d,sum;
    printf("Vvedite kol-vo elementov arifm. progressii \n");
    scanf("%d",&n);
    printf("Vvedite pervij element arifm. progressii \n");
    scanf("%d",&a1);
    printf("Vvedite raznost' elementov arifm. progressii \n");
    scanf("%d",&d);
 pr(n,a1,d,sum);
    printf("Summa elemenov arifm. progressii = %d",sum);
getch();
}
pr: функция не принимает 3 аргументов
в чем ошибка?

Добавлено через 36 минут
p.s так и не нашел ошибку...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2012, 17:43
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Рекурсивная функция для вычисления суммы элементов арифметической прогрессии (C++):

Рекурсивная функция нахождения суммы арифметической прогрессии
Помогите. Не понимаю как написать. Даны первый член и разницу...

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

Рекурсивная функция для нахождения n-го члена / суммы n первых членов геометрической прогрессии
Даны первый член и знаменатель геометрической прогрессии. Написать рекурсивную...

Составить программу вычисления суммы арифметической прогрессии
3*. Составьте программу вычисления суммы 150 первых членов арифметической...

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

Составьте программу вычисления суммы 150 первых членов арифметической прогрессии, если a1 = –200; d = 0,2
Здравствуйте, решите пожалуйста задачку на С++. Составьте программу вычисления...

5
Issues
430 / 365 / 149
Регистрация: 06.08.2012
Сообщений: 961
25.12.2012, 18:18 #2
функция принимает 4, а в этом вызове сколько?
C++
1
pr(n-1,a1,d);
Добавлено через 7 минут
LordSilren, Исправил ваш код:
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
#include <stdio.h>
#include <conio.h>
 
int pr(int n, int a1, int d,int& sum)
{
    if(n==1) return a1;
    sum=a1+(n-1)*d+pr(n-1,a1,d, sum);
    return sum;
}
 
int main()
{
    int n,a1,d,sum = 0;
    
    printf("Vvedite kol-vo elementov arifm. progressii \n");
    scanf("%d",&n);
    printf("Vvedite pervij element arifm. progressii \n");
    scanf("%d",&a1);
    printf("Vvedite raznost' elementov arifm. progressii \n");
    scanf("%d",&d);
 
    pr(n,a1,d,sum);
    printf("Summa elemenov arifm. progressii = %d",sum);
 
    getch();
}
1
LordSilren
0 / 0 / 2
Регистрация: 25.11.2011
Сообщений: 32
25.12.2012, 18:35  [ТС] #3
SeregaC++, благодарю

Добавлено через 9 минут
еще проблема..если вводить кол-во элементов=1, 1-й элемент=1, а разность=0 он выводит 0..
пытался написать проверку после ввода кол-ва и 1-го элемента,но что-то не получается..
0
Issues
430 / 365 / 149
Регистрация: 06.08.2012
Сообщений: 961
25.12.2012, 18:40 #4
LordSilren, замените 13-ю строку (int n,a1,d,sum = 0;), на эту: int n,a1,d,sum = 1;
0
LordSilren
0 / 0 / 2
Регистрация: 25.11.2011
Сообщений: 32
25.12.2012, 18:44  [ТС] #5
SeregaC++, немного не так,он должен проверить n после его ввода и ввода 1-го элемента,чтоб не вводить разность
0
Issues
430 / 365 / 149
Регистрация: 06.08.2012
Сообщений: 961
25.12.2012, 18:50 #6
LordSilren, ну так добавьте проверку.
0
25.12.2012, 18:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2012, 18:50
Привет! Вот еще темы с решениями:

Написать программу для нахождения суммы членов арифметической прогрессии
как написать программу для нахождения суммы членов арифметической прогрессии,...

Рекурсивная функция вычисления суммы бесконечного ряда
Всем привет) Объясните кто нибудь как это можно сделать?)

Написать рекурсивную функцию для нахождения суммы n первых членов арифметической прогрессии
2. Даны первый член и разность арифметической прогрессии. Написать рекурсивную...

Функция для вычисления суммы элементов матрицы кратных 3
Не правильный ответ выдает. Вот что я запилил: #include &lt;iostream&gt; #include...


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

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

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