| | |
Задание 1
Задачи на процедуры и функции
Дополните функцию f(n) таким образом, чтобы программа выводила на экран число 20.
| |
|
Задание 2
Задачи на процедуры и функции
Дополните функцию f(n) таким образом, чтобы программа выводила на экран число 13 .
| |
|
Задание 3
Задачи на процедуры и функции
Дополните функцию f(n) таким образом, чтобы программа выводила на экран две строки со значениями
100
100
Запрещено создавать новые переменные!
| |
|
Задание 4
Задачи на процедуры и функции
Дополните функцию f1(n) таким образом, чтобы программа выводила на экран число 119 .
| |
|
Задание 5
Задачи на процедуры и функции
Дополните функции f1(n) и f2(n) таким образом, чтобы программа выводила на экран число 29 .
| |
|
Задание 6
Задачи на процедуры и функции
Программа должна вывести на экран число 75 .
Оформите вызов процедуры f1(a, b) в программе.
| |
|
Сумма дробей
Задачи на процедуры и функции
Программа вычисляет значение выражения
\(ans = {2 + \sqrt{2} \over {5 + \sqrt{5}}} + {5 + \sqrt{5} \over {13 + \sqrt{13}}}+{13 + \sqrt{13} \over {8 + \sqrt{8}}}\).
Для вычисления используется функция drop(a, b) , которая вычисляет значение одного слагаемого.
Запишите пропущенную строку в этой функции.
| |
|
Количество счастливых шестизначных
Задачи на процедуры и функции
Определите количество шестизначных «счастливых» чисел. «Счастливым» будем называть такое шестизначное число, в котором сумма его первых трех цифр равна сумме его последних трех цифр.
Заполните пропуски в программе.
Функция sum3(n) вычисляет сумму цифр трехзначного числа.
Функция happy(n) определяет является ли число n счастливым. Функция happy(n) для своей работы использует функцию sum3(n) .
| |
|
Замена букв, исключая первую и последнюю
Задачи на процедуры и функции
Программа заменяет в строке s все буквы 'h' на 'H', кроме первого и последнего вхождения. Вставьте пропущенные строки.
Примеры
№ |
Входные данные |
Выходные данные |
1 |
In the hole in the ground there lived a hobbit |
In the Hole in tHe ground tHere lived a hobbit |
| |
|
Строки с гласными и согласными
Задачи на процедуры и функции
Строки
Символы
Напишите функцию vowels_count , которая принимает строку и подсчитывает количество английских гласных в ней.
Английские гласные буквы: a, e, i, o, u, y .
Используя данную функцию, определите две строки:
s1 - строку с самым большим числом гласных букв (если таких строк несколько, взять ту, которая встретится раньше).
s2 - строку с самым маленьким числом согласных букв (если таких строк несколько, взять ту, которая встретится раньше).
Входные данные
В первой строке подается натуральное число n (1 < n <= 10) - количество строк. Далее идут n строк. Каждая строка состоит из английских маленьких букв и пробелов.
Выходные данные
Выведите на экран две строки: сначала строку s1 , затем, с новой строки - s2 . Наименьшую из данных строк выровняйте по длине с наибольшей, добавив слева строки символы '* '.
Примеры
№ |
Входные данные |
Выходные данные |
1 |
4
mama papa
doughter son
brother sister
grandmama grandpa |
grandmama grandpa
********mama papa |
| |
|
Вычислите значение многочлена - 1.
Задачи на процедуры и функции
Арифметические алгоритмы (Теория чисел)
Вычислите значение многочлена вида: anxn+an-1xn-1+...+a1x+a0 по значениям коэффициентов и значению аргумента.
Входные данные:
1 строка - число N (0<=N<=10000) - степень многочлена
2 строка - N+1 целое число разделенные пробелом - коэффициенты многочлена an,an-1,...,a1,a0
3 строка - натуральное число K - количество значений аргументов (K<=106), для которых надо вычислить значение многочлена
В следующих K строках даны значения аргумента - вещественные числа
Выходные данные:
Вычислите значения многочлена для заданных аргументов. В качестве ответа выведите:
- в 1 строке - аргумент, при котором многочлен принимает минимальное значение. Если таких значений несколько, то выведите минимальное из значений.
- в 2 строке - значение многочлена для аргумента из 1-й строки. Значение округлите до 0,0000001
ВХОДНЫЕ ДАННЫЕ |
ВЫХОДНЫЕ ДАННЫЕ |
2
1 0 0
4
9.0
-11.0
-9.0
16.0 |
-9.0
81.0 |
10
7 -7 -4 3 -6 -9 -7 4 0 -9 8
2
0.01
0.0
|
0.01
7.9100039
|
| |
|
Пиксельный экран
Процедуры и функции
Задачи на процедуры и функции
Пиксельный экран выводит каждую цифру в виде картинки 3х5.
1 |
2 |
3 |
4 |
5 |
*
*
*
*
*
|
***
*
***
*
***
|
***
*
***
*
***
|
* *
* *
***
*
*
|
***
*
***
*
***
|
6 |
7 |
8 |
9 |
0 |
***
*
***
* *
***
|
***
*
*
*
*
|
***
* *
***
* *
***
|
***
* *
***
*
***
|
***
* *
* *
* *
***
|
На вход программе подается натуральное число n (n <= 109).
Выведите это число в виде картинки на пиксельном экране. Каждую цифру выводите с новой строки. Порядок цифр должен соответствовать порядку цифр в исходном числе (то есть сначала выводится первая цифры, затем - вторая и т. д.). Если после звездочки (*) в строке больше ничего нет, то пробелы выводить не нужно.
Примеры
№ |
Входные данные |
Выходные данные |
1 |
12 |
*
*
*
*
*
***
*
***
*
***
|
| |
|
Минимальный простой делитель
Процедуры и функции
Задачи на процедуры и функции
Алиса знает, что если у числа n нет делителя, не превосходящего\(\sqrt n\), то число n - простое и его минимальным простым делителем будет само число n . Вас попросили написать программу, которая будет находить минимальный простой делитель у любого числа.
Решение оформите с использованием функций. Напишите следующие функции:
- функцию isPrime(n) , которая будет принимать целое число и возвращать True, если число простое и False - если не простое.
- функцию minDivisor(n) , которая будет возвращать минимальный простой делитель.
Основная программа должна содержать ввод числа, вызов функции minDivisor(n) и вывод ответа.
Входные данные
Программа получает на вход натуральное число n > 1.
Выходные данные
Выведите ответ на задачу.
Примеры
№ |
Входные данные |
Выходные данные |
1 |
4 |
2 |
2 |
5 |
5 |
| |
|
Код доступа
Процедуры и функции
Задачи на процедуры и функции
Алиса решила, что нужно поставить код доступа к управлению кораблем. Она считает, что код доступа должен иметь вид a:b:c , где a , b и c - натуральные числа. Причем, число a должно быть простым, число b - являться палиндромом, а число c - чётным. Капитан Зелёный придумал код.
Вам поручили задание написать программу, которая бы выводила True , если придуманный код доступа соответствует правилам и False - если не соответствует. Чтобы вашу программу можно было применять для других проверок, капитан просит вас оформить программу, с использованием трех функций:
- isPrime(n) - функция, которая определяет является число n простым или нет;
- isPalindrome(n) - функция, которая определяет является ли число n палиндромом;
- isEven(n) - функция, которая определяет является ли число n четным.
Все проверки числа на простоту, палиндром и четность необходимо осуществлять только с использованием данных функций!
Входные данные
Программа получает на вход одну строку - код доступа, который придумал капитан Зелёный.
Выходные данные
Выведите True , если код доступа соответствует правилам Алисы, в противном случае выведите False .
Примеры
№ |
Входные данные |
Выходные данные |
1 |
7:101:14 |
True |
2 |
101:101:101 |
False |
3 |
qwerty |
False |
| |
|
Степень
Задачи на процедуры и функции
Напишите функцию double power (double a, int n) (C/C++), function power (a:real; n:longint): real (Pascal) , вычисляющую значение an.
Входные данные
Вводится 2 числа - a (вещественное) и n (целое неотрицательное).
Выходные данные
Необходимо вывести значение an.
| |
|
Исключающее ИЛИ
Логический тип
Задачи на процедуры и функции
Напишите функцию
bool Xor (bool x, bool y) (C/C++),
function _Xor (x, y:boolean): boolean (Pascal),
def xor(x, y):(Python)
реализующую функцию "Исключающее ИЛИ" двух логических переменных x и y. Функция Xor должна возвращать true, если ровно один из ее аргументов x или y, но не оба одновременно равны true.
Входные данные
Вводится 2 числа - x и y (x и y равны 0 или 1, 0 соответствует значению false, 1 соответствует значению true).
Выходные данные
Необходимо вывести 0 или 1 - значение функции от x и y.
| |
|
Голосование
Логический тип
Задачи на процедуры и функции
Напишите "функцию голосования" bool Election(bool x, bool y, bool z) (C/C++), function Election (x, y, z:boolean): boolean (Pascal) , возвращающую то значение (true или false), которое среди значений ее аргументов x, y, z встречается чаще.
Входные данные
Вводится 3 числа - x, y и z (x, y и z равны 0 или 1, 0 соответствует значению false, 1 соответствует значению true).
Выходные данные
Необходимо вывести значение функции от x, y и z.
| |
|
Быстрое возведение в степень
Рекурсия
Задачи на процедуры и функции
Напишите функцию быстрого возведения в степень. Количество действий должно быть пропорционально двоичному логарифму n.
Входные данные
Вводится 2 числа - a (вещественное) и n (целое неотрицательное).
Выходные данные
Необходимо вывести значение an.
| |
|