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

Напряжение
на контактах принимает значения от 0 до 5 вольт. сколько битов нужно
использовать для дискретизации такого сигнала, чтобы ошибка составляла не более
1%? при дискретизации измеренное напряжение округляется до ближайшего меньшего
значения, которое точно представляется двоичным кодом.

👇
Ответ:
арсений213
арсений213
20.05.2020

Погрешность 1% =1/100 означает, что необходимо более 100 уровней квантования, т.е. 2ⁿ>100, откуда n≥7 (2^7=128) -ответ

4,5(52 оценок)
Открыть все ответы
Ответ:
Kinder2571
Kinder2571
20.05.2020
Для попарно простых чисел a,b,c верно, что:
- если число делится на a и b, оно делится на a×b;
- если число не превышает N, то m×a×b, где m=1,2,3... также не превышает N;
- если при этом число не делится на с, то a×b также не делится на с.

Следовательно, количество чисел, не превышающих N равно N div (a×b), где div - операция деления нацело.
Из этого количества нужно вычесть количество чисел, делящихся на c, т.е. N div (a×b×c)

// PascalABC.NET 3.3, сборка 1634 от 14.02.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('N=');
  var (a,b,c):=ReadInteger3('Введите через пробел a,b,c:');
  Writeln(n div (a*b) - n div (a*b*c))
end.
4,6(86 оценок)
Ответ:
stqz
stqz
20.05.2020
// PascalABC.NET 3.3, сборка 1634 от 14.02.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество судей:');
  Assert(n.InRange(3,5),'Неверное количество судей, разрешено 3,4 или 5');
  var a:=ReadArrReal('Введите оценки:',n);
  if n>3 then Writeln(' ',a.OrderBy(t->t).ToArray[1:n-1].Average:0:4)
  else begin
    var m:=a.Average;
    var b:=a.Select(t->(t,Abs(t-m))).OrderByDescending(t->t[1]).ToArray;
    if Abs(b[0][1]-b[1][1])<1e-5 then Writeln(' ',m:0:4)
    else Writeln(' ',b.Skip(1).Select(t->t[0]).Average:0:4)
    end
end.

2. А в школах часто все еще учат писать так:

var
  a,d:array[1..5] of real;
  n,i,imax,imin,j:integer;
  s,avg:real;

begin
  Write('Количество судей: '); Read(n);
  if (n<3) or (n>5) then
    Writeln('Неверное количество судей, разрешено 3,4 или 5')
  else begin
    Write('Введите оценки: ');
    for i:=1 to n do Read(a[i]);
    if n>3 then begin
      imax:=1; imin:=1;
      for i:=2 to n do
        if a[i]<a[imin] then imin:=i
        else
          if a[i]>a[imax] then imax:=i;
      s:=0;
      a[imax]:=0;
      a[imin]:=0;
      for i:=1 to n do s:=s+a[i];
      avg:=s/(n-2);
      Writeln(' ',avg:0:4)
      end
    else begin
      s:=0;
      for i:=1 to n do s:=s+a[i];
      avg:=s/n;
      for i:=1 to n do d[i]:=Abs(a[i]-avg);
      for i:=1 to n-1 do
        for j:=i+1 to n do
          if d[i]<d[j] then begin
            s:=d[i]; d[i]:=d[j]; d[j]:=s
            end;
      if Abs(d[1]-d[2])<1e-5 then Writeln(' ',avg:0:4)
      else begin
        s:=0;
        for i:=1 to n do
          if a[i]<>a[1] then s:=s+a[i];
        avg:=s/(n-1);
        Writeln(' ',avg:0:4)
        end
      end
    end
end.
4,4(64 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ