Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 04.05.2020
Сообщений: 5

Сформировать массив из положительных элементов исходного массива, имеющих четный индекс

04.05.2020, 14:04. Показов 2651. Ответов 2

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста, перевести программу с Pascal на C++

Условие задачи:

Дан массив A вещественного типа, содержащий 20 положительных и отрицательных элементов. Сформировать массив B из положительных элементов массива A, имеющих четный индекс. Найти сумму квадратов элементов нового массива.

Описание переменных:

j - счетчик количества элементов массива B;
sum - сумма квадратов элементов массива B.

Алгоритм решения задачи:

Сразу будем "просматривать" только четные элементы массива A. Для этого переменной i сначала присвоим значение 2 (первый четный элемент - второй) и затем в цикле будем увеличивать ее значение на 2.

Если элемент массива A с четным индексом (i) больше нуля, то увеличим счетчик элементов массива B, по этому индексу присвоим его массиву B.

Для подсчета суммы квадратов элементов массива B присвоим переменной sum сначала значение 0, затем добавим к ней квадрат каждого элемента.





Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
const n = 20;
var 
    arrA, arrB: array[1..n] of real;
    i, j: byte;
    sum: real;
 
begin
    randomize;
    writeln('Array A:');
    for i:=1 to n do begin
        arrA[i] := random() * 10 - 5; // (-5;+5)
        write(arrA[i]:6:2);
        if i mod 10 = 0 then writeln;
    end; 
 
    i := 2;
    j := 0;
    sum := 0;
    while i <= n do begin
        if arrA[i] > 0 then begin
            j := j + 1;
            arrB[j] := arrA[i];
            sum := sum + arrB[j] * arrB[j];
        end;
        i := i + 2;
    end;
 
    writeln('Array B:');
    for i:=1 to j do write(arrB[i]:6:2);
    writeln;
    writeln('sq.sum = ', sum:5:2);
 
end.

Пример выполнения программы:

Pascal
1
2
3
4
5
6
Array A:
 -1.49  0.50 -4.70 -1.08 -4.95  1.14 -2.46  2.61 -3.14  4.35
  0.52  1.24  4.29 -2.39 -3.95 -4.91 -4.35  3.60  2.50 -0.21
Array B:
  0.50  1.14  2.61  4.35  1.24  3.60
sq.sum = 41.78
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.05.2020, 14:04
Ответы с готовыми решениями:

Сформировать массив B из положительных элементов массива A, имеющих четный индекс
Задача : Дан массив A вещественного типа, содержащий 20 положительных и отрицательных элементов. Сформировать массив B из положительных...

Сформировать массив В из положительных элементов массива A, имеющих четный индекс.
Дан одномерный A целого типа, содержащий 10 положительных и 10 отрицательных элементов. Сформировать массив В из положительных ...

Сформировать массив B из положительных элементов массива A, имеющих четный индекс
нужно в пхп (( Дан массив A вещественного типа, содержащий 20 положительных и отрицательных элементов. Сформировать массив B из...

2
7804 / 6568 / 2988
Регистрация: 14.04.2014
Сообщений: 28,705
04.05.2020, 14:34
А сам что сделал?
0
Модератор
Эксперт С++
 Аватар для zss
13769 / 10962 / 6491
Регистрация: 18.12.2011
Сообщений: 29,238
04.05.2020, 14:41
Wield, незачем такое переводить с Паскаля.
Вот есть специально для таких задач образец в разделе ВАЖНЫЕ ТЕМЫ, который Вы уже внимательно посмотрели:
Образцы (шаблоны) программ для типовых задач
Заменяете функцию
C++
1
2
3
4
5
6
7
8
9
10
11
// пример обработки - массив из положительных элементов, имеющих четный индекс
int Work(int* M,int n,int* res)
{
    int j=0;
    for(int i=0;i<n;i+=2)
    {
        if(M[i]>0)
          res[j++]=M[i];
    }
    return j; // возвращаем к-во элементов в массиве res
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.05.2020, 14:41
Помогаю со студенческими работами здесь

Сформировать массив из положительных элементов другого массива, имеющих четный индекс
Помогите решить: Дан массив A вещественного типа, содержащий 20 положительных и отрицательных элементов. Сформировать массив B из...

Вычислить сумму элементов матрицы, имеющих четный индекс и произведение положительных элементов (Excel)
Private Sub CommandButton1_Click() Dim m(15) As Integer Dim i, c, n As Integer Dim t As String t = &quot;&quot; c = 0 m =...

Выдать на экран кол-во всех нулевых элементов и произведение положительных элементов, имеющих чётный индекс.
Помогите написать программу на Borland Pascal и создать алгоритм… плиз?? Создать числовой массив А выдать на экран кол-во всех нулевых...

Сформировать массив из 10 целых чисел. Найти сумму элементов массива, индекс которых четный
Сформировать массив из 10 целых чисел. Найти сумму элементов массива, индекс которых четный.

Произведение и количество отрицательных элементов массива, имеющих четный индекс
Всем привет! Помогите пожалуйста мне нужно найти произведение и количество отрицательных элементов массива В(12), имеющих четный индекс.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru