variant_8
.docxИ снова вызывается функция setData(), которая позволит внести данные в новый выделенный участок памяти – в последний элемент массива структур.
Когда пользователь решит больше не вводить данные – он нажимает ноль. После этого сработает функция showData() и на экране отобразится таблица с данными со всех структур динамического массива. В самом конце программы не забываем освободить память, которую занимает динамический массив структур.
Задание 12*. Составить схему алгоритма и программу на языке C++, позволяющую решить предложенную в Вашем варианте задачу с использованием рекурсии.
Вариант 8. Напишите программу, которая находит сумму элементов одномерного массива, не использующая для этих целей циклической структуры. (Необходимо разработать рекурсивную функцию Sum(), которая вычисляет сумму элементов массива A[]).
Листинг П. 10.
#include<iostream>
#include<windows.h>
#include<conio.h>
using namespace std;
int sum(const int * arr, size_t count) {
return (count) ? *arr + sum(arr + 1, count - 1) : 0;
}
int main()
{
setlocale(LC_ALL, "rus");
int arr[5] = { 1, 2, 3, 4, 5 };
cout << "сумма = " << sum(arr, 5);
_getch();
return 0;
}
Результат работы программы:
1 Будем считать, что заданная точность достигнута, если абсолютное значение члена ряда an станет меньше, т.е. .