0 / 0 / 0
Регистрация: 27.11.2016
Сообщений: 12
|
|
1 | |
Записать в каждый элемент массива с четным индексом сумму всех предыдущих элементов исходного массива25.04.2018, 19:06. Показов 2815. Ответов 13
Метки нет Все метки)
(
Дан одномерный массив целых чисел А. Создать новый массив В, занеся в каждый
элемент с четным индексом сумму всех предыдущих элементов массива А с четными индексами, в элемент с нечетным – сумму предыдущих элементов массива А с нечетными индексами (в первый и второй элементы заносится значение 0). Подсчет суммы предыдущих реализуется в виде функции.(функции допишу самостоятельно, помогите с телом программы). Ввод/вывод значений осуществляется через printf/scanf (Т.к. я новичок в этом, комментариям к строкам буду только рад)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
25.04.2018, 19:06 | |
Ответы с готовыми решениями:
13
Занести в каждый элемент массива минимальный среди всех предыдущих элементов Каждый элемент массива, кроме первого, заменить суммой всех его предыдущих элементов
Создать массив, каждый элемент которого содержит сумму делителей элементов исходного массива |
81 / 77 / 34
Регистрация: 13.02.2018
Сообщений: 1,347
|
|
25.04.2018, 20:53 | 3 |
0
|
7422 / 5017 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
|
|
26.04.2018, 02:11 | 5 |
0
|
Yetty
|
26.04.2018, 12:44
#7
|
Не по теме: Байт, мне совсем неинтересно вступать с Вами в дискуссии - зря потраченное время. но на этот раз сделаю исключение. ещё раз в с++ нет операторов printf, scanf (для ввода-вывода). функции других языков программирования, в частности printf, scanf для языка С или ещё каких-либо функций для каких-либо других языков обсуждать в разделе С++ как минимум нелогично и дезинформирует авторов тем. прошу Вас мне не отвечать - Ваше мнение мне неинтересно.
0
|
Диссидент
![]() 27180 / 16939 / 3743
Регистрация: 24.12.2010
Сообщений: 38,116
|
|
26.04.2018, 14:38 | 8 |
![]() ![]() Не по теме: Взаимно:) Но на этот раз я тоже делаю исключение. Именно из этих соображений. Хотя в одном вы правы. Таких операторов действительно нет. Ни в С++, ни в чистом С. Добавлено через 6 минут Если кто-то мне не верит (об уважаемом Yetty я не говорю, его упертость безгранична), пусть попробует в плясовой программе применить эти функции. Я пробовал неоднократно с неизменным успехом ![]()
0
|
0 / 0 / 0
Регистрация: 27.11.2016
Сообщений: 12
|
|
30.04.2018, 14:25 [ТС] | 9 |
0
|
0 / 0 / 0
Регистрация: 27.11.2016
Сообщений: 12
|
|
02.05.2018, 15:08 [ТС] | 11 |
Вы меня неправильно поняли! Код работает, но некорректно, так как после 5 элемента нового массива выдаётся бред.
0
|
0 / 0 / 0
Регистрация: 27.11.2016
Сообщений: 12
|
|
04.05.2018, 15:06 [ТС] | 13 |
#include <stdio.h>
#include <conio.h> #include <locale.h> #include <string.h> #include <iostream> #include <fstream> using namespace std; int * Mas(int * A, int * B, int n); void outputMas(const int N, int *mas) { for (int i = 0; i < N; i++) { printf("element[%d]=%d\n", i+1, mas[i]); } } int* inputMas(const int N) { int *mas; mas = new int [N]; if (mas == NULL) return NULL; for (int i = 0; i < N; i++) { printf("element[%d] - ", i+1 ); scanf("%d", &mas[i]); } return mas; } void saveMas(const int n, int * mas ,ostream &f) { f«"Array"«endl; for(int i=0; i<n; i++) f «i«";"«mas[i]«endl; } int * Mas(int * A, int * B, int n) { B[0] = B[1] = 0; for(int i=2; i<n; i++) { B[i] = B[i-2] +A[i]; } return B; } int main () { printf("L.r. 2.3 Zolotov A. gr 6166 variant 8\n"); printf("***************************************\n" ); setlocale(LC_ALL,"RUSSIAN"); int n=0; int *B = inputMas(n);//создание B printf("Введите количество элементов массива А:"); scanf_s("%d",&n); printf("\n"); B=new int [n]; if ( n == NULL ) { printf("Не удалось выделить память"); return 1; } printf("Масcив А состоит из %d элементов введите их:\n",n); int *A = inputMas(n);//ввод массива А if (A == NULL) { printf("memory error"); return 1; } printf("Начальный массив А:\n"); outputMas(n, A); //вывод А B=Mas(A,B,n); printf ("Полученный массив В:\n"); outputMas(n, B);//вывод B ofstream fout("C:\\massiv.csv"); fout«"Array A"«endl; saveMas(n, A, fout); fout«"Array B"«endl; saveMas(n, B, fout); fout.close(); delete [] A; delete [] B; getch(); }
0
|
Диссидент
![]() 27180 / 16939 / 3743
Регистрация: 24.12.2010
Сообщений: 38,116
|
|
04.05.2018, 22:41 | 14 |
А это зачем?
Да, вообще бреда в вашем коде вполне достаточно. Простите, но сегодня мне его разбирать недосуг. Я вам в посте 2 дал основную идею (4 строки). Она по идее должна работать. А уж дальше - дело ваше.
0
|
04.05.2018, 22:41 | |
Помогаю со студенческими работами здесь
14
Установить 0 в 5-м бите всех эл массива целых чисел с четным индексом и 1 - в 4-м бите всех нечетных эл массива. Заменить каждый неположительный элемент массива Х абсолютной величиной элемента массива Y с тем же индексом
сформируйте и выведите на экран массив из n элементов, где каждый элемент массива равен произведению двух предыдущих и его порядкового номера Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |