- Вывести строку длина которой больше числа
- Pascal: Проверь себя (строки в Паскале)
- Работа со строками в Паскале: формирование строк
- Строки в Паскале: посимвольный анализ и преобразование строк
- Строки в Паскале: обработка строк с помощью стандартных функций
- Строки в Паскале: анализ и преобразование слов в строке
- Занятия по ПИТОНу. Занятие 5. Строки
- Вывести строку длина которой больше числа
Вывести строку длина которой больше числа
Регистрация на форуме тут, о проблемах пишите сюда — alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль
| Регистрация
Привет, решение данных заданий на Java — см. ссылку ниже. Покритикуйте. Источник Pascal: Проверь себя (строки в Паскале)Работа со строками в Паскале: формирование строкPascal string 1: Дан символ C . Вывести два символа, первый из которых предшествует символу C в кодовой таблице, а второй следует за символом C . Примерный результат: var C:char; begin Write(‘C:’); readln (C); Writeln(‘C1:’,chr(ord(C)-1)); Writeln(‘C2:’,chr(ord(C)+1)); end. Pascal string 2: Дан символ C , изображающий цифру или букву (латинскую или русскую). Если C изображает цифру, то вывести строку «digit», если латинскую букву — вывести строку «lat». Примерный результат: var C:char; begin Write(‘Введите букву или цифру:’); readln (C); case ord(C) of 48..57: Writeln(‘digit’); 65..90,97..122: Writeln(‘lat’); end; end. Pascal string 3: Дано четное число N>0 и символы C1 и C2 . Вывести строку длины N , которая состоит из чередующихся символов C1 и C2 , начиная с C1 Примерный результат: var N,i:integer; C1,C2:char; S:string; begin Write(‘N:’); Readln (N); Write(‘C1:’); Readln (C1); Write(‘C2:’); Readln (C2); S:=»; for i:=1 to (N div 2) do S:=S+C1+C2; Writeln(S); end. Pascal string 4: Дана непустая строка S и целое число N>0 . Вывести строку, содержащую символы строки S , между которыми вставлено по N символов «*» (звездочка) Примерный результат: var N,i,i2:integer; S,S2:string; begin Write(‘S:’); Readln (S); Write(‘N:’); Readln (N); S2:=S[1]; for i:=2 to Length(S) do begin for i2:=1 to N do S2:=S2+’*’; S2:=S2+S[i]; end; Writeln(S2); end. Строки в Паскале: посимвольный анализ и преобразование строкPascal string 5: Дано целое положительное число. Вывести символы, изображающие цифры этого числа (в порядке справа налево). Примерный результат: var N,i:integer; S:string; begin Write(‘N:’); Readln (N); Str(N,S); for i:=Length(S) downto 1 do Write(s[i]); end. Для решения возможно понадобятся функции для работы с символами Примерный результат: var i,Rez,Operation:integer; S:string; begin Write(‘S:’); Readln (S); Rez:=ord(S[1])-48; <в таблице Ascii цифры начинаются с 48 (0), т.е. если символ '0', то 48-48=0>for i:=2 to Length(S) do begin if (ord(S[i]) in [48..57]) then Rez:=Rez+operation*(ord(S[i])-48); if (ord(S[i]) = 43) then Operation:=1; //+ if (ord(S[i]) = 45) then Operation:=-1; //- end; Writeln(Rez); end. Строки в Паскале: обработка строк с помощью стандартных функцийPascal string 7: Дано целое число N>0 и строка S . Преобразовать строку S в строку длины N следующим образом: если длина строки S больше N , то отбросить первые символы, если длина строки S меньше N , то в ее начало добавить символы «.» (точка). Примерный результат: var N,i:integer; S:string; begin Write(‘N:’); Readln(N); Write(‘S:’); Readln(S); if length(S)>N then delete(S,1,length(S)-N); if length(S) —> Примерный результат: var S:string; C:Char; i:integer; begin Write(‘C:’); Readln(C); Write(‘S:’); Readln(S); i:=1; While(i —> Примерный результат: program String31; var S,s0:string; C:Char; i:integer; begin Write(‘S:’); Readln(S); Write(‘S0:’); Readln(S0); writeln(pos(S0,S)>0); end. Строки в Паскале: анализ и преобразование слов в строкеPascal string 10: Дана строка, состоящая из английских слов, набранных заглавными буквами и разделенных пробелами (одним или несколькими). Найти количество слов, которые содержат хотя бы одну букву «A». Примерный результат: var S:String; i,Num,NumA:integer; begin Write(‘S: ‘); Readln(S); i:=1; Num:=0; NumA:=0; While (i 0 then inc(num); NumA:=0; end; if S[i]=chr(6) then inc(NumA); //Если кодировка в консоли и в IDE совпадают, условие можно заменить на S[i]=’А’ inc(i); end; Writeln(Num); end. Источник Занятия по ПИТОНу. Занятие 5. СтрокиЯ несколько лет знакомился с материалами Foxford. Эта же теория с видео. И тогда всё станет понятно. После if и for не забудьте отрегулировать отступы пробелами или Tab s = input() # И далее оператор и значение ниже Если входные данные Hello world – ответ 2
import math Ещё решение участника
s = input() Примеры решений участниками:
Решение разработчиков Примеры решений участниками: 6. Задача «Второе вхождение» Входные данные и Выходные данные komfort -1 qwerty -2 ff 1 foooooooooooooof 15 ofofofofofofofofo 3
Входные данные: Решение разработчиков Решение участника:
s = input() Входные данные: In the hole in the ground there lived a hobbit 9. Задача «Замена подстроки» Решение разработчиков Источник Вывести строку длина которой больше числаA. Кузнечик собирает монеты Имя входного файла: input.txt Имя выходного файла: output.txt Ограничение по времени: 2 секунды Ограничение по памяти: 256 мегабайт Кузнечик прыгает по столбикам, расположенным на одной линии на равных расстояниях друг от друга. Столбики имеют порядковые номера от 1 до N. В начале Кузнечик сидит на столбике с номером 1. Он может прыгнуть вперед на расстояние от 1 до K столбиков, считая от текущего. На каждом столбике Кузнечик может получить или потерять несколько золотых монет (для каждого столбика это число известно). Определите, как нужно прыгать Кузнечику, чтобы собрать наибольшее количество золотых монет. Учитывайте, что Кузнечик не может прыгать назад. Формат входных данных В первой строке вводятся два натуральных числа: N и K ( 2 ⩽ N, K ⩽ 10000 ), разделённые пробелом. Во второй строке записаны через пробел N-2 целых числа — количество монет, которое Кузнечик получает на каждом столбике, от 2-го до N-1-го. Если это число отрицательное, Кузнечик теряет монеты. Гарантируется, что все числа по модулю не превосходят 10 000. Формат выходных данных В первой строке программа должна вывести наибольшее количество монет, которое может со брать Кузнечик. Во второй строке выводится число прыжков Кузнечика, а в третьей строке — номера всех столбиков, которые посетил Кузнечик (через пробел в порядке возрастания). Если правильных ответов несколько, выведите любой из них. input.txt output.txt B. Наибольшая возрастающая подпоследовательность Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 2 секунды Ограничение по памяти: 256 мегабайт Пусть a1, a2, . an — числовая последовательность. Длина последовательности — это количество элементов этой последовательности. Последовательность ai1, ai2, . aik называется подпоследова тельностью последовательности a, если 1 ⩽ i1 Подзадача 1 (60 баллов) n ⩽ 300 Подзадача 2 (40 баллов) n ⩽ 2 000 Формат входных данных В первой строке задано одно число n ( 1 ⩽ n ⩽ 2000 ) — длина подпоследовательности. В следу ющей строке задано n целых чисел ai ( 10^9 ⩽ ai ⩽ 10^9 ) — элементы последовательности. Формат выходных данных В первой строке выведите число k — длину наибольшей возрастающей подпоследовательности. В следующей строке выведите k чисел — саму подпоследовательность. стандартный ввод стандартный вывод стандартный ввод стандартный вывод Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 1 секунда Ограничение по памяти: 256 мегабайт Шахматная ассоциация решила оснастить всех своих сотрудников такими телефонными номера- ми, которые бы набирались на кнопочном телефоне ходом коня. Например, ходом коня набирается телефон 340-49-27. При этом телефонный номер не может начинаться ни с цифры 0, ни с цифры 8. Напишите программу, определяющую количество телефонных номеров длины N, набираемых ходом коня. Поскольку таких номеров может быть очень много, выведите ответ по модулю 10^9. Формат входных данных Во входном файле записано целое число N ( 1 ⩽ N ⩽ 100 ). Формат выходных данных Выведите в выходной файл искомое количество телефонных номеров по модулю 10^9. стандартный ввод стандартный вывод стандартный ввод стандартный вывод D. Расстояние по Левенштейну Имя входного файла: input.txt Имя выходного файла: output.txt Ограничение по времени: 2 секунды Ограничение по памяти: 256 мегабайт Дана текстовая строка. С ней можно выполнять следующие операции:
Например, при помощи первой операции из строки «СОК»можно получить строку «СУК при помощи второй операции — строку «ОК при помощи третьей операции — строку «СТОК. Минимальное количество таких операций, при помощи которых можно из одной строки получить другую, называется стоимостью редактирования или расстоянием Левенштейна. Определите расстояние Левенштейна для двух данных строк. Формат входных данных Программа получает на вход две строки, длина каждой из которых не превосходит 1000 симво лов, строки состоят только из заглавных латинских букв. Формат выходных данных Требуется вывести одно число — расстояние Левенштейна для данных строк. input.txt output.txt Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 2 секунды Ограничение по памяти: 64 мегабайта Около Петиного университета недавно открылось новое кафе, в котором действует следующая система скидок: при каждой покупке более чем на 100 рублей покупатель получает купон, дающий право на один бесплатный обед (при покупке на сумму 100 рублей и меньше такой купон покупатель не получает). Однажды Пете на глаза попался прейскурант на ближайшие n дней. Внимательно его изучив, он решил, что будет обедать в этом кафе всеnдней, причем каждый день он будет покупать в кафе ровно один обед. Однако стипендия у Пети небольшая, и поэтому он хочет по максимуму ис пользовать предоставляемую систему скидок так, чтобы его суммарные затраты были минимальны. Требуется найти минимально возможную суммарную стоимость обедов и номера дней, в которые Пете следует воспользоваться купонами. Формат входных данных В первой строке входного файла записано целое числоn( 0 ⩽ n ⩽ 100 ). В каждой из последующих nстрок записано одно целое число, обозначающее стоимость обеда в рублях на соответствующий день. Стоимость — неотрицательное целое число, не превосходящее 300. Формат выходных данных В первой строке выдайте минимальную возможную суммарную стоимость обедов. Во второй строке выдайте два числа k1 и k2 — количество купонов, которые останутся неиспользованными у Пети после этих n дней и количество использованных им купонов соответственно. В последующих k2 строках выдайте в возрастающем порядке номера дней, когда Пете следует воспользоваться купонами. Если существует несколько решений с минимальной суммарной стоимо стью, то выдайте то из них, в котором значение k1 максимально (на случай, если Петя когда-нибудь ещё решит заглянуть в это кафе). Если таких решений несколько, выведите любое из них. Источник |