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

На c++: в одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество элементов массива, больших c 2)произведение элементов массива, расположенных после максимального по модулю элемента. преобразовать массив таким образом, чтобы сначала располагались все отрицательные элементы, а потом - все положительные (элементы, равные 0, считать положительными)

👇
Ответ:
мивое
мивое
28.03.2022
#include <iostream>
#include <cstdio>
#include <cmath>

int main()
{
//Объявление переменных, освобождение памяти под динам.массив
int i=0,n=0,c=0,max=0,k=0;
double p=1.0;
cin>>n,c;
double *massop = new double[n];
double *mass = new double[n];

//узнаём числа>c, а заодно и значение максимума по модулю
for ( i = 0; i < n; i++)
{
cin>>massop[i];
if (massop[i]>c) k++;
if (fabs(massop[i])>max||fabs(massop[i])=max) max=fabs(massop[i]);
}

cout<<k<<'" элементов больше с"<<endl;

//Находим первый максимальный эл-т
//больше с  не нужно, возьму под другие нужды
for (i = 0; i<n; i++)
{
if (fabs(massop[i])=max) break;
}
c=i;

//Начиная с этого элемента находим произведение последующих
for (i = c; i<n; i++)
{
p=p*massop[i];
}

cout<<"Произведение чисел после максимального по модулю элемента: "<<p<<endl;

//и снова с на левые цели
c=0;
//заполняем начало массива mass отрицательными элементами из massop
for (i=0;i<n;i++)
{
if (massop[i]<0) mass[c]=massop[i];
c++;
}
//а конец-положительными
for (i=0;i<n;i++)
{
if (massop[i]>0||massop[i]=0) mass[c]=massop[i];
c++;
}
//выведем, что вышло после упорядочивания
for (i=0;i<n;i++)
{
cout<<mass[i]<<'/n';
}
}

/*Вот и всё, коллега-сишник :D*/
4,6(57 оценок)
Открыть все ответы
Ответ:
dianag141517
dianag141517
28.03.2022
Const
  s0=100000; { первоначальная сумма в копейках }
  p=0.02; { величина, равная 1/100 от ежемесячного процента }
var
  s,sp:longint;
  mes:integer;
begin
  { все расчеты ведем в копейках }
  mes:=0; s:=s0;
  while sp<=30*100 do
    begin mes:=mes+1; sp:=Round(s*p); s:=s+sp end;
  Writeln('Месяц ',mes,', сумма процента ',sp/100:0:2,' > 30');
  mes:=0; s:=s0;
  while s<=1200*100 do begin mes:=mes+1; s:=s+Round(s*p) end;
  Writeln('Месяц ',mes,', сумма вклада ',s/100:0:2,
      ' > 1200');
end.

Результат выполнения программы:
Месяц 22, сумма процента 30.31 > 30
Месяц 10, сумма вклада 1218.98 > 1200
4,5(83 оценок)
Ответ:
Айла2010
Айла2010
28.03.2022
Const n=10;
var i,s,k:integer;
      a:array [1..n] of integer;
begin
 for i:=1 to n do begin
                           // 1) //случайные числа
                            a[i]:=random(20); //используя функцию randomize генерируем случайные числа
                            write(a[i],' ');
                           //2)натур. ряд чисел
                            a[i]:=i;    //присваиваем элементу массива его номер 
                            write(a[i],' ');
                           //3)заполнить с клав.
                            write('введите ',i,' число массива ');
                            readln(a[i]); 
                           //4) сред. ариф. кратн 2
                            a[i]:=random(20);    //создадим рандомный массив 
                            write(a[i],' ');    // выведем на экран
                            if a[i] mod 2 = 0 then begin //если кратно 2, то
                                                               s:=s+a[i];    //считаем сумму всех чисел кратных 2
                                                               k:=k+1;      // считаем кол-во таких чисел
                                                              end; 
                          end;
//2 стоки ниже относятся только к 4 пункту
  writeln;
  writeln('среднее арифметическое элементов, кратных 2 = ',s/k);
//ниже относится к ручному вводу
 writeln;
 for i:=1 to n do write(a[i],' ');
end.
как-то так) старался некоторые моменты пояснять комментариями
4,5(5 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ