Задано массив А размера N. Сформировать новый массив С того же размера по следующему правилу: элемент Сn равна сумме элементов массива А с номерами от i до N (то есть при N = 4 С1 =A1+A2+A3+A4;С3 =A2+A3+A4; С3 =A3+A4; C4=A4;).
#include <iostream> using namespace std; int main() { int N; cin >> N; int* a = new int[N]; int* c = new int[N]; for (int i = 0; i < N; i++) { cin >> a[i]; c[i] = 0; } for (int i = 0; i < N; i++) { for (int j = 0; j <= i; j++) { c[i] += a[j]; } } for (int i = 0; i < N; i++) { cout << c[i] << " "; } } Код #include <iostream> using namespace std; int main() { int N; cin >> N; int* a = new int[N]; int* c = new int[N]; for (int i = 0; i < N; i++) { cin >> a[i]; c[i] = 0; } for (int i = 0; i < N; i++) { for (int j = 0; j <= i; j++) { c[i] += a[j]; } } for (int i = 0; i < N; i++) { cout << c[i] << " "; } }
fiebrok, Да, спасибо , только вот как сделать чтобы числа выводились в обратном порядке ( допустим сейчас выводит 1,2,3 а нужно 3,2,1)?
Cycling228, for (int i = n - 1; i >= 0; i--) { cout << c[i] << " " ; } Код for (int i = n - 1; i >= 0; i--) { cout << c[i] << " " ; }
На глазах растешь. Спасибо мама за динамические массивы К элементам динамического массива можно обращаться след образом *(%array_name + i) суть в том что имя массива хранит адресс %name_array[0] и если добавлять i то он перепрыгивает на след элемент. Работает как со статическим, так и с динамическим массивом --- Сообщение объединено с предыдущим 30 ноя 2019 for (int i = n - 1; i >= 0; i--) { cout << c[i] << " " ; } Код for (int i = n - 1; i >= 0; i--) { cout << c[i] << " " ; } --- Сообщение объединено с предыдущим 30 ноя 2019 То есть этот кусок можно записать через cout << *(c + i) << " "; Код cout << *(c + i) << " ";