М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
arun3
arun3
10.07.2022 00:44 •  Информатика

Дан одномерный массив с(-7,3,0,2,-1,4,8,-9,1,6) найти: 1) произведение положительных элементов 2) кол-во отрицательных элементов 3) макс. элемент 4) получить новый массив по правилу: bi= ci+10; если ci> =0 ci^2; если ci> =0 5) сортировка по убыванию (напечать элементы массива в строку)

👇
Ответ:
hakimov676
hakimov676
10.07.2022
Const c:array [1..10] of integer = (-7,3,0,2,-1,4,8,-9,1,6);
var b,d:array [1..10] of integer;
     p,k,max,i,j,tmp:integer;
begin
  p:=1;
  for i:=1 to 10 do
    if c[i] > 0 then p:=p*c[i];
  k:=0;
  for i:=1 to 10 do
    if c[i] < 0 then inc(k);
  d:=c;
  max:=d[1];
  for i:=2 to 10 do
    if c[i] > max then max:=c[i];
  writeln ('Max: ',max);
  writeln ('Kol-vo otriz. elementov: ',k);
  writeln ('Proizvedenie: ',p);
  for i:=1 to 10 do
    if c[i] >= 0 then b[i]:=c[i]+10 else
      if c[i] < 0 then b[i]:=c[i]*c[i];
  writeln ('New massiv: ');
  for i:=1 to 10 do write (b[i],' ');
  writeln;
  for i:=1 to 9 do
    for j:=i+1 to 10 do
      if d[j] > d[i] then
       begin
         tmp:=d[j];
         d[j]:=d[i];
         d[i]:=tmp;
       end; 
  for i:=1 to 10 do write (d[i],' ');
  writeln;
end.
4,8(8 оценок)
Открыть все ответы
Ответ:
аладик2
аладик2
10.07.2022
Если на скорую руку, то так, должно скомпилится :)
#include <iostream>
#include <random>
#include <ctime>
using namespace std;

const int n = 10;
mt19937 gen(time(0));
uniform_int_distribution<> uid(-50, 50);

int main()
{
int x[n], s1, s2;
s1 = s2 = 0;
for (int i = 0; i < n; ++i) {
x[i] = uid(gen);
cout << x[i] << " ";
}
for (int i = 0; i < (n / 2); ++i) {
if (x[i] > 0) {
s1 += x[i];
}
}
for (int i = (n/2); i < n; ++i) {
if (x[i] < 0) {
s2 += x[i];
}
}
cout << endl;
cout << "S1= " << s1 << endl;
cout << "S2= " << s2 << endl;

return 0;
}
4,5(45 оценок)
Ответ:
autosteklo777
autosteklo777
10.07.2022
#include <iostream> //библиотека потоков ввода/вывода #include <vector> //библиотека "вектор", это обертка над динамическим массивом using namespace std; /* * пространство имен, без него компилятор не поймет, * что за функции ты хочешь использовать и что за объекты * создавать, то есть библиотеки, * что подключили мы выше - не заведутся без него. */
//эта функция считает сумму позитивных елементов в векторе(массиве), от и до //указанного индекса, все параметры передаем по ссылке во избежании копирования
// double getSumOfPositivElements(const vector<double>& array, const int& indexFrom, const int& indexTo) // { double sumOfPositivElements = 0; //переменная, что хранит сумму for (int i = indexFrom; i < indexTo; ++i) //цикл от и до указанного индекса { if (0 < array[i]) //условие, если елемент больше нуля { sumOfPositivElements += array[i]; //то приплюсовать его } } return sumOfPositivElements; //вернуть полученный результат суммы }
//работает аналогично, с разницей лиш что суммирует отрицательные елементы
// double getSumOfNegativElements(const vector<double>& array, const int& indexFrom, const int& indexTo) // { double sumOfNegativElements = 0; for (int i = indexFrom; i < indexTo; ++i) { if (0 > array[i]) { sumOfNegativElements += array[i]; } } return sumOfNegativElements; }
//основная функция программы
// int main() // { vector<double> myArray; //создаем вектор(массив), что хранит значения типа double double arraySize; //переменная, что хранит размер вводимого массива int elementBuf; //в этой переменной будем хранить вводимый елемент int arrayMiddlePosition; //индекс середины массива
cout << "Enter array size: "; cin >> arraySize; //вводим размер массива
arrayMiddlePosition = arraySize / 2; //определяем его середину
myArray.reserve(arraySize); //резервируем размер под кол-во елементов
for (int i = 0; i < arraySize; ++i) //цикл инициализации вектора { cout << "Enter element: "; cin >> elementBuf; //вводим текущий елемент myArray.push_back(elementBuf); //вставляем его в вектор cout << "Elements left: " << arraySize - (i + 1); //расчитываем кол-во оставшихся елементов cout << endl << endl; }
cout << endl; cout << "Sum of positiv elements in first array half: "; //выводим сумму положительных елементов в первой половине массива cout << getSumOfPositivElements(myArray, 0, arrayMiddlePosition); cout << endl;
cout << "Sum of negativ elements in first array half: "; //выводим сумму отрицательных елементов в второй половине массива cout << getSumOfNegativElements(myArray, arrayMiddlePosition, myArray.size()); cout << endl;
//останавливаем выполнение программы, что бы посмотреть результат system("pause"); //возращаем значение '0', что значит для системы, что программа завершила работу успешно (без ошибок) return 0; }
4,5(86 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ