В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия

Сколько раз нужно подбрасывать монету, чтобы три раза подряд выпал орел или решка? сколько раз в среднем нужно ее подбросить, чтобы получить такой результат?

на эти вопросы мы постараемся ответить. вам нужно написать программу, которая имитирует подбрасывание монеты. для решения этой вам понадобится генератор случайных чисел. считайте, что монета является "правильной", то есть вероятность выпадения орла или решки одинаковая.

вам необходимо:

1. сымитировать подбрасывание монеты до тех пор, пока три раза подряд не выпадет орел или решка

2. повторить такой опыт 10 раз

3. посчитать, сколько бросков в среднем нужно сделать до появления последовательности из трех орлов или решек

условимся считать, что 0 обозначает выпадение орла (heads), а 1 выпадение решки (tails)

используйте генератор целых чисел.

вывод программы должен выглядеть следующим образом:

каждая строка представляет собой одну серию опытов, где обозначена последовательности выпадения, а затем общее число бросков

в последней строке программы должно быть выведено среднее число бросков до выпадения последовательности из трех орлов или решек.

вам не нужно подключать модуль random, это уже сделано за вас.

Показать ответ
Ответ:
Гениально1
Гениально1
27.03.2021 22:25
Uses graphabc;
var
    i: integer;
    x, y: real;

function f(x: real): real;
begin
    f := sqrt(3 * x);
end;

begin
    Line(0, 240, 620, 240);
    Line(300, 0, 300, 900);
    TextOut(310, 10, 'y=sqrt(3x)');
    
    x := 0;
    repeat
        x := x + 0.03;
        y := f(x);
        SetPixel(round(300 + 10 * x), round(240 - 10 * f(x)), clGreen);
    until 300 + 10 * x > 620
end.

с апгрейдом

uses graphabc;
const
    scale = 20;

var
    i: integer;
    x, y: real;

function f(x: real): real;
begin
    if x < 0 then
        f := 0
    else
        f := sqrt(3 * x);
end;

begin
    Window.Init(0, 0, 1000, 1000, clMoneyGreen);
    Window.CenterOnScreen;
   
    Line(0, Window.Height div 2, Window.Width, Window.Height div 2);
    Line(Window.Width div 2, 0, Window.Width div 2, Window.Height);
    TextOut(Window.Width div 2 + 5, 10, 'y=sqrt(3x)');
   
    x := -1;
    repeat
        SetPixel(round(Window.Width div 2 + scale * x), round(Window.Height div 2 - scale * f(x)), clRed);
        x := x + 0.03;
    until scale * x > Window.Width div 2
end.
0,0(0 оценок)
Ответ:
Дмитртй11
Дмитртй11
08.08.2021 00:20
// PascalABC.Net 3.0, сборка 1066

const
  n=5;
var
  a:array[1..n,1..n] of integer;
  x:array[1..n] of double;
  i,j,k:byte;
begin
  Randomize;
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    for j:=1 to n do begin
      a[i,j]:=Random(51)-25;
      Write(a[i,j]:4)
      end;
    Writeln
  end;
  Writeln('*** Массив x ***');
  for j:=1 to n do begin
    x[j]:=0; k:=0;
    for i:=1 to n do
      if a[i,j] mod 2=0 then begin
        x[j]:=x[j]+a[i,j]; Inc(k)
      end;
    if k>0 then x[j]:=x[j]/k;
    Write(x[j]:0:5,' ')
    end;
  Writeln
end.

Тестовое решение:
*** Исходный массив ***
 -10  18  -8 -15   5
 -21 -18   6  -2   9
  -7  22  -4   3  14
  21  16 -10 -18  -9
  17   3 -14 -18  12
*** Массив x ***
-10.00000 9.50000 -6.00000 -12.66667 13.00000
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота