Вячеслав Пупышев - 50 задач по началам программирования
А= 11
R=2
12 14 16 18 20 22 24 26 28 30
24. Сколько ы ?
Написать программу для подсчета количества букв ы в заданной строке. Ответ должен быть развернутым.
ПРИМЕР:
Мама мыла раму !
В строке Мама мыла раму! букв ы - 1.
25. Лишние пробелы
Минимизировать количество пробелов в заданной строке.
В этой задаче требуется написать программу, которая убирает лишние пробелы. Лишние - это начальные и конечные пробелы строки а также те которые идут подряд. Нужно оставить из группы пробелов только один.
ПРИМЕР.
Строка: _ _ _ _ааа _ _ёёё _ _ _ВВВ _
ааа _ёёё _ВВВ
ЧТОБЫ РЕШАТЬ СЛЕДУЮЩИЕ ЗАДАЧИ , НУЖНО ЗНАТЬ , КАК ХРАНИТЬ СЛОЖНЫЕ ДАННЫЕ , СВЯЗАННЫЕ ДРУГ С ДРУГОМ. НАПРИМЕР , КАК ХРАНИТЬ ТАБЛИЦУ.26. Обращение чисел
Прочитать N чисел ( N < 100) и напечатать их в обратном порядке . Можно запрашивать N , читать очередное число или поступать как больше нравится.
ПРИМЕР:
3, 2, -1, 8, 4
Результат: 4, 8, -1, 2, 3
27. Среднее число
Прочитать N чисел и сообщить , есть ли среди них их среднее арифметическое.
ПРИМЕР:
3 2 4 -1 8 4 1
Результат: ДА.
28. Поиск строки
Прочитать несколько строк и сказать, есть ли среди них заданная строка.
ПРИМЕР:
abc
xyz
мама
программа
Строка: xyz
Результат: ДА.
29. Поиск одинаковых строк
Прочитать несколько строк и сказать, есть ли среди них одинаковые.
ПРИМЕР:
xyz
программирование
информатика
xyz
Результат: ДА.
30. Самый высокий
Запросить имя и рост каждого человека и напечатать имя самого высокого. Если таких несколько, напечатать любого.
ПРИМЕР:
Маша
120
Коля
50
Саша
150
Валя
130
Результат: Саша.
31. Сокращение числа
Задано натуральное число, длина которого не больше 100 знаков. Верно ли, что убирая по две подряд рядом стоящие цифры сумма которых равна 10, можно сократить все число?
ПРИМЕР: 123456789123456789
Результат: Да
32. Удаление символов
Можно ли из одной строчки получить другую, убрав некоторые символы?
ПРИМЕР:
программа
гамма
Результат: Да
ДАЛЬШЕ ПРИГОДИТСЯ УМЕНИЕ ИСПОЛЬЗОВАТЬ ЧАСТЬ ПРОГРАММЫ НЕСКОЛЬКО РАЗ В РАЗНЫХ МЕСТАХ.
ОБЫЧНО ТАКУЮ ЧАСТЬ НАЗЫВАЮТ подпрограммой.
33. Последовательность чисел
Вводится последовательность целых чисел, заканчивающаяся нулем. Преобразовывать последовательность следующим образом:
1) заменить отрицательные числа в последовательности на их модули и вывести получившуюся последовательность;
2) в полученной последовательности заменить четные чис ла на максимальное число последовательности, вывести результат;
3) в полученной последовательности вычесть из каждого члена последовательности 2, вывести результат;
4) в полученной последовательности заменить отрицатель ные на 0, вывести результат.
ПРИМЕР.
Последовательность: 1 2 3 0
1) 1 2 3
2) 1 3 3
3) -1 1 1
4) 0 1 1
34. Двадцатизначное число
Ввести 20-значное натуральное число. Вывести результат добавления к нему 1, вывести результат умножения его на 1, 10 и 2.
ПРИМЕР.
Число: 12345678901234567890
12345678901234567890 + 1 = 12345678901234567891
12345678901234567890 * 1 = 12345678901234567890
12345678901234567890 * 10 = 123456789012345678900
12345678901234567890 * 2 = 24691357802469135780
35. Уравнение в шестнадцатеричных
Решить уравнение ax + b = cx - d. a, b, c, d и x -- целые
шестнадцатеричные числа[3]. a, b, c, d -- вводятся, x -- выводится.
ПРИМЕР.
a = A b = B c = C d = D
x = C
______________________
36. Значение f( a )
Пусть f(a) -- сумма цифр целого числа a. Для заданного х
вычислить: f( f ( x+2 ) + f ( 2 •x)) •f (x • x )
ПРИМЕР.
x = 12
Выход: 18
37. Значение f ( x , y )
Вычислить значение функции f( x, y ) при заданных x, y, если:
для любых целых x и y
f ( 0, y ) = y '
f ( x, 0 ) = x '
f ( x, x ) = f ( x - 1, x - 1 ) + 1, при x > 0,
f ( y, y ) = f ( y + 1, y + 1) -1, при y < у,
f ( x, y ) = f ( x, x) + f ( y, y ), при x ¹ y .
ПРИМЕР.
f ( - 2, 3 ) = 1
38* . MFOI1997. Системы счисления
Запись ( X )Y обозначает, что X есть запись числа в системе счисления по основанию Y . Написать программу, которая решает уравнения вида: (A)X = B, где A и B ( целые положительные числа не большие 2000000000 ) заданы, а X - переменная. A и B - заданы десятичными цифрами.
ПРИМЕР.
A = 160 B = 112
X = 8
ДАЛЬШЕ НЕОБХОДИМО УМЕТЬ РАБОТАТЬ С БОЛЬШИМИ[4] ОБЪЕМАМИ ДАННЫХ, КОТОРЫЕ НЕ ПРОПАДАЮТ ПРИ ВЫКЛЮЧЕНИИ КОМПЬЮТЕРА. ОБЫЧНО ТАКИЕ ДАННЫЕ ХРАНЯТ В файле.
_____________________
39. ы в файле
Есть ли в заданном файле буква ы ?
ТЕХНИЧЕСКОЕ ЗАДАНИЕ.
Программа должна спросить имя файла и напечатать:
ДА - если в этом файле есть буква ы , и НЕТ - в про тивном случае.
ПРИМЕР.
Для текста задачи ответ: ДА .
40. Самое часто встречающееся число
Написать программу, которая запрашивает имя файла и пе чатает число, которое встречается в заданном файле чаще дру гих. Файл может содержать не только числа.
Длина чисел не имеет значения.
ПРИМЕР:
в последовательности 2 3 4 5 67 6 5 64 это число 6.
41. Максимальная последовательность символов
Написать программу, которая запрашивает имя файла и пе чатает длину самой большой последовательности из одного и
того же символа.
ПРИМЕР:
в тексте задачи самая длинная последовательность мм и длина ее 2.
42. Переворот 10 символов
В файле записано 10 символов. Записать их в другой файл в обратном порядке.
ПРИМЕР.
В файле: ротялипмоК
В файле с результатом: Компилятор
43. Переворот файла
Задан текстовый файл из строк символов.
Написать программу, которая записывает исходный
файл в новый так, чтобы строки расположились в
обратном порядке.
ПРИМЕР.
для текста задачи получается:
обратном порядке.
файл в новый так, чтобы строки расположились в
Написать программу, которая записывает исходный
Задан текстовый файл из строк символов.
CЛЕДУЮЩИЕ НЕСКОЛЬКО ЗАДАЧ МОЖНО РЕШИТЬ, ЕСЛИ ПЕРЕБИРАТЬ ВОЗМОЖНЫЕ ВАРИАНТЫ РЕШЕНИЯ И ПРОВЕРЯТЬ, ДЕЙСТВИТЕЛЬНО ЛИ ОНИ ПОДХОДЯТ. ТАКОЙ СПОСОБ НАЗЫВАЮТ перебором вариантов.
44. Уравнение x + 2•x + 3 • x + ... + x • x = n
Решить уравнение: x + 2 • x + 3 • x + ...+ x • x = n . Вводится n, найти x. Какими могут быть n и x, догадайтесь сами.
ПРИМЕР.
n= 18
x=3
45. Уравнение x!. N = y!
Решить уравнение: x!. N = y!. N - целое число. K! [5] - определяется только для натуральных K. K! = 1 . 2 . 3 . ... . K,
0! = 1.
__________________________________
ТЕХНИЧЕСКОЕ ЗАДАНИЕ.
Получить для заданного N все различные пары (x,y).
ПРИМЕР.
N= 12
Ответ : (2,4)(11,12)
46. DOI1996. Числовое кольцо
В кольце записаны N цифр, составляющих по часовой стрелке три числа: два слагаемых и сумму.
ТЕХНИЧЕСКОЕ ЗАДАНИЕ.
Написать программу, которая запрашивает строку цифр и, считая её кольцом, печатает какое-нибудь решение в виде A+B=C. Все цифры должны входить в числа в порядке следования в кольце. Цифр в кольце не более 100.
ПРИМЕР.
Ввод: 01902021
Вывод:190+20=210