famapsix2015
08.09.2021 21:23

Вычислите пропускную канала связи если известно что за 12 секунд было передано 10 файлов каждый размером 64 байт

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
lilikykytik21
28.02.2022 22:26

#include <iostream>

int main() {

const int SIZE = 10;

bool isSence = false;

int sum = 0;

int count = 0;

int arr[SIZE];

for (int i = 0; i < SIZE; i++)

{

 arr[i] = rand() % 20 - 10; // "рандомно" заполняем массив от -10 до 10

 std::cout << arr[i] << "\t"; // выводим массив в консоль

 if (arr[i] >= 0)

  isSence = true;

}

for (int i = 0; i < SIZE; i++)

{

 if ((isSence) && (arr[i] > 0))

  sum += arr[i]; //sum = sum + arr[i];

  count++;

}

if (isSence)

 std::cout << "\nсреднее арифметическое положительных чисел = " << double(sum) / count << std::endl; // явное приведение типов

else

 std::cout << "\nВ массиве нету положительных чисел или нету нулей и/или отрицательных чисел" << std::endl;

return 0;

}

0,0(0 оценок)
Ответ:
сказка500
15.01.2022 05:01
Непростая задача...

const
  n = 16;

type
  R = record
    v: integer;
    p: integer
  end;
  mR = array[1..n] of R;

function SummOfDigits(n: integer): integer;
{ Сумма цифр в трехзначном числе }
begin
  SummOfDigits := (n div 100) + ((n mod 100) div 10) + (n mod 10)
end;

procedure Swp(var a, b: R);
{ Меняет местами элементы a и b }
var
  t: R;
begin
  t.v := a.v; t.p := a.p;
  a.v := b.v; a.p := b.p;
  b.v := t.v; b.p := t.p
end;

procedure Shell(var a: mR; n: integer);
{ сортировка методом Шелла }
var
  i, j, step: integer;

begin
  step := n div 2;
  while step > 0 do
  begin
    for j := n - step downto 1 do
    begin
      i := j;
      while i <= n - step do
      begin
        if a[i].v > a[i + step].v then Swp(a[i], a[i + step]);
        i := i + step
      end
    end;
    step := step div 2
  end
end;

var
  a: array[1..n] of integer;
  b: mR;
  i: integer;

begin
  Randomize;
  Writeln('*** Исходные элементы массива ***');
  for i := 1 to n do
  begin
    a[i] := Random(900) + 100;
    b[i].v := SummOfDigits(a[i]);
    b[i].p := i;
    Write(a[i]:4)
  end;
  Writeln;
  Shell(b, n);
  Writeln('*** Упорядоченные по возрастанию суммы цифр элементы массива ***');
  for i := 1 to n do
  begin
    Write(a[b[i].p]:4)
  end;
  Writeln
end.

Тестовое решение:

*** Исходные элементы массива ***
 862 244 599 379 595 840 551 151 614 383 185 893 131 172 139 256
*** Упорядоченные по возрастанию суммы цифр элементы массива ***
 131 151 244 172 551 614 840 139 256 185 383 862 595 379 893 599
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота