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

Книга содержит 145 страниц. На каждой странице 37 строк. В каждой строке 57 символов (включая пробелы). Найти информационный объём текста, считая, что каждый символ кодируется одним байтом

👇
Ответ:
Gushkaa
Gushkaa
27.10.2022

1)Количество символов в книге:

142х32х56=254 464 символов

2)Так как один символ весит 1 байт, информационный объем книги равен

254 464 байт

3)Переведем в более крупные единицы:

254 464:1024=248,5 Кб или 248,5:1024=0,24 Мб

Объяснение

4,4(20 оценок)
Открыть все ответы
Ответ:
Арнур1234
Арнур1234
27.10.2022
Представим, что мы знаем ответ на вопрос "чему равна сумма всех выписанных чисел при выполнении вызова F(n)" для всех n < k. Попробуем понять, как найти ответ для n = k.

Что делает F(n)? Читаем текст программы: сначала выводит n, а потом (если n > 0) запускает F(n - 1) и F(n - 3). Обозначим S(n) - сумму всех чисел после вызова F(n), тогда (при n > 0) 
S(n) = n + S(n - 1) + S(n - 3)

Для неположительных n получаем, что S(n) = n (т.к. F(n) просто выводит n и завершает работу, не запуская никаких других F).

Остается только расписать, чему равно S(5)...
S(-2) = -2
S(-1) = -1
S(0) = 0
S(1) = 1 + S(0) + S(-2) = 1 + 0 - 2 = -1
S(2) = 2 + S(1) + S(-1) = 2 - 1 - 1 = 0
S(3) = 3 + S(2) + S(0) = 3 + 0 + 0 = 3
S(4) = 4 + S(3) + S(1) = 4 + 3 - 1 = 6
S(5) = 5 + S(4) + S(2) = 5 + 6 + 0 = 11

ответ. 11.



При исследовании рекурсивных алгоритмов бывает полезно понять, сколько вызовов функций делает программа (например, если рисовать дерево вызовов, это будет показывать количество "стрелочек" на этом дереве). Представим себе, что мы стали выполнять алгоритм на бумаге, попробуем понять, сколько чисел придется выписывать.
Если #(N) - число вызовов процедуры F при наивном вычислении F(N). Понятно, что #(N) = #(N - 1) + #(N - 3) (при N <= 0 #(N) = 1). Не задаваясь целью получить точную формулу для #(N), получим только оценку (на самом деле, весьма показательную).
Очевидно, что #(N - 1) >= #(N - 3), тогда #(N) >= 2 * #(N - 3).
Так как #(0) = 1, то #(3) >= 2 * #(0) = 2, #(6) >= 2 * #(3) >= 2^2, #(9) >= 2 * #(6) >= 2^3, и вообще #(3N) >= 2^N
Отсюда можно предположить, что #(N) растет не медленнее, чем 2^(N/3) >= 1.25^N. Если 1,25^N кажется медленно растущей функцией - это вовсе не так, для N = 100 (это немного, наверно?) получим число, большее миллиарда. Так что если не запоминать промежуточные результаты, результат будет считаться ооочень долго. S(N) также растет быстро, но это уже другая проблема.
4,8(72 оценок)
Ответ:
danilkudo423
danilkudo423
27.10.2022
// PascalABC.Net 3.0, сборка 1064
// "Классическое" решение
const
  nn=20;

type
  SqMatrix=array[1..nn,1..nn] of integer;

function AvgRow(row,cols:integer; a:SqMatrix):double;
var
  j,s:integer;
begin
  s:=0;
  for j:=1 to cols do s:=s+a[row,j];
  AvgRow:=s/cols
end;

var
  i,j,n,k:integer;
  cavg:double;
  M:SqMatrix;
 
begin
  Write('Количество строк (столбцов) в матрице: '); Read(n);
  Write('Ограничение для среднего арифметического: '); Read(cavg);
  Randomize;
  // Инициализация и вывод исходной матрицы
  Writeln('*** Сгенерированная матрица ***');
  for i:=1 to n do begin
    for j:=1 to n do begin
      M[i,j]:=Random(51)-20;
      Write(M[i,j]:4)
    end;
    Writeln
  end;
  // Собственно, решение задачи
  k:=0;
  for i:=1 to n do
    if AvgRow(i,n,M)<cavg then Inc(k);
  Writeln('Количество отобранных строк равно ',k)
end.

Тестовое решение:
Количество строк (столбцов) в матрице: 10
Ограничение для среднего арифметического: 2
*** Сгенерированная матрица ***
  -5  10  29  25  23   0 -17   5 -19  -4
   4 -10  -4  13   3 -15  17  16  -4 -18
  -6  24  -4  19 -16 -15  11  -4  14  -3
  -7  -5 -10  -2 -17  19 -16  -2   4 -10
  26  25  29  -8  27  20  13 -10  -9   9
  -3 -11  18 -12   0   2  -7 -10  20  17
  19  18  22  14 -18 -11 -20  28   9  15
 -19  -1  -9 -15 -13  -1  25 -16  22  -5
   3   1 -16 -16 -20 -17   8 -18  28  12
   5  24   8  18   2 -12 -17  -6 -11  18
Количество отобранных строк равно 5

Второе решение дано для демонстрации возможностей современного Паскаля. Оно не подходит в качестве ответа в той части, что не использует отдельную функцию для нахождения среднего. По лаконичности записи оно вполне может соперничать с постепенно набирающим популярность языком, как Python

// PascalABC.Net 3.0, сборка 1064
// Решение, использующее возможности версии 3.0

var
  n: integer;
  cavg: double;
  M: array of array of integer;

begin
  Write('Количество строк (столбцов) в матрице: '); Read(n);
  Write('Ограничение для среднего арифметического: '); Read(cavg);
  // Инициализация и вывод исходной матрицы
  Writeln('*** Сгенерированная матрица ***');
  SetLength(M, n);
  for var i := 0 to n - 1 do
    begin M[i] := ArrRandom(n, -25, 25); M[i].Println end;
  // Собственно, решение задачи
  var k:=M.Select(x->x.Average < cavg).Count(x->x=True);
  Writeln('Количество отобранных строк равно ', k)
end.

Тестовое решение:
Количество строк (столбцов) в матрице: 10
Ограничение для среднего арифметического: 2
*** Сгенерированная матрица ***
-23 -13 13 20 20 -6 22 9 15 -12
8 12 20 -12 -10 16 -1 10 13 1
17 -16 -8 20 1 24 9 -8 4 15
12 7 -9 21 13 11 15 -25 -10 -24
1 3 16 15 -3 -17 23 -12 -15 4
8 -2 10 -17 23 19 20 19 -7 21
11 5 -21 25 1 -24 -4 24 0 5
-24 -1 -6 12 -25 -11 -6 2 -2 -7
-25 -5 -19 -25 -18 -11 23 -18 24 20
16 22 7 -6 -10 22 -2 16 -12 -4
Количество отобранных строк равно 4
4,4(46 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ