Ошибка при удалении массива

столкнулся с такой проблемой при удалении массива программа крашиться . Заранее благодарен.

#include <iostream>
#include <Windows.h>

using namespace std;

void Filling(double *Array, int size) 
{
    for (int i = 1; i <= size; i++)
    {
        cout << "Enter " << i << " element: ";
        cin >> Array[i];
    }
}

void Print(double *Array, int size) 
{
    cout << "Array printing:\n";
    for (int i = 1; i <= size; i++)
        cout << "[" << Array[i] << "]";
}

double* NewArray(int size) 
{
    double* Array = new double[size];
    return Array;
}


void Work(double* rez, double* sum, double * sum1, int size) // Функция которая выполняет задание 
{
    for (int i = 1; i <= size; i++)
    {
        rez[i] = ((sum[i] + sum1[i]) / 2);
    }
}

int main()
{
    double a[20], b[20], c[20];
    int n;
    double *x, *y;

    cout << "Enter n:";
    cin >> n;
    if (n > 20)
    {
        cout << "Error, number n must be less than 20. Please enter a valid number(n<=20): ";
        cin >> n;
    }

    cout << "Working with array a:\n";
    Filling(a, n);
    Print(a, n);

    cout << "\nWorking with array b:\n";
    Filling(b, n);
    Print(b, n);

    cout << "\nWorking with array c:\n";
    Filling(c, n);
    Print(c, n);

    //Создание новых массивов для выполнения задания;
    x = NewArray(n);
    y = NewArray(n);
    
    //Вызов фукции выполняющая задания; 
    Work(x, a, b, n);
    Work(y, b, c, n);

    cout << "\nView of the array x after the task is completed:\n";
    Print(x, n);
    cout << "\nView of the array y after the task is completed:\n";
    Print(y, n);

    delete[]x;
    delete[]y;

    system("PAUSE");

    return 0;
}

Тест


Ответы (1 шт):

Автор решения: Mikhailo
void Filling(double *Array, int size) 
{
    for (int i = 1; i <= size; i++)
    {
        cout << "Enter " << i << " element: ";
        cin >> Array[i];
    }
}

Элементы в массивах нумеруются с 0 - вот вы и выходите за границы массива и портите память! нужно

for (int i = 0; i < size; i++)
→ Ссылка