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

В языке запросов поискового сервера для обозначения логической операции «ИЛИ» используется символ |, а для логической операции «И» - символ &. В таблице приведены запросы и количество найденных по ним страниц некоторого сегмента сети Интернет. Запрос Найдено страниц (в тысячах)
Карандаш&Алмаз 0
Карандаш&Графит 180
Алмаз&Графит 150
Карандаш 540
Алмаз 700
Карандаш | Графит | Алмаз 1600
Какое количество страниц (в тысячах) будет найдено по запросу Графит?Считается, что все запросы выполнялись практически одновременно, так что набор страниц, содержащих все искомые слова, не изменялся за время выполнения запросов.

Показать ответ
Ответ:
BettaPi2003
BettaPi2003
10.04.2023 20:15
Решение в PascalABC.NET 3.4

*** этот файл мы должны назвать nekkit20.pas ***
*** после его компиляции будет создан модуль ***

unit nekkit20;

type
  tra=(string,integer);

function RomeToArab(s:string):integer;
// Перевод римских чисел (не больших MMMCMXCIX) в арабские
begin
  var ar:='IVXLCDM';
  var aa:=Arr(1,5,10,50,100,500,1000);
  var n:=0;
  Result:=0;
  foreach var c in s do
  begin
    var c1:=n;
    n:=aa[Pos(c,ar)-1];
    Result+=n+(n>c1?-2*c1:0)
  end;
end;

function Equal(r:array of string; a:array of integer):sequence of tra;
// Возвращает последовательность кортежей
// из массива римских чисел (массив r),
// для которых есть соответствие в массиве арабских чисел (массив a) 
begin
  foreach var q in r do
  begin
    var n:=RomeToArab(q);
    if a.IndexOf(n)>-1 then yield((q,n))
  end
end;

end.

*** а это другой файл с любым именем, кроме nekkit20 ***
*** он обращается к молулю nekkit20 ***

uses nekkit20;

begin
  var sr:=Arr('DXVIII','LXIII','MII','XIV','LXXXVIII','CXCVI');
  var ar:=Arr(14,98,196,1002,518,64,87);
  var R:=Equal(sr,ar);
  if R.Count=-1 then Writeln('Нет совпадений')
  else
    foreach var t in R do
      Writeln(t[0],' = ',t[1])
end.

*** Контрольный пример ***

DXVIII = 518
MII = 1002
XIV = 14
CXCVI = 196
0,0(0 оценок)
Ответ:
vefremka
vefremka
31.05.2023 21:29

program znanija;

uses CRT;

Var n,k,sum,ch,nch: integer;

sa: real;

M: Array[1..25] of integer;

begin

write('Ведите N: ');readln(n);

for k:=1 to 25 do

begin

M[k]:=random(n);

sum:=sum+M[k];

if (M[k] mod 2 = 0) then

begin

ch:=ch+1;

end else

begin

nch:=nch+1;

end;

end;

sa:=sum/25;

Writeln('Среднее арихметическое - ',sa);

Writeln('Сумма чисел - ', sum);

Writeln('Количество чётных - ', ch);

Writeln('Количество не чётных - ', nch);

writeln('--Числа--');

for k:=1 to 25 do

begin

Write(m[k],', ');

end

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота