Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*23. Для заданного одномерного массива Z из N элементов найти сумму выражений, вычисляемых по формуле .
- В рекурсивной функции каждый раз отделять первый элемент рассматриваемой части массива от остальных ее элементов
- и суммировать с вычисляемым с помощью этой же функции суммой остальных элементов рассматриваемой части массива.
- Рекурсивные вызовы заканчивать, когда останется только один элемент в рассматриваемой части.
- */
- #include "Header.h"
- int main(int argc, char* argv[]) {
- int n;
- SetConsoleOutputCP(1251); // русификация
- if (argc < 3) { // три параметра: путь+имя запущенного файла, текстовый и бинарный файлы
- printf("Мало параметров\nPress any key");
- return 1;
- }
- FILE* fin = fopen(argv[1], "rt"); // открытие текстового файла для чтения
- if (fin == NULL) {
- printf("Error: не удалось открыть файл с исходными данными %s\n", argv[2]);
- printf("Press any key ");
- return 1;
- }
- FILE* fout = fopen(argv[2], "wt"); // открытие текстового файла для записи с созданием
- if (fout == NULL) {
- fclose(fin); // закрытие текстового файла, из которого считывается информация
- printf("Error: не удалось создать двоичный файл %s\n", argv[1]);
- printf("Press any key");
- return 1;
- }
- input_n(n, fin, fout); // считывание размера динамического массива
- int* mass = new int[n]; // выделение памяти под динамический массив
- input_mass(mass, n, fin); // ввод динамического массива
- output_mass(fout, n, mass); // вывод динамического массива
- fclose(fin); // закрытие текстового файла, из которого считывается информация
- fprintf(fout, "\nРезультат вычисления формулы: %d.\n", sum(mass, 1, n));
- delete[] mass; // освобождение памяти
- fclose(fout); // закрытие текстового файла, в который записывается
- printf("Press any key...");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement