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

Поместить в хеш таблицу 7 книг методом средних квадратов (по
названию книги). быть готовым объяснить принцип работы метода.

👇
Ответ:
kristaile
kristaile
26.02.2020

ответ:

генераторов случайных чисел уходит корнями к одному из самых известных имен в теории вычислительных машин - джону фон нейману (john von neumann). в 1946 году он предложил следующую схему генерации последовательностей случайных чисел: возьмите n-значное число, возведите его в квадрат и из результата, выраженного в виде 2n-значного числа (при необходимости дополненного слева до 2n-значного), возьмите средние n цифр. это и будет следующее число в последовательности. так, например, если n равно 4, в качестве начального числа можно взять 1234. следующими числами в последовательности будут 5227, 3215, 3362, 3030, 1809 и т.д. описанный метод известен под названием метода средних квадратов (middle-square method).

листинг 6.1. метод средних квадратов в действии

var

midsqseed : integer;

function getmidsquarenumber : integer;

var

seed : longint;

begin

seed : = longint(midsqseed) * midsqseed;

midsqseed : = (seed div 100) mod 1;

result : = midsqseed;

end;

к сожалению, с алгоритмом связано несколько больших проблем, которые исключают его применение в практических целях. вернемся к нашему примеру с четырехзначными случайными числами. предположим, что в последовательности нам встретилось число меньше 10. при вычислении квадрата будет получено число меньше 100. это, в свою очередь, означает, что следующим числом в последовательности будет 0 (поскольку мы возьмем четыре средние цифры из числа хх). это число также меньше 10, следовательно, все последующие числа в последовательности будут равны 0. вряд ли кто-то может сказать, что такая последовательность будет случайной! (если в качестве начального взять число 1234, то до попадания в 0 последовательность будет содержать 55 чисел.) кроме того, если начать, например, с числа 4100, последовательность будет состоять из 8100, 6100, 2100, 4100 и так до бесконечности. существуют и другие патологические последовательности, на которые легко натолкнуться и трудно избежать.

метод средних квадратов позволяет легко генерировать случайные числа на основе 16-битного целого числа. возведение 16-битного числа в квадрат дает 32-битное число. затем для вычисления средних 16-бит нужно всего лишь сдвинуть полученный результат на 8 бит вправо и выполнить операцию and с числом $. тем не менее, даже в этом случае алгоритм средних квадратов будет давать бесполезные результаты. после 50-60 случайных чисел алгоритм приводит к генерации нулей или попадает в цикл. то же самое происходит и для 32-битных чисел. в общем случае, несмотря простоту, применение метода средних квадратов вследствие его недостатков предельно ограничено.

объяснение:

4,4(78 оценок)
Открыть все ответы
Ответ:
polli54
polli54
26.02.2020

В свойстве формы нужно создать метод Form1_Click как на скрине в приложении

Объяснение:

using System;

using System.Windows.Forms;

namespace WindowsFormsApp1

{

   public partial class Form1 : Form

   {

       private const int ButtonCount = 100; // Количество кнопок

       private Button[] ButtonArray = new Button[ButtonCount];

       public Form1()

       {

           InitializeComponent();

           PlaceButtons();

       }

       private void PlaceButtons()

       {

           int x = 10;

           int y = 10;

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

           {

               ButtonArray[i] = new Button();

               ButtonArray[i].Parent = Control.FromHandle(this.Handle);

               ButtonArray[i].SetBounds(x, y, ButtonArray[i].Width, ButtonArray[i].Height);

               ButtonArray[i].Click += Some_Button_Click;

               ButtonArray[i].Text = "Кнопка " + (i + 1).ToString();

               ButtonArray[i].Name = "B" + i.ToString();

               ButtonArray[i].Show();

               x += ButtonArray[i].Width + 10;

               if ((x + ButtonArray[i].Width ) > this.Width) { y = y + ButtonArray[i].Height + 10; x = 10; }

           }

       }

       private void Some_Button_Click(object sender, EventArgs e)

       {

           //throw new NotImplementedException();

           int ButtonNumber = int.Parse(((Button)sender).Name.Substring(1));

           if (ButtonNumber == ButtonCount - 1) return;

           ButtonArray[ButtonNumber + 1].Enabled = false;

       }

       private void Form1_Click(object sender, EventArgs e)

       {

           for (int i = 0; i < ButtonCount; i++) ButtonArray[i].Enabled = true;

       }

   }

}


Разместите на форме ряд кнопок (Button). Создайте обработчики события нажатия на данные кнопки, кото
Разместите на форме ряд кнопок (Button). Создайте обработчики события нажатия на данные кнопки, кото
4,6(67 оценок)
Ответ:
tetyanavasil
tetyanavasil
26.02.2020

Объяснение:

Робототехника — отдел прикладной науки, который занимается проектированием, производством и применением автоматизированных технических систем

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

Первого действующего человекоподобного робота создал французский изобретатель Жак де Вокансон в 1737 году. Андроид представлял из себя человека в натуральную величину на флейте.

Преимущества использования роботов. Снижаются производственные затраты: быстрый возврат инвестиций в робототехнику превышает первоначальные затраты на отладку оборудования. 

4,4(42 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ