моюр
24.03.2020 00:20

Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр. заменить (v, w)

нашлось (v)

Дана программа для исполнителя Редактор:

НАЧАЛО

ПОКА нашлось (4444) ИЛИ нашлось (7777)

ЕСЛИ нашлось (4444)

ТО заменить (4444, 77)

ИНАЧЕ заменить (7777, 44)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Какая строка получится в результате применения приведённой выше программы к строке, состоящей из 123 идущих подряд цифр 4? В ответе запишите полученную строку.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
malyshkala1234
31.10.2021 18:57
Попробуй Program PascalGuru; var s:string;    f,t:text;
function preobr(s:string):string;var i,j,p,n,sered:integer;    gl,zp,slovo:string;    m:array [1..80] of string;beginzp:='!?*,.'; gl:='аоуыэяеёюи';  p:=pos(' ',s); i:=0;        repeat        inc(i);        slovo:=copy(s,1,p-1);        m[i]:=slovo;        delete(s,1,p);        p:=pos(' ',s);        until p=0;        n:=i+1;        m[n]:=s;    for i:=1 to n do     begin    s:=m[i];       if pos(s[length(s)],zp)<>0 then p:=length(s)-1 else p:=length(s);     sered:=(p div 2)+1;    if (not odd(p)) or (p<3) then continue;     if pos(s[1],gl)=0       then continue;     if pos(s[sered],gl)=0   then continue;     if pos(s[p],gl)=0       then continue;      s[1]:=UpCase(s[1]);    s[sered]:=UpCase(s[sered]);    s[p]:=UpCase(s[p]);     m[i]:=s+'('+s[1]+','+s[sered]+','+s[p]+')';     end;         s:='';     for i:=1 to n do s:=s+m[i]+' '; preobr:=s;end;
 beginassign(f,'input.txt'); reset(f);assign(t,'output.txt'); rewrite(t); while not eof(f) do      begin      readln(f,s);      writeln(t, preobr(s) );      end;  writeln('Файл успешно записан...'); close(f);close(t);readln;end.
0,0(0 оценок)
Ответ:
Salahaddin001
29.01.2020 14:53

lambda - ключевое слово, позволяющее объявить лямбда-выражение (анонимную функцию)

Лямбда-выражение в Python может содержать только одну какую либо инструкцию, возвращающую значение, либо же не возвращающую.

Синтаксис -

lambda parameters: expression

например, лямбда выражение, возвращающее значение входного параметра, увеличенного на 1:

f = lambda x: x + 1

f(1) # -> 2

filter - функция, выполняющая фильтрацию последовательности

сигнатура:

def filter(func: Callable[[Any], bool], source: Iterable[Any]) -> Iterable[Any]

где func - вызываемый объект, имеющий в качестве входного параметра один любой объект и возвращающий логическое значение

source - исходный итерируемый объект

Возврат: Последовательность, составленная из всех элементов, для которых func вернёт true. Возвращаемое значение имеет тип объекта-итератора и является неиндексируемым.

пример:

a = [1, 2, 3, 4]

print(list(filter(lambda p: p > 2, a))) #распечатает [3, 4]

Для задания функции-фильтратора для передачи в filter обычно использую лямбда-выражения

map - функция, применяющая указанную функцию к каждому элементу входной последовательности.

def map(func: Callable[[Any], Any], iterable: Iterable[Any]) -> Iterable[Any]

Где:

func - функция, применяемая к каждому элементу последовательности

iterable - исходная последовательность

Возврат:

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

Пример

list_of_str = ['1', '2', '5', '10']  

print(list(map(int, list_of_str))) #[1, 2, 5, 10]

import sys - оператор, импортирующий в текущий файл модуль sys

sys.stdin - предоставляет доступ к стандартному потоку ввода для интерпретатора Python

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