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

Аппарат семафоров в C/Linux Добрый день. Возникла проблема понятием задания. 4 дочерних ПРОЦЕССА выполняют циклы, в которых обрабатывается текст. Далее результаты помещаются в очередь сообщений и родительский выводит готовый результат. Вот такое задание в кратце. Также в конце условия задачи есть предложение "Решить задачу с использованием аппарата семафоров.", из-за которого у меня возник вопрос. Что подразумевается под словосочетание "Аппарат семафоров"? Использование только там, например, semget, semop и т. д.? Или подразумевается использование, например, мьютекса, критической секции?

👇
Открыть все ответы
Ответ:
HoneyAmy
HoneyAmy
13.11.2020
Программа в системе PascalABC.Net (время выполнения около 2с)
var
  n1,n2,n3:int64;

function IsPrime(n:Int64):Boolean;
var
  p:Int64;
  found:Boolean;
begin
  case n of
  1:Isprime:=False;
  2:IsPrime:=True;
  else begin
    found:= (n Mod 2 = 0);
    p:=3;
    while (not found) and (sqr(p)<=n) do
      begin found:=(n Mod p = 0); p:=p+2 end;
    IsPrime:=(not found) or (p = 2)
    end
  end
end;

procedure Fib();
begin
  n3:=n1+n2; n1:=n2; n2:=n3
end;
 
var
  i,k:integer;
begin
  n1:=0; n2:=1; k:=0;
  Writeln('Простые среди первых 45 чисел Фибоначчи');
  for i:=3 to 45 do
  begin
    Fib; if IsPrime(n3) then begin Write(n3,' '); Inc(k) end
  end;
  Writeln(#13#10,'Найдено простых чисел: ',k)
end.
   
Результат выполнения программы:
Простые среди первых 45 чисел Фибоначчи
2 3 5 13 89 233 1597 28657 514229 433494437
Найдено простых чисел: 10
4,5(11 оценок)
Ответ:
mikstura71
mikstura71
13.11.2020

76

Объяснение:

i = 1, arr[1] = 1 * 7 + 3 = 7 + 3 = 10

i = 2, arr[2] = 2 * 7 + 3 = 14 + 3 = 17

i = 3, arr[3] = 3 * 7 + 3 = 21 + 3 = 24

i = 4, arr[4] = 4 * 7 + 3 = 28 + 3 = 31

i = 5, arr[5] = 5 * 7 + 3 = 35 + 3 = 38

i = 6, arr[6] = 6 * 7 + 3 = 42 + 3 = 45

i = 7, arr[7] = 7 * 7 + 3 = 49 + 3 = 52

i = 8, arr[8] = 8 * 7 + 3 = 56 + 3 = 59

i = 9, arr[9] = 9 * 7 + 3 = 63 + 3 = 66

i = 10, arr[10] = 10 * 7 + 3 = 70 + 3 = 73

10 / 4 = 2,5

17 / 4 = 4,25

24 / 4 = 6

31 / 4= 7,75

38 / 4 = 9,5

45 / 4 = 11,25

52 / 4 = 13

59 / 4 = 14,75

66 / 4 = 16,5

73 / 4 = 18,25

s = 0 + 24 + 52 = 76

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