Решение задач. День тринадцатый. Задачи for16-24
Приветствуем читателей нашего сайта! Сегодня мы с вами решим задачи for16-24.
For16°. Дано вещественное число A и целое число N (> 0). Используя один цикл, вывести все целые степени числа A от 1 до N.
Заводим специальную переменную, в которую будем записывать новое значение степени.
For17. Дано вещественное число A и целое число N (> 0). Используя один цикл, найти сумму 1 + A + A 2 + A 3 + … + A N .
Модифицированная версия for16. В этой задаче мы не выводим значения степеней сразу, а складываем их в отдельную переменную.
For18. Дано вещественное число A и целое число N (> 0). Используя один цикл, найти значение выражения 1 – A + A 2 – A 3 + … + (–1) N ·A N . Условный оператор не использовать.
Используем дополнительную переменную, например, Z. Присваиваем значение -1 и каждый цикл умножаем значение степени на Z.
For19°. Дано целое число N (> 0). Найти произведение N! = 1·2·…·N (N–факториал). Чтобы избежать целочисленного переполнения, вычислять это произведение с помощью вещественной переменной и вывести его как вещественное число.
Каждую итерацию цикла умножаем factorial на i.
For20°. Дано целое число N (> 0). Используя один цикл, найти сумму 1! + 2! + 3! + … + N! (выражение N! — N–факториал — обозначает произведение всех целых чисел от 1 до N: N! = 1·2·…·N). Чтобы избежать целочисленного переполнения, проводить вычисления с помощью вещественных переменных и вывести результат как вещественное число.
Получая новое значение факториала, суммируем его со всеми предыдущими значениями.
For21. Дано целое число N (> 0). Используя один цикл, найти сумму 1 + 1/(1!) + 1/(2!) + 1/(3!) + … + 1/(N!) (выражение N! — N–факториал — обозначает произведение всех целых чисел от 1 до N: N! = 1·2·…·N). Полученное число является приближенным значением константы e = exp(1).
Задача аналогична предыдущей, только на этот раз мы делим единицу на значение факториала, и после этого складываем их.
For22. Дано вещественное число X и целое число N (> 0). Найти значение выражения 1 + X + X 2 /(2!) + … + X N /(N!) (N! = 1·2·…·N). Полученное число является приближенным значением функции exp в точке X.
For23. Дано вещественное число X и целое число N (> 0). Найти значение выражения X – X 3 /(3!) + X 5 /(5!) – … + (–1) N ·X 2·N+1 /((2·N+1)!) (N! = 1·2·…·N). Полученное число является приближенным значением функции sin в точке X.
Я решил, что лучше высчитывать каждую степень х и каждый факториал, а затем проверять i на четность.
For24. Дано вещественное число X и целое число N (> 0). Найти значение выражения 1 – X 2 /(2!) + X 4 /(4!) – … + (–1) N ·X 2·N /((2·N)!) (N! = 1·2·…·N). Полученное число является приближенным значением функции cos в точке X.
Аналогична предыдущей задачи.
Все! Сегодня были непростые задачи, но я надеюсь, что вы справились. Если у вас возникли вопросы пишите нам сюда или в комментарии, которые расположены чуть ниже.
Источник
Решение задач. День Пятый. Задачи Integer1-10
Совсем недавно мы закончили разбор первого раздела сборника «1000 задач по программированию» — раздела Begin. Но на этом мы не останавливаемся, и прямо сейчас начинаем разбирать новый раздел — раздел Integer. (Думаю, вы уже догадались, что все переменные, представленные в следующих задач Integer1-10 — целые числа.)
В Integer основной упор будет сделан на div и mod.
Integer1. Дано расстояние L в сантиметрах. Используя операцию деления нацело, найти количество полных метров в нем (1 метр = 100 см).
Integer2. Дана масса M в килограммах. Используя операцию деления нацело, найти количество полных тонн в ней (1 тонна = 1000 кг).
Integer3°. Дан размер файла в байтах. Используя операцию деления нацело, найти количество полных килобайтов, которые занимает данный файл (1 килобайт = 1024 байта).
Integer4. Даны целые положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Используя операцию деления нацело, найти количество отрезков B, размещенных на отрезке A.
Integer5. Даны целые положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Используя операцию взятия остатка от деления нацело, найти длину незанятой части отрезка A.
Весьма вероятно, что условия следующих задач покажутся вам знакомыми, что ничуть не странно, ведь в одном из уроков мы уже приводили решение задачи, подобной данным.
Integer6. Дано двузначное число. Вывести вначале его левую цифру (десятки), а затем — его правую цифру (единицы). Для нахождения десятков использовать операцию деления нацело, для нахождения единиц — операцию взятия остатка от деления.
Integer7. Дано двузначное число. Найти сумму и произведение его цифр.
Integer8°. Дано двузначное число. Вывести число, полученное при перестановке цифр исходного числа.
Integer9. Дано трехзначное число. Используя одну операцию деления нацело, вывести первую цифру данного числа (сотни).
Integer10. Дано трехзначное число. Вывести вначале его последнюю цифру (единицы), а затем — его среднюю цифру (десятки).
Согласитесь, что это были не очень сложные задачи, поэтому никаких объяснений и блок-схем не требуется. Если же у вас возникли какие-либо проблемы, то не стесняйтесь и пишите все свои вопросы в комментарии под этой статьей. Ну, а если вам просто понравилась эта статья, то обязательно кликайте по кнопочкам, которые расположены ниже. 🙂
Источник
Решение задач. Array1-6
Приветствуем читателей нашего сайта! Сегодня мы с вами решим задачи Array1-6.
Array1-6. (Одномерные массивы: формирование)
При выполнении заданий на формирование массива можно считать, что размер результирующего массива не превосходит 10.
Array1. Дано целое число N (> 0). Сформировать и вывести целочисленный массив размера N, содержащий N первых положительных нечетных чисел: 1, 3, 5, ….
Array2. Дано целое число N (> 0). Сформировать и вывести целочисленный массив размера N, содержащий степени двойки от первой до N-й: 2, 4, 8, 16, ….
Array3. Дано целое число N (> 1), а также первый член A и разность D арифметической прогрессии. Сформировать и вывести массив размера N, содержащий N первых членов данной прогрессии:
A, A + D, A + 2·D, A + 3·D, ….
Array4°. Дано целое число N (> 1), а также первый член A и знаменатель D геометрической прогрессии. Сформировать и вывести массив размера N, содержащий N первых членов данной прогрессии:
A, A·D, A·D 2 , A·D 3 , ….
Array5. Дано целое число N (> 2). Сформировать и вывести целочисленный массив размера N, содержащий N первых элементов последовательности чисел Фибоначчи FK:
F1 = 1, F2 = 1, FK = FK−2 + FK−1, K = 3, 4, ….
Array6. Даны целые числа N (> 2), A и B. Сформировать и вывести целочисленный массив размера N, первый элемент которого равен A, второй равен B, а каждый последующий элемент равен сумме всех предыдущих.
На сегодня всё! Если у вас возникли вопросы, задавайте их в комментариях. И не забывайте рассказывать о нашем сайте своим друзьям!
Источник
Решение задач. День шестой. Задачи Integer 11-20
Здравствуйте, дорогие читатели и юные поклонники программирования. Что является важнейшим этапом изучения программирования? Решение задач! Именно этим мы с вами сегодня и займемся. Целых десять задач Integer11-20. Если для вас эти задачи уже слишком легки, вы решаете их с закрытыми глазами и уже чувствуете, что готовы к следующему этапу обучения, то вам следует приготовиться. Следующий урок будет про особенности PascalABC.NET. Но не волнуйтесь, вместе с нами вы познаете почти все тонкости Паскаля в его современной интерпретации.
Integer11°. Дано трехзначное число. Найти сумму и произведение его цифр.
Integer12. Дано трехзначное число. Вывести число, полученное при прочтении исходного числа справа налево.
Integer13. Дано трехзначное число. В нем зачеркнули первую слева цифру и приписали ее справа. Вывести полученное число.
Integer14. Дано трехзначное число. В нем зачеркнули первую справа цифру и приписали ее слева. Вывести полученное число.
Integer15. Дано трехзначное число. Вывести число, полученное при перестановке цифр сотен и десятков исходного числа (например, 123 перейдет в 213).
Integer16. Дано трехзначное число. Вывести число, полученное при перестановке цифр десятков и единиц исходного числа (например, 123 перейдет в 132).
Integer17. Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую разряду сотен в записи этого числа.
Integer18. Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, найти цифру, соответствующую разряду тысяч в записи этого числа.
Integer19. С начала суток прошло N секунд (N — целое). Найти количество полных минут, прошедших с начала суток.
Integer20°. С начала суток прошло N секунд (N — целое). Найти количество полных часов, прошедших с начала суток.
Вот и все, дорогие друзья! Ждите новые уроки и заходите к нам на сайт почаще. Если вам понравилась эта статья, обязательно расскажите о нас вашим друзьям из любой социальной сети, может быть, они тоже хотят стать великими программистами!
Источник
Решение задач. День двенадцатый. Задачи While1-14
Приветствуем читателей learnpascal.ru! Продолжаем наш марафон по решению задач. На очереди задачи while1-14.
Чтобы решить все нижеприведенные задачи, вам надо знать материал трех уроков: div, mod, функции; логические выражения; циклы.
While1°. Даны положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти длину незанятой части отрезка A.
Умножение — это некоторое количество сложений.
While2. Даны положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти количество отрезков B, размещенных на отрезке A.
Добавляем счетчик в предыдущую задачу.
While3. Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления.
While4°. Дано целое число N (> 0). Если оно является степенью числа 3, то вывести True, если не является — вывести False.
Число будет степенью числа, если деля заданное число нацело на 3, получится N = 1.
While5. Дано целое число N (> 0), являющееся некоторой степенью числа 2: N = 2 K . Найти целое число K — показатель этой степени.
Используем метод из предыдущей задачи.
While6. Дано целое число N (> 0). Найти двойной факториал N: N! = N·(N–2)·(N–4)·… (последний сомножитель равен 2, если N — четное, и 1, если N — нечетное). Чтобы избежать целочисленного переполнения, вычислять это произведение с помощью вещественной переменной и вывести его как вещественное число.
While7°. Дано целое число N (> 0). Найти наименьшее целое положительное число K, квадрат которого превосходит N: K 2 > N. Функцию извлечения квадратного корня не использовать.
While8. Дано целое число N (> 0). Найти наибольшее целое число K, квадрат которого не превосходит N: K 2 ≤ N. Функцию извлечения квадратного корня не использовать.
While9. Дано целое число N (> 1). Найти наименьшее целое число K, при котором выполняется неравенство 3K > N.
Аналагично while 7.
While10. Дано целое число N (> 1). Найти наибольшее целое число K, при котором выполняется неравенство 3K
While11°. Дано целое число N (> 1). Вывести наименьшее из целых чисел K, для которых сумма 1 + 2 + … + K будет больше или равна N, и саму эту сумму.
Действуем аналогично предыдущим задачам.
While12°. Дано целое число N (> 1). Вывести наибольшее из целых чисел K, для которых сумма 1 + 2 + … + K будет меньше или равна N, и саму эту сумму.
While13. Дано число A (> 1). Вывести наименьшее из целых чисел K, для которых сумма 1 + 1/2 + … + 1/K будет больше A, и саму эту сумму.
Такая же как while11.
While14. Дано число A (> 1). Вывести наибольшее из целых чисел K, для которых сумма 1 + 1/2 + … + 1/K будет меньше A, и саму эту сумму.
Такая же как while12.
На сегодня все! Если у вас возникли вопросы, не стесняйтесь, задавайте их в комментариях. И не забывайте кликать по кнопочкам.
Источник