Задачи на вычисление по программированию
Для начала рекомендуется прочитать Числа и их свойства и другие разделы Справочника
Работа с консолью
- Вывести на экран текст “Silence is golden”.
- Вывести на экран текущее название дня недели, название месяца и свое имя. Каждое слово должно быть в отдельной строке.
- Вывести на экран пять строк из нулей, причем количество нулей в каждой строке равно номеру строки.
- Вывести на экран прямоугольник, заполненный буквами А. Количество строк в прямоугольнике равно 5, количество столбцов равно 8.
- Вывести на экран букву “W” из символов “*” (звездочка).
- Вывести на экран результат вычисления \(1+2-4\).
Простейшая арифметика
- Вычислите \(\displaystyle\frac{1}{2}+\frac{1}{4}\). Ответ: 0.75
- Вычислите значение выражения \((a+4b)(a-3b)+a^2\) при \(a=2\) и \(b=3\). Ответ: -94
- Вычислите \(|x|+x^5\), если \(x=-2\). Ответ: -30
- Вычислите значение выражения \((x+1)^2+3(x+1)\) при а) \(x=1.7\); б) \(x=3\). Ответ: а) 15.39 б) 28
- Вычислите значение выражения \(\displaystyle\frac{|x-5|-\sin{x}}{3}+\sqrt{x^2+2014}\cos{2x-3}\) при \(x=-2.34\). Ответ: -1.76911 (проверено!)
- Вычислите значение выражения \(e^{x-2}+|\sin(x)|-x^{4}\cdot\cos{\frac{1}{x}}\) при \(x=3.6\) Ответ: -156.1276
- Вычислите значение выражения \(\displaystyle\sqrt[5]{x^2+b}-\displaystyle\frac{b^2\sin^3(x+a)}{x}\) при \(a=0.1\), \(b=0.2\) и \(x=1\) Ответ: 1.0088
- Пользователь вводит два числа. Найдите сумму и произведение данных чисел.
- Пользователь вводит число. Выведите на экран квадрат этого числа, куб этого числа.
- Пользователь вводит три числа. Увеличьте первое число в два раза, второе числа уменьшите на 3, третье число возведите в квадрат и затем найдите сумму новых трех чисел.
- Пользователь вводит три числа. Найдите среднее арифметическое этих чисел, а также разность удвоенной суммы первого и третьего чисел и утроенного второго числа.
- Пользователь вводит сторону квадрата. Найдите периметр и площадь квадрата.
- Пользователь вводит цены 1 кг конфет и 1 кг печенья. Найдите стоимость: а) одной покупки из 300 г конфет и 400 г печенья; б) трех покупок, каждая из 2 кг печенья и 1 кг 800 г конфет.
- Пользователь вводит время в минутах и расстояние в километрах. Найдите скорость в м/c.
- Даны катеты прямоугольного треугольника. Найдите площадь, периметр и гипотенузу треугольника.
- Дано значение температуры в градусах Цельсия. Вывести температуру в градусах Фаренгейта.
- Известно, что \(x\) кг конфет стоит \(a\) рублей. Определите, сколько стоит \(y\) кг этих конфет, а также сколько кг конфет можно купить на \(k\) рублей. Все значения вводит пользователь.
- Пользователь вводит количество дней, указывает процент скидки и вводит сумму. Рассчитать прибыль, если за каждый день сумма увеличивается на 3 $ и затем применяется скидка, то есть итоговая сумма еще увеличивается на данное число процентов.
- Пользователь вводит количество недель, месяцев, лет и получает количество дней за это время. Считать, что в месяце 30 дней.
- Даны две переменных с некоторыми значениями. Поменять местами значения этих переменных
- Даны три переменные \(a\), \(b\) и \(c\). Изменить значения этих переменных так, чтобы в \(a\) хранилось значение \(a+b\), в \(b\) хранилась разность старых значений \(c-a\), а в \(c\) хранилось сумма старых значений \(a+b+c\). Например, \(a=0\), \(b=2\), \(c=5\), тогда новые значения \(a=2\), \(b=3\) и \(c=7\).
- Пользователь вводит сумму вклада в банк и годовой процент. Найдите сумму вклада через 5 лет (рассмотреть два способа начисления процентов)
- Поменяйте местами значения двух переменных, не используя дополнительных переменных.
- Дано число \(a\). Не пользуясь никакими арифметическими операциями кроме умножения, получите а)\(a^4\) за две операции; б) \(a^6\) за три операции; в) \(a^{15}\) за пять операций.
- Дан прямоугольник размером \(647\) x \(170\). Сколько квадратов со стороной 30 можно вырезать из него?
- Из трехзначного числа \(x\) вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа \(x\), то получилось число 237. Найти число \(x\).
Условный оператор и арифметика
- Вычислите \(\sqrt{x-\sqrt{y}}\), если \(x\) и \(y\) вводит пользователь. Перед вычислением выполнить проверку на существование квадратных корней.
- Дано число. Если оно больше 3, то увеличить число на 10, иначе уменьшить на 10.
- Дано число. Если оно меньше 7, то вывести Yes, если больше 10, то вывести No, если равно 9, то вывести Error.
- Пользователь вводит номер месяца, вывести название месяца.
- Дано два числа. Вывести наибольшее из них.
- Дано два числа. Вывести yes, если они отличаются на 100, иначе вывести No.
- Даны два числа. Если первое число больше второго, то вывести yes, иначе поменять значения этих переменных и вывести их на экран.
- Дано число. Если оно от -10 до 10 не включительно, то увеличить его на 5, иначе уменьшить на 10.
- Дано число. Если оно более 100 или менее -100, то занулить, иначе увеличить его на 1.
- Дано число. Если оно от 2 до 5 включительно, то увеличить его на 10. Если оно от 7 до 40, то уменьшить на 100. Если оно не более 0 или более 3000, то увеличить в 3 раза (то есть умножить на 3). Иначе занулить это число.
- Пользователь вводит номер месяца. Вывести название поры года (весна, лето и т.д.)
- Пользователь вводит два числа. Если они не равны 10 и первое число четное, то вывести их сумму, иначе вывести их произведение.
- Пользователь вводит три числа. Если все числа больше 10 и первые два числа делятся на 3, то вывести yes, иначе no
- Пользователь вводит три числа. Найти сумму тех чисел, которые делятся на 5. Если таких чисел нет, то вывести error.
- Даны три числа. Найдите наибольшее число из них.
- Даны три числа. Найдите те два из них, сумма которых наибольшая.
- Пользователь вводит четыре числа. Найдите наибольшее четное число среди них. Если оно не существует, выведите фразу “not found”
- Даны три числа. Написать “yes”, если среди них есть одинаковые.
- Даны три числа. Написать “yes”, если можно взять какие-то два из них и в сумме получить третье
- Дано четыре числа, если первые два числа больше 5, третье число делится на 6, четвертое число не делится на 3, то вывести yes, иначе no.
- Дано два числа. Если хотя бы одно из них больше 30, то вывести yes, иначе no.
- Дано три числа. Если ровно два из них меньше 5, то вывести yes, иначе вывести no.
- Дано три числа. Найти количество положительных чисел среди них.
- Робот может перемещаться в четырех направлениях («11» — север, «12» — запад, «13» — юг, «14» — восток) и принимать три цифровые команды: 0 — продолжать движение, 1 — поворот налево, –1 — поворот направо. Дан число (11, 12, 13 или 14) — исходное направление робота и целое число N (0, 1 или -1) — посланная ему команда. Вывести направление робота после выполнения полученной команды (то есть север, запад, юг или восток).
- Дана дата из трех чисел (день, месяц и год). Вывести yes, если такая дата существует (например, 12 02 1999 – yes, 22 13 2001 – no). Считать, что в феврале всегда 28 дней.
- Дано две даты, каждая из которых состоит из трех чисел (день, месяц и год). Вывести yes, если первая дата раньше второй, иначе вывести no.
- Дано четырехзначное число. Верно ли, что цифр в нем расположены по убыванию?Например, 4311 – нет, 4321 – да, 5542 – нет, 5631 – нет, 9871 – да.
- Дано трехзначное число. Переставьте первую и последнюю цифры.
- Дано четырехзначное число. Определите, есть ли одинаковые цифры в нем.
- Дано пятизначное число. Цифры на четных позициях занулить. Например, из 12345 получается число 10305.
- Даны два трехзначных числа. Найдите шестизначное число, образованное из двух данных чисел путем дописывания второго числа к первому справа.
- Дано четырехзначное число. Если оно читается слева направо и справа налево одинаково, то вывести yes, иначе no.
- Дано четырехзначное число. Переставьте местами цифры так, чтобы сначала оказались цифры, меньшие пяти.
- Даны два трехзначных числа. Получите новое число присоединением второго числа справа к первому без последних цифр у каждого. Например, 123 и 456 Ответ: 1245
- Дано четырехзначное число. Поменяйте местами наименьшую и наибольшую цифры.
- Даны коэффициенты \(a, b, c\) уравнения \(ax^2+bx+c=0\). Найти решение. Проверить ответы можно здесь. Как решать квадратные уравнения можно прочитать здесь.
- Пользователь вводит три числа – длины сторон треугольника. Найти площадь треугольника. Сделать проверку на существование треугольника (например, 1, 2, 3 – такого треугольника не существует). Проверить ответы можно здесь
- Даны целочисленные координаты трех вершин прямоугольника, стороны которого параллельны координатным осям. Найдите координаты его четвертой вершины (после проверки введенных данных на правильность).
- Даны числа \(h\) и \(m\), где \(h\) – количество часов, \(m\) – количество минут некоторого момента времени. Найдите угол между часовой и минутной стрелками в этот момент времени.
- Даны два прямоугольника, стороны которых параллельны или перпендикулярны осям координат. Известны координаты левого нижнего угла каждого из них и длины их сторон. Один из прямоугольников назовем первым, другой — вторым. Найти координаты левого нижнего и правого верхнего углов минимального прямоугольника, содержащего указанные прямоугольники.
- Даны два прямоугольника, стороны которых параллельны или перпендикулярны осям координат. Известны координаты левого нижнего угла каждого из них и длины их сторон. Один из прямоугольников назовем первым, другой — вторым.
а) Определить, принадлежат ли все точки первого прямоугольника второму.
б) Определить, принадлежат ли все точки одного из прямоугольников другому.
в) Определить, пересекаются ли эти прямоугольники. - Даны целое число \(k\), \(1 < k < 180\) и последовательность цифр \(10111213…9899\), в которой выписаны подряд все двузначные числа. Определить \(k\)-ю цифру в этой последовательности.
Циклы и арифметика
- Выведите на экран 10 раз фразу “You are welcome!”
- Выведите на экран \(n\) раз фразу “Silence is golden”. Число \(n\) вводит пользователь.
- Выведите на экран прямоугольник из нулей. Количество строк вводит пользователь, количество столбцов равно 5.
- Вывести на экран фигуру из звездочек:
*******
*******
*******
*******
(квадрат из \(n\) строк, в каждой строке \(n\) звездочек) - Выведите на экран числа 1, 2, 3, 4, …, 20.
- Вывести на экран ряд чисел 1001, 1004, 1007, … 1025.
- Вывести на экран числа 100, 96, 92, … до последнего положительного включительно.
- Выведите на экран числа 1.2, 1.4, 1.6, …, 2.8.
- Выведите следующие строки. Первая: 25 25.5 24.8. Вторая: 26 26.5 25.8. И так далее. Последняя строка: 35 35.5 34.8.
- Пользователь вводит курс доллара в рублях. Показать таблицу цен 1$, 2$, …, 100$ в рублях, третьим столбцом добавить количество кг конфет, которые можно купить на данные суммы, если цена 1 кг конфет равна 20 руб. Пример: 1$ – 70 р – 3.5 кг и так далее (всего 100 строк).
- Пользователь вводит количество строк. Вывести на экран логотип соответствующего размера. Если текст не помещается, то вывести логотип без текста.
- Для данного \(n\) найти сумму \(1+2+3+…+n\). Например, для \(n=10\) ответ равен \(55\).
- Найти сумму \(10+11+12+13+…+88\). Материал сайта www.itmathrepetitor.ru Ответ: 3871
- Найти произведение \(5\cdot 6\cdot 7\cdot …\cdot 13\).
- Найти сумму \(1+4+7+10+…+112\).
- Найти сумму \(\cos\displaystyle\frac{3}{5}+\cos\frac{5}{7}+\cos\frac{7}{9}+…+\cos\frac{111}{113}\).
- Найти сумму \(\displaystyle\frac{2}{3}+\frac{3}{4}+\frac{4}{5}+…+\frac{9}{10}\).
- Вывести на экран сто первых сумм вида \(1+2+3+…+n\).
- Найдите сумму квадратов первых \(n\) натуральных чисел
- Найдите сумму \(1+\displaystyle\frac{1}{2}+\frac{1}{3}+\ldots+\frac{1}{n}\).
- Даны \(a\) и \(n\). Вычислите \(p=(a+1)^2(a+2)^2\cdot\ldots \cdot(a+n)^2\)
- Дано натуральное число \(n\). Вычислите \(\displaystyle\frac{1}{\cos{x}}+\frac{1}{\cos{x^2}}+\ldots+\frac{1}{\cos{x^n}}\)
- Вычислите \(1\cdot 2+2\cdot 3\cdot 4+…+n\cdot(n+1)\cdot \ldots\cdot 2n\).
-
Начав тренировки, лыжник в первый день пробежал 10 км. Каждый следующий день он увеличивал пробег на 10% от пробега предыдущего дня. Определите: а) пробег лыжника за второй, третий, …, десятый день тренировок; б) какой суммарный путь он пробежал за первые 7 дней тренировок. в) суммарный путь за \(n\) дней тренировок; г) в какой день ему следует прекратить увеличивать пробег, если он не должен превышать 80 км?
- Вывести на экран числа от 1000 до 9999 такие, что все цифры различны.
- Вывести на экран числа от 1000 до 9999 такие, что среди цифр нет цифр 5 и цифры 6.
- Вывести все пятизначные числа, которые делятся на 2, у которых средняя цифра нечетная, и сумма всех цифр делится на 4. Материал сайта www.itmathrepetitor.ru
- Вывести на экран числа от 1000 до 9999 такие, что среди цифр есть цифра 3.
- Найдите трехзначные числа, равные сумме кубов своих цифр.
- Сколько существует четырехзначных чисел, которые в 600 раз больше суммы своих цифр?
-
Найдите хотя одно натуральное число, которое делится на 11, а при делении на 2, 3, 4, …, 10 дает в остатке 1
- Вывести на экран \(n\) единиц, затем \(2n\) двоек, затем \(3n\) троек. Число \(n\) вводит пользователь.
- Вывести ряд чисел: десять десяток, девять девяток, восемь восьмерок, … , одну единицу. Найти сумму всех этих чисел.
- Выведите на экран строки (в последней строке \(n\) звездочек):
*
**
***
****
***** - Выведите на экран строки вида:
*******
****
*******
****
*******
****
(всего \(n\) строк, звездочек или 7, или 4 по очереди) - Вывести на экран:
AAABBBAAABBBAAABBB
BBBAAABBBAAABBBAAA
AAABBBAAABBBAAABBB
(таких строк \(n\), в каждой строке \(m\) троек AAA) -
Вывести на экран:
AAAAAAAAAA
ABBBBBBBBA
ABBBBBBBBA
ABBBBBBBBA
AAAAAAAAAA
(количество строк вводит пользователь, ширина прямоугольника в два раза больше высоты) - Выведите на экран квадрат из нулей и единиц, причем нули находятся только на диагонали квадрата. Всего в квадрате сто цифр. Материал сайта www.itmathrepetitor.ru
- Вывести на экран 20 строк. В строках с четными номерами вывести по 10 чисел, равных номеру строки. В строках с нечетными номерами вывести десять единиц.
- Вывести 30 строк. Нечетные строки содержат натуральные числа от 1 до номера текущей строки включительно с шагом 1, четные строки состоят из пяти единиц.
- Выведите на экран таблицу умножения для чисел от 1 до 10.
- Найдите количество целых чисел от \(a\) до \(b\) включительно, которые делятся на 12.
- Пользователь вводит ненулевые числа до тех пор пока не введет ноль. Найдите сумму этих чисел.
- Пользователь вводит ненулевые целые числа до тех пор, пока не введет ноль. Найдите количество четных чисел, которые он ввел.
- Найдите четырехзначные числа, сумма цифр которых равна 15.
- Найдите наибольшую цифру в данном натуральном числе.
- Дано натуральное число. Найдите количество четных цифр.
- В данном натуральном числе найдите количество цифр, которые больше 3, но меньше 8.
- Для данного натурального числа найдите число, цифры которого записаны в обратном порядке.
- Найдите \(n\)-ое число Фибоначчи.
- Вычислите значения функции \(f(x)=x^2-\sin{x}\) на отрезке \([a; b]\) с шагом \(h\). Результат представить в виде таблицы.
- Найдите все делители данного натурального числа. Материал сайта www.itmathrepetitor.ru
- Определите, является ли данное число простым. Таблица простых чисел для проверки программы
- Два числа называются дружественными, если каждое из них равно сумме всех делителей второго не считая самого этого числа. Найдите все пары дружественных чисел на отрезке [a;b].
- Натуральное число называется совершенным, если оно равно сумме всех своих делителей, не равных самому числу. Найдите все совершенные числа, меньшие данного натурального числа \(n\).
- Назовем автобусный билет несчастливым, если сумма цифр его шестизначного номера делится на 13. Могут ли два идущих подряд билета оказаться несчастливыми?
- Найдите \(n\) пар простых чисел, которые отличаются друг от друга на 2.
- Найдите все натуральные числа, не превосходящие 10000, сумма цифр каждого из которых в некоторой степени равна самому числу.
- Дано число \(k\). Определите, существует ли такое число \(n\), что \(1+2+3+…+n=k\).
- Найдите, сколько точек с целочисленными координатами попадает в круг радиуса \(r\) с центром в точке \((x,y)\).
- Выведите случайную серию чисел из 0 и 1 такую, что сумма чисел в ней больше 10.
- Дано \(n\) кирпичей. Вы и компьютер ходите поочередно. за ход можно взять 1, 2 или 3 кирпича. Проиграл тот, кому нечего брать. Реализуйте игру с компьютером. Компьютер ходит случайно (без анализа выигрышной стратегии), однако если у него есть ход, который является последним для его выигрыша, то он его совершает.
- Реализуйте серию из \(n\) игр “Камень, ножницы, бумага” с компьютером. В результате выведите статистику: сколько игр выиграл пользователь, сколько раз каждого вида ходов было выбрано. Дополните игру анализом компьютера ваших ходов и выбор наиболее подходящего против вас хода.
- Сгенерировать случайную серию из 15 чисел, в которой ровно 3 единицы, остальные нули.
- Сгенерируйте серию из 10 случайных чисел от 1 до 3 и найдите: а) на сколько количество двоек больше/меньше количества троек, б) количество троек, стоящих на четных местах, в)количество двоек среди первых пяти чисел серии.
- Сгенерировать 20 серий из 0, 1, 2 таких, что сумма чисел в каждой серии равна 12. Найти количество единиц в каждой серии, количество двоек в каждой серии, длину каждой серии, среднее количество двоек в сериях, среднюю длину серий и наибольшее количество ненулевых чисел в сериях. Материал сайта www.itmathrepetitor.ru
- Сгенерируйте серию случайных чисел из 0, 1, 2 так, чтобы количество двоек было равно количеству нулей.
- Компьютер загадывает число от 1 до 100. У пользователя три попытки отгадать. После каждой неудачной попытки компьютер сообщает меньше или больше загаданное число.
- Вывести 3 случайных числа от 0 до 100 без повторений.
- Найдите количество прямоугольных треугольников с целочисленными сторонами, меньшими 100.
Работа с символами
- Пользователь вводит англ. букву, вывести следующие три по алфавиту. Если алфавит закончился, то вывести циклично с начала алфавита, то есть если z, то a b c. Вывод только маленьких букв. Учесть, что пользователь может ввести заглавную
- Вывести англ. алфавит по 5 букв в строке.
- Вывести квадрат 7 на 7 из случайных букв. Материал сайта www.itmathrepetitor.ru
- Пользователь вводит положительное целое число. Зашифровать каждую цифру серией из букв (конкретный принцип составления серии букв разработать самостоятельно).
- Сгенерируйте строку символов длины от 3 до 10, в которой ровно 2 символа “!”.
- Сгенерировать пароль для пользователя. Требования: длина от 6 до 20 символов, должен быть ровно один символ подчеркивания, хотя бы две заглавных буквы, не более 5 цифр, любые две цифры подряд недопустимы.