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

Реши задан числовой массив, состоящий из 14 элементов. найдите произведение всех отрицательных элементов, больших минимального

👇
Ответ:
1. Современный вариант

// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
const
  n=14;
begin
  var a:=ArrRandom(n,-50,50); a.Println;
  var min:=a.Min;
  var b:=a.Where(x->(x>min) and (x<0));
  if b.Count>0 then Writeln('Искомое произведение равно ',
    b.Aggregate(1.0,(p,x)->p*x))
  else Writeln('Нет отрицательных чисел, меньших минимального')
end.

Тестовое решение:
44 -35 -10 43 -25 -32 -32 -43 4 -50 29 -7 42 3
Искомое произведение равно -2696960000

2. Школьный вариант

// PascalABC.NET 3.1, сборка 1213 от 04.04.2016
const
  n=14;
var
  i,min,k:integer;
  a:array[1..n] of integer;
  p:real;
begin
  Randomize;
  min:=100; // любое, большее максимального 50
  for i:=1 to n do begin
    a[i]:=Random(101)-50;
    Write(a[i],' ');
    if a[i]<min then min:=a[i]
    end;
  Writeln;
  p:=1.0;
  k:=1;
  for i:=1 to n do
    if (a[i]>min) and (a[i]<0) then begin
      p:=p*a[i]; Inc(k)
      end;
  if k>0 then Writeln('Искомое произведение равно ',p)
  else Writeln('Нет отрицательных чисел, меньших минимального')
end.

Тестовое решение:
40 49 27 -14 -34 -45 -41 -23 50 1 40 -18 -27 -20
Искомое произведение равно -4362996960
4,6(31 оценок)
Открыть все ответы
Ответ:
Тохо2004
Тохо2004
07.10.2021
#include <iostream>
using namespace std;

int main()
{
    double S = 0;
    int N = 0, K = 0, A;
    cout <<"K = ",cin >> K;
    for(int i = 0; i < K; i++)
    {
        cout <<"Nabor "<<i<<": ";
        S = 0;
        N = 0;
        cin >> A;
        while(A != 0)
        {
            S+=A;
            N++;
            cin >> A;
        }
        if (N!=0) cout <<"Sr = "<<S/N<<"\n";
        else cout <<"Na noll delit' nel'zja!\n";
    }
    return 0;
}
4,6(41 оценок)
Ответ:
vikaadvova
vikaadvova
07.10.2021
#include <iostream>
#include <iomanip>
#include <ctime>

using namespace std;

int main()
{
    setlocale(LC_ALL, "RUSSIAN");
    int arr[] = { 2, 5, 0, 4, 7, 0, 3, 0, 0, 1 };
    int max = arr[0];
    int maxind = 0;
    for (int i = 0; i < 10; i++)
    {
        cout << arr[i] << " ";
        if (max < arr[i])
        {
            max = arr[i];
            maxind = i;
        }
    }
    cout << endl << "Максимальный элемент: " << max << endl;
    cout << "Номера элементов равных нулю, стоящих после максимального: ";
    for (int i = maxind; i < 10; i++)
        if (arr[i] == 0)
            cout << i << " ";
    cout << endl;
    system("pause");
}
4,5(82 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ