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

Задача 3 Всемирно известная компания "Cucumber" выпускает мобильные гаджеты и устройства для «умного дома». Но время идёт, и компания прекращает поддерживать старые устройства.
Словари mobile_devices и home_devices содержат полный перечень техники производства "Cucumber".
Множество not_supported_devices хранит названия устройств, поддержка которых прекращена.
Ваша программа должна составить словарь result_supported, в котором будут перечислены все устройства, поддержка которых не прекратилась; в словаре должны быть и устройства для «умного дома», и мобильные гаджеты.
Этот словарь будет выведен на печать.
Программа должна напечатать примерно такую строку:
{'cucuLot': 2011, 'cucuMonitor': 2020, 'cucuEar': 2018, ...}
Ход работы:
создать из ключей двух словарей единый сет all_devices;
создать сет result_devices, содержащий разность сетов all_devices и not_supported_devices; это будет перечень названий устройств, поддержка которых не прекращена;
перебрать сет result_devices в цикле: for device in result_devices:
Для каждого элемента device провести проверку: есть ли в словаре mobile_devices элемент с ключом device. Если есть — то добавить элемент словаря mobile_devices[device] в итоговый словарь result_supported.
Провести такую же проверку для словаря home_devices, и добавить обнаруженные элементы home_devices[device] в словарь result_supported.
А что в коде?
Функция union_devices() должна получить полный перечень названий всех устройств вернуть его как объект типа set.
Функция difference_device() должна найти разницу между полным перечнем всех устройств и сетом not_supported_devices; функция должна вернуть сет, в котором содержатся отличающиеся элементы двух исходных сетов.
Функция is_supported() должна проверить, есть ли в словаре mobile_devices или в словаре home_devices ключ, переданный в аргументе; если есть — добавить в результирующий словарь элемент с этим ключом.

программа(https://paste.ofcode.org/ZQZJzgszuCe7ms6czgFaWX)

Показать ответ
Ответ:
dgrigoref
dgrigoref
19.06.2022 11:18
Программа, которая использует два массива

var 
c, a: array[1..20] of integer; 
i: integer;
begin 
write('Первый массив '); 
for i := 1 to 20 do   begin   
c[i] := i * (-5);   
write(c[i], ' '); 
end; 
writeln; 
write('Преобразованный массив '); 
for i := 1 to 20 do   begin   
a[i] := c[20 - i + 1];   
write(a[i], ' '); 
end;  
end.

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

var 
c: array[1..20] of integer; 
i: integer;
begin  write('Первый массив '); 
for i := 1 to 20 do   begin   
c[i] := i * (-5);   
write(c[i], ' '); 
end; 
writeln; 
write('Преобразованный массив '); 
for i := 20 downto 1 do  write(c[i], ' '); 
end.

Обе программы работают!
0,0(0 оценок)
Ответ:
vikadmitrieva5
vikadmitrieva5
12.06.2022 00:44
Const 
n=5;

Var
 ar:array[1..n] of integer;
 ar2:array[1..n] of integer;
 i,k:integer;

 function prost(a:integer):boolean;
 var i:integer;
 b:boolean;
  begin
  b:=true;
   for i:=2 to a div 2 do
    if a mod i=0 then
     begin;
      b:=false;
      break;
     end;
   if a=1 then b:=false;
  prost:=b;
 end;

  begin;
 randomize;
 k:=0;
  for i:=1 to n do
   begin;
    ar[i]:=random(101);
    write(ar[i]:4);
   end;
  writeln;
  for i:=1 to n do
  if prost(ar[i]) then
   begin;
    inc(k);
    ar2[k]:=ar[i];
    write(ar2[k]:4);
   end;
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота