Метод replace() в Python
Метод replace() возвращает копию строки, в которой все вхождения подстроки заменяются другой подстрокой.
Синтаксис : str.replace (old, new , count)
Метод replace() в Python может принимать максимум 3 параметра:
old ‒ старая подстрока, которую нужно заменить;
new ‒ новая подстрока, которая заменит старую подстроку;
count (необязательно) ‒ сколько раз вы хотите заменить старую подстроку новой.
Примечание: Если число не указано, метод заменяет все вхождения старой подстроки новой.
Для решения заданий ЕГЭ 12 есть стандартная программа.
Примеры заданий.
Дана программа для исполнителя Редактор:
НАЧАЛО
ПОКА нашлось (2222) ИЛИ нашлось (8888)
ЕСЛИ нашлось (2222)
ТО заменить (2222, 88)
ИНАЧЕ заменить (8888, 22)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения приведённой программы к строке, состоящей из 70 идущих подряд цифр 8? В ответе запишите полученную строку.
РАЗДЕЛ ПОЛЬЗОВАТЕЛЕЙ — 2 ASP.NET CORE — #24
s = ‘8’ *70
while ( ‘2222’ in s) or ( ‘8888’ in s):
if ‘2222’ in s:
s = s.replace( ‘2222’ , ’88’ , 1)
else :
s = s.replace( ‘8888’ , ’22’ , 1)
print (s)
Формируется строка, состоящая из 70 восьмерок.
Цикл с ветвлением переписываем на язык Питон.
Третий параметр в функции replace обозначает, что замену нужно производить один раз.
Ответ: 22
№133
Дана программа для исполнителя Редактор:
НАЧАЛО
ПОКА нашлось (18) ИЛИ нашлось (288) ИЛИ нашлось (3888)
ЕСЛИ нашлось (18)
ТО заменить (18, 2)
ИНАЧЕ
ЕСЛИ нашлось (288)
ТО заменить (288, 3)
ИНАЧЕ заменить (3888, 1)
КОНЕЦ ЕСЛИ
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения этой программы к строке, состоящей из цифры 1, за которой следуют 80 идущих подряд цифр 8? В ответе запишите полученную строку.
s = ‘1’ + ‘8’ *80
while ( ’18’ in s) or ( ‘288’ in s) or ( ‘3888’ in s):
if ’18’ in s:
s = s.replace( ’18’ , ‘2’ , 1)
else :
if ‘288’ in s:
s = s.replace( ‘288’ , ‘3’ , 1)
else :
s = s.replace( ‘3888’ , ‘1’ , 1)
print (s)
Пояснение: s = ‘1’ + ‘8’ *80
Здесь знак «+» обозначает сцепление, т.е. к единице справа допишется еще восемьдесят восьмерок.
Ответ: 28
№180
Дана программа для исполнителя Редактор:
ПОКА нашлось (555) ИЛИ нашлось (333)
ЕСЛИ нашлось (333)
ТО заменить (333, 5)
ИНАЧЕ заменить (555, 3)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
Дана строка, состоящая из 500 цифр 5. Сколько троек было удалено за время обработки строки по этой программе?
s = ‘5’ *500
k=0
while ( ‘555’ in s) or ( ‘333’ in s):
if ‘333’ in s:
24 Циклы со счетчиком
s = s.replace( ‘333’ , ‘5’ , 1)
k=k+3
else :
s = s.replace( ‘555’ , ‘3’ , 1)
print ( k )
Переменная «к» считает сколько раз удалили/заменили тройки. В ответе выводим переменную «к».
Ответ: 186
№190 Дана программа для исполнителя Редактор:
НАЧАЛО
ПОКА нашлось (888) ИЛИ нашлось (77)
ЕСЛИ нашлось (888)
ТО заменить (888, 8777)
ИНАЧЕ заменить (77,8)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 100 идущих подряд цифр 8.
В ответе через запятую запишите количество цифр 8 и цифр 7, которое будет в конечной строке.
s = ‘8’ *100
k=0
m=0
while ( ‘888’ in s) or ( ’77’ in s):
if ‘888’ in s:
s = s.replace( ‘888’ , ‘8777’ , 1)
else :
s = s.replace( ’77’ , ‘8’ , 1)
print (s)
for i in range (0,len(s)):
if s[i]==’8’: k=k+1
if s[i]==’7’: m=m+1
print (k,m)
Переменная «к» считает количество «8», переменная « m » считает количество «7».
print ( s ) – для интереса смотрю, какая строка останется после замен .
for I in range (0,len(s)):
if s[i]==’8’: k=k+1
if s[i]==’7’: m=m+1
далее циклом прохожу по строке и считаю «8» и «7».
Ответ: 67, 33
№176 Дана программа для исполнителя Редактор:
ПОКА нашлось (555) ИЛИ нашлось (333)
ЕСЛИ нашлось (555)
ТО заменить (555, 3)
ИНАЧЕ заменить (333, 5)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
Дана строка, состоящая из 200 цифр 5. Чему равна сумма цифр строки, полученной после обработки по этой программе?
s = ‘5’ *200
k=0
m=0
while ( ‘555’ in s) or ( ‘333’ in s):
if ‘555’ in s:
s = s.replace( ‘555’ , ‘3’ , 1)
else :
s = s.replace( ‘333’ , ‘5’ , 1)
for i in range (0,len(s)):
if s[i]== ‘ 5 ‘ : k=k+1
if s[i]== ‘ 3 ‘ : m=m+1
print (k*5+m*3)
Решение оформила, как у предыдущей задачи. Зная количество пятерок и троек в конечной строке сразу вывела ответ print ( k *5+ m *3)
Ответ 16
Источник: infformmatikaa.blogspot.com
Основы алгоритмизации и программирования. Тест
1. Какому зарезервированному слову программа передаёт управление в случае, если значение переменной или выражения оператора switch не совпадает ни с одним константным выражением?
2. Какой оператор не допускает перехода от одного константного выражения к другому?
г) точка с запятой
3. Какой служебный знак ставится после оператора case ?
4. Укажите правильное определение функции main в соответствии со спецификацией стандарта ANSI
г) void main(void)
5. Какую функцию должны содержать все программы на С++?
6. До каких пор будут выполняться операторы в теле цикла while (x < 100)?
а) Пока х больше 100
б) Пока х равен 100
в) Пока х меньше или равен 100
г) Пока х строго меньше 100
7. Какое значение, по умолчанию, возвращает программа операционной системе в случае успешного завершения?
б) Программа не возвращает значение.
8. Структура объявления переменных в С++
9. Программа, переводящая входную программу на исходном языке в эквивалентную ей выходную программу на результирующем языке, называется:
10. Название С++ предложил
б) Бьерн Страуструп
11. Каков результат работы следующего франмента кода?
а) НульПривет мир
12. Какое значение будет напечатано?
int main(int argc, char** argv)
13. Оператор вывода cout может печатать несколько значений или переменных в одной команде, используя следующий синтаксис:
14. Какое значение будет напечатано, в результате выполнения программы?
в) ничего не напечатается, программа вообще не будет работать
15. Тело оператора выбора if, будет выполняться. если его условие:
16. Укажите блок кода, в котором переменная y доступна.
int main(int argc, char** argv)
else if (int y = argc — 1 )
17. Что появится на экране, после выполнения этого фрагмента кода?
г) вывод на экран не выполнится
18. Результат выполнения следующего фрагмента кода: !((1 || 0) 0)
а) результат не может быть заранее определен
19. Какое из следующих значений эквивалентно зарезервированному слову true?
д) Все варианты ответов
20. Это значение 5.9875e17 может быть сохранено в переменной, типа
21. Вывод данных в C++
22. В каком случае лучше всего использовать приведение типов данных?
а) во всех выше указанных случаях
б) чтобы разрешить программе использовать только целые числа
в) чтобы изменить тип возвращаемого значения функции
г) при делении двух целых чисел, для того, чтобы вернуть результат с плавающей точкой
23. Какой тип данных имеет переменная ARGV?
а) это не переменная
24. Что будет напечатано на экране, после выполнения этого кода?
int main(int argc, char** argv)
б) ошибка компиляции
25. Какая строка содержит зарезервированные слова языка программирования С++?
а) sizeof, const, typedef, static, voided, enum, struct, union
б) char, int, float, doubled, short, long, unsigned, signed
в) if, else, for, while do, switch, continue, break
г) defaulted, goto, return, extern, private, public, protected
1. Выберите правильный вариант объявления константной переменной в С++, где type — тип данных в С++ variable — имя переменной value — константное значение
а) const variable = value;
б) const type variable := value;
в) const type variable = value;
2. Укажите объектно-ориентированный язык программирования
г) Все варианты ответов
3. В приведённом коде измените или добавьте один символ чтобы код напечатал 20 звёздочек — *.
4. Какие служебные символы используются для обозначения начала и конца блока кода?
5. Чтобы подключить заголовочный файл в программу на С++, например iostream необходимо написать:
а) #include <>; с iostream.h внутри скобок
б) include (iostreamh)
в) #include <> с iostream внутри скобок
г) include #iostream,h
6. Какими знаками заканчивается большинство строк кода в Си++?
г) ; (точка с запятой)
7. Тело любого цикла выполняется до тех пор, пока его условие .
б) у цикла нет условия
8. Что будет напечатано?
case 0 : std::cout
г) Ошибка компиляции в строке 10
9. Какой из перечисленных типов данных не является типом данных в С++?
10. Какая из следующих записей — правильный комментарий в С++?
11. Результат выполнения следующего фрагмента кода: 54
а) нет правильного ответа
12. Какие преобразования типов данных не возможны без потери данных?
а) char to float
г) все перечисленные преобразования не возможны
13. Укажите операцию, приоритет выполнения которой ниже остальных.
14. Что будет напечатано, после выполнения этого кода: cout
15. Укажите неправильно записанную операцию отношения
г) все операторы записаны правильно
16. Результат выполнения следующего фрагмента кода: cout
17. В каком случае можно не использовать фигурные скобочки в операторе выбора if?
а) если в теле оператора if всего один оператор
б) если в теле оператора if два и более операторов
в) нет правильного ответа
г) если в теле оператора if нет ни одного оператора
18. Ввод данных в C++
19. Какое ключевое слово указывает, что целая переменная не может принимать отрицательные значения?
в) нет такого зарезервированного слова
20. Преобразование целочисленной переменной value в ASCII эквивалент
21. Какой из следующих логических операторов — логический оператор И?
22. Какое значение будет содержать переменная y?
int main(int argc, char** argv)
int y = sizeof(x) / sizeof(int);
23. Укажите правильный вызов функции, предпологается, что функция была объявлена ранее.
24. Что такое ARGV[0]?
а) ARGV[0] нигде не используется
в) первый аргумент, который передается в программу из командной строки
25. Можно ли гарантировать, что объявленная встроенная функция действительно является встроенной?
а) можно с уверенностью гарантировать, что объявленная вами функция как встроенная, действительно будет встроенной
б) гарантировать не возможно, в каждом индивидуальном случае бывает по разному
1. Язык программирования C++ разработал
г) Бьерн Страуструп
2. Какие среды программирования (IDE) предназначены для разработки программных средств?
а) MVS, Code::Blocks, QT Creator, AutoCAD, Eclipse
б) MVS, NetBeans, QT Creator, RAD Studio, Dev-C++
в) MVS, Code::Blocks, QT Creator, RAD Studio, MathCAD
3. Какой из следующих операторов — оператор сравнения двух переменных?
4. Чему будет равна переменная a, после выполнения этого кода int a; for(a = 0; a < 10; a++) <>?
5. Цикл с постусловием?
6. Укажите правильную форму записи цикла do while
// форма записи оператора цикла do while:
do // начало цикла do while
// форма записи оператора цикла do while:
do // начало цикла do while
while (/*условие выполнения цикла*/); // конец цикла do while
// форма записи оператора цикла do while:
do // начало цикла do while
while (/*условие выполнения цикла*/) // конец цикла do while
7. Какой из ниже перечисленных операторов, не является циклом в С++?
8. Общий формат оператора множественного выбора – switch
case constant1, case constant2: statement1; [break;]
case constantN: statementN; [break;]
[default: statement N+l;]
case constant1: statement1; [break;]
case constant2: statement2; [break;]
case constantN: statementN; [break;]
[default: statement N+l;]
case constant1: statement1; [break;]
case constant2: statement2; [break;]
case constantN: statementN; [break;]
[else: statement N+l;]
9. Цикл с предусловием?
10. Простые типы данных в С++.
а) целые – bool, вещественные – float или double, символьные – string
б) целые – int, вещественные – float или double, символьные – char
в) целые – int, вещественные – float или double, символьные – string
г) целые – int, вещественные – float или real, символьные – char
11. Укажите операцию, приоритет выполнения которой больше остальных
12. Каков будет результат выражения !(1 !(0 || 1))?
13. Какое значение будет содержать переменная х?
14. Какой заголовочный файл следует подключить, чтобы можно было пользоваться приведением типов данных?
15. Переменная x может быть доступна в другом блоке программы?
int main(int argc, char** argv)
16. Если условие оператора выбора ложное, то:
а) выполняется тело оператора выбора
б) выполняется следующий оператор, сразу после оператора if
в) программа завершает работу
17. Логическая операция с большим приоритетом выполнения
18. Чему равен результат выполнения следующего выражения: 1000 / 100 % 7 * 2 ?
19. Укажите правильное приведение типа данных!
20. Почему приведение типов данных может быть не безопасно.
а) нет никаких опасностей
б) Вы можете навсегда изменить значение переменной
в) Вы можете временно потерять часть данных — таких, как отсечение десятичной части чисел с плавающей точкой
г) Некоторые преобразования не определены компилятором, такие как — преобразование символа в целое
21. Оператор if else позволяет определить действие .
а) только для ложного условия
б) только для истинного условия
в) для истинного и ложного условий
22. Какой из ниже перечисленных вариантов ответа, показывает правильно записанный оператор выбора if ?
а) условное выражение if
в) if условное выражение
г) if ( условное выражение )
23. Какая из переменных хранит количество аргументов, передаваемых в программу?
24. Для чего используются встроенные функции?
а) Чтобы уменьшить размер программы
б) Для увеличения скорости работы программы
в) Для удаления ненужных функций
г) Для упрощения файла с исходным кодом
25. Что будет напечатано на экране, после выполнения этого кода?
int foo(int x, int y)
double foo(double x, double y)
int main(int argc, char** argv)
double (*ptr)(int, int);
Источник: znanio.ru
Ответы на тест 3 по Информатике 8 класс
«Ответы на тест 3 по Информатике 8 класс» — это пособие для родителей для проверки правильности ответов обучающихся детей (ГДЗ) на «Тестовые вопросы для самоконтроля», указанные в учебнике Информатики в конце 3-й главы. Как утверждают авторы учебника (Л.Л.Босова, А.Ю.Босова) в конце каждой главы приведены тестовые задания, которые помогут оценить, хорошо ли учащиеся освоили теоретический материал и могут ли они применять свои знания для решения возникающих проблем.
Ответы на вопросы помогут родителям оперативно проверить выполнение указанных заданий.
Разработчиком языка Паскаль является:
а) Блез Паскаль
б) Никлаус Вирт
в) Норберт Винер
г) Эдсгер В. Дейкстра
Правильный ответ: б) Никлаус Вирт
Что из нижеперечисленного не входит в алфавит языка Паскаль?
а) латинские строчные и прописные буквы
б) служебные слова
в) русские строчные и прописные буквы
г) знак подчёркивания
Правильный ответ: в) русские строчные и прописные буквы
Какая последовательность символов не может служить именем в языке Паскаль?
а) _mas
б) maS1
в) d2
г) 2d
Правильный ответ: г) 2d
Вещественные числа имеют тип данных:
а) real
б) integer
в) boolean
г) string
Правильный ответ: а) real
В программе на языке Паскаль обязательно должен быть:
а) заголовок программы
б) блок описания используемых данных
в) программный блок
г) оператор присваивания
Правильный ответ: в) программный блок
Какого раздела не существует в программе, написанной на языке Паскаль?
а) заголовка
б) примечаний
в) описаний
г) операторов
Правильный ответ: б) примечаний
Языковые конструкции, с помощью которых в программах записываются действия, выполняемые в процессе решения задачи, называются:
а) операндами
б) операторами
в) выражениями
г) данными
Правильный ответ: б) операторами
Разделителями между операторами служит:
а) точка
б) точка с запятой
в) пробел
г) запятая
Правильный ответ: б) точка с запятой
Описать переменную — это значит указать её:
а) имя и значение
б) имя и тип
в) тип и значение
г) имя, тип и значение
Правильный ответ: б) имя и тип
В данном фрагменте программы:
program error;
begin
SuMmA:=25–14;
end.
ошибкой является:
а) некорректное имя программы
б) не определённое имя переменной
в) некорректное имя переменной
г) запись арифметического выражения
Правильный ответ: б) не определённое имя переменной
Какая клавиша нажимается после набора последнего данного в операторе read?
а) Enter
б) точка с запятой
в) пробел
г) Ctrl
Правильный ответ: а) Enter
При присваивании изменяется:
а) имя переменной
б) тип переменной
в) значение переменной
г) значение константы
Правильный ответ: в) значение переменной
Для вывода результатов в Паскале используется оператор
а) begin
б) readln
в) write
г) print
Правильный ответ: в) write
Для вычисления квадратного корня из х используется функция:
а) abs (х)
б) sqr (х)
в) sqrt (х)
г) int (х)
Правильный ответ: в) sqrt (х)
Для генерации случайного целого числа из интервала [10, 20) необходимо использовать выражение:
а) random*20
б) random(20)
в) random(10)+10
г) random(10)*2
Правильный ответ: в) random(10)+10
В каком из условных операторов допущена ошибка?
а) if b=0 then writeln (‘Деление невозможно.’);
б) if a в) if a>b then max:=a else max:=b;
r) if (a>b) and (b>0) then c:=a+b;
Правильный ответ: б) if a
В условном операторе и после then, и после else нельзя использовать:
а) оператор вывода
б) составной оператор
в) несколько операторов
г) условный оператор
Правильный ответ: в) несколько операторов
Определите значение переменной с после выполнения следующего фрагмента программы:
а:=100;
b:=30;
а:=а–b*3;
if a>b then c:=a–b else c:=b–a;
а) 20
б) 70
в) -20
г) 180
Правильный ответ: а) 20
Условный оператор
if a mod 2=0 then write (‘Да’) else write (‘Нет’)
позволяет определить, является ли число а:
а) целым
б) двузначным
в) чётным
г) простым
Правильный ответ: в) чётным
Какого оператора цикла не существует в языке Паскаль?
а) for
б) while
в) repeat…until
г) loop
Правильный ответ: г) loop
Цикл в фрагменте программы
р: =2;
repeat
р:=р*0.1
until р будет исполнен:
а) 0 раз
б) 1 раз
в) 2 раза
г) бесконечное число раз
Правильный ответ: в) 2 раза
Цикл в фрагменте программы
а:=1;
b:=1;
while а+b do
begin
а:=а+1;
b:=b+2
end;
выполнится:
а) 0 раз
б) 2 раза
в) 3 раза
г) бесконечное число раз
Правильный ответ: б) 2 раза
Определите значения переменных s и i после выполнения фрагмента программы:
s:=0;
i:=5;
while i>0 do begin
s:=s+i;
i:=i-l;
end;
а) s = 0, i = –1
б) s = 5, i = 0
в) s = 15, i = 5
г) s = 15, i = 0
Правильный ответ: г) s = 15, i = 0
Выберите фрагмент программы, в котором ищется произведение 1*2*3*4*5:
<
h5>Правильный ответ: в) р:=1; i:=1; while i
В данном фрагменте программы
s:=0 ;
for i:=1 to 10 do
s:=s+2*i;
вычисляется:
а) сумма целых чисел от 1 до 10
б) сумма чётных чисел от 1 до 10
в) удвоенная сумма целых чисел от 1 до 10
г) сумма первых десяти натуральных чётных чисел
Источник: xn—-8sbuffbhpdbebz1a7m.xn--p1ai
Урок 38
Контрольная работа
Внимание! в контрольной работе приведены вопросы и элементы кода из Pascal!
Первый вариант
1. Как выглядит знак присваивания в программировании?:
2. Как называется алгоритмическая конструкция, которая состоит из последовательных действий, В строго упорядоченном порядке друг за другом следующих?
3. Какой алгоритм изображен на картинке?:
- Следование
- Ветвление
- Повторение
4. Выберите правильную запись программы :
- programm Yakov_petrovich;
- program Yakov petrovich;
- program Yakov Petrovich;
- program_Yakov_Petrovich;
5. С помощью какой команды можно узнать остаток деления числа a на b :
1. Запишите значение переменной b после выполнения фрагмента алгоритма:
2. Что получиться в результате выполнения этого алгоритма? Ответ запишите :
if a>b then b:= a+b-28
else b := a * b -30;
3. Что получиться в результате выполнения этого алгоритма ? Запишите значение которое получиться для переменной b
4. Какое значение b получиться после выполнения алгоритма? Ответ запишите. (Если необходимо округлить ответ, округляйте до десятых)
5. Рассмотрите алгоритм и ответьте на вопросы:
- program cup_of_tea;
- var a, b, c, y , x: real;
- begin
- writeln(‘Пожалуйста, введите три числа’);
- readln(a,b,c);
- y:=a;
- if b>y then y:=b;
- if c>y then y:=c;
- if ab) or (a>c) then x:=a;
- if ba) or (b>c) then x:=b;
- if ca) or (c>b) then x:=c;
- writeln (y+x);
- end.
- Как называется программа? Напишите
- Запишите какой тип переменных используется в программе.
- Запишите названия используемых переменных.
- В какой строке программа получает данные от пользователя? Напишите номер строки
- Что будет выведено на экран, если пользователь введет значения: 6, 9, 3
Часть 3. Напишите программу.
Вводятся три числа. Вывести наименьшее число.
Второй вариант
1. Конструкция алгоритма при котором , результате от проверки выполнения условия могут быть выполнены различные действия, называется:
2. Не равно в pascal пишется:
3. Какая запись верна:
- write (Задайте переменные a и b);
- write (‘ Задайте переменные а и b’);
- write (‘ Задайте переменные ’, а и b);
- write ( Задайте переменные , ‘а и b’);
4. На блок схеме изображена алгоритмическая конструкция:
- Линейного алгоритма
- Алгоритма ветвления
- Алгоритма повторения
5. Команда в pascal которая позволяет прочитать данные полученные от пользователя:
1. Какое значение будет у переменной k после выполнения этого алгоритма:
2. Запишите значение переменной b после выполнения фрагмента алгоритма:
if a>b then b:= a+b+5
3. Запишите значение переменной b после выполнения фрагмента алгоритма:
4. Запишите значение переменной b после выполнения фрагмента алгоритма:
5. Рассмотрите алгоритм и ответьте на вопросы:
var a, b, c, y : real;
writeln (‘Введите три числа’);
- Напишите название программы.
- Какой тип переменных использован в программе.
- Сколько всего переменных использовано в программе, укажите их имена.
- Перепишите строку, в которой программа получает данные от пользователя.
- Что будет выведено на экран, если пользователь введет значения: 5, 8, 2.
Часть 3. Напишите программу.
Источник: https://best-exam.ru/algoritmizaciya-i-programmirovanie/
Cкачать материалы урока
Источник: xn—-7sbbfb7a7aej.xn--p1ai