Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Практикум по основам программирования. Скалярные типы. Управляющие операторы. Учебное пособие
.pdf
28 Дана последовательность из n целых чисел x1, x
2 , . . . , xn
. Подсчитай-
те число инверсий в этой последовательности. Инверсия – это пара
элементов, в которой xi > xj при i < j и ׀i – j׀ = 1.
29 Дана последовательность из n целых чисел. Напечатайте новую по-
следовательность, i-й элемент которой равен произведению элементов исходной последовательности, начиная с ее первого элемента по i-й включительно.
30 Дана последовательность из n целых чисел. Вычислите среднее
арифметическое элементов последовательности без учета минимального и максимального ее элементов.
31 Дана последовательность символов, оканчивающаяся точкой. Под-
считайте, сколько раз в этой последовательности встречаются
строчные латинские буквы 'a' и 'z'.
32 Дана последовательность символов, оканчивающаяся точкой. Про-
верьте, выполняется ли чередование символов цифр и строчных латинских букв в этой последовательности.
33 Дана непустая последовательность ненулевых целых чисел, за ко-
торой следует 0. Определить, сколько раз в этой последовательности меняется знак.
34 Дана непустая последовательность положительных вещественных
чисел, за которой следует отрицательное число. Определить,
сколько в ней чисел больших своих «соседей», т. е. предыдущего и
последующего чисел.
35 Дана непустая последовательность из n вещественных чисел. Най-
ти порядковый номер того из них, которое наиболее близко к какому-нибудь целому числу.
36 Дана непустая последовательность из n вещественных чисел. Оп-
ределить, является ли она возрастающей последовательностью.
37 Дана непустая последовательность различных натуральных чисел,
за которой следует 0. Определить порядковый номер наименьшего
из них.
61

38 Дана последовательность из n вещественных чисел. Вычислить
разность между максимальным и минимальным из них.
39 Дана последовательность из n вещественных чисел, среди которых
есть хотя бы одно отрицательное число. Найти величину наибольшего среди отрицательных чисел последовательности.
40 Дана последовательность из n целых чисел. Определить со сколь-
ких отрицательных чисел она начинается.
41 Дана последовательность из n вещественных чисел. Определить
сколько из них принимает наибольшее значение.
42 Дана последовательность из n целых чисел. Определить количество
чисел в наиболее длинной подпоследовательности из подряд идущих нулей.
43 Дана последовательность из n вещественных чисел (n заранее неиз-
вестно). Найти порядковые номера наибольшего и наименьшего
значений среди них.
44 Дана непустая последовательность, в которую могут входить толь-
ко цифры и буквы, проверить является ли она десятичной записью
числа, кратного 6.
45 Дано не менее трех различных натуральных чисел, за которыми
следует 0. Определить три наибольших числа среди них.
46 Найти сумму цифр заданного натурального числа.
47 Определить число, получаемое выписыванием в обратном порядке
цифр заданного натурального числа.
48 Вычислить сумму квадратов всех целых чисел, попадающих в ин-
тервал (ln x, ex), при x > 1.
49 Вычислить количество точек с целочисленными координатами, по-
падающих в круг радиуса r (r > 0).
50 Проверить является ли заданное натуральное число k степенью 3.
51 Подсчитать количество разрядов в заданном натуральном числе.
62

2 4 6
cos 1 ...
2! 4! 6!
x x x
x
cos
d
x
c
e dx
52 Вычислить y = n!!, n > 0, если
y = (2n – 1)!! = 1∙3∙5∙…∙(2n – 1), n>0;
y = (2n)!! = 2∙4∙…∙(2n), n>0.
53 Вычислить y= 1! + 2! + 3! + … + n!, n > 1.
54 Вычислить по схеме Горнера: y = x
10
+ 2x9 + 3x8 + …+ 10 x+ 11.
55 Вычислить значения функции cos x. Для вычисления функции cos x
использовать ее представление в виде ряда:
56 Вычисление произвести с заданной точностью ε. Считать, что тре-
буемая точность достигнута, если очередное слагаемое по модулю
меньше eps (все последующие слагаемые не учитывать).
57 Вычислить с заданной точностью eps значение функции sin x, ис-
пользуя степенной ряд: sin x = x – x3 / 3! + x5 / 5! – x7 / 7!+ …
58 Считать, что требуемая точность достигнута, если очередное сла-
гаемое по модулю меньше eps (все последующие слагаемые не
учитывать).
59 Найти первое число Фибоначчи, большее m (m > 0). Числа Фибо-
наччи fn определяются формулами:
60 Вычислить сумму всех чисел Фибоначчи, которые не превосходят
заданного m.
61 Вычислить y = cos x + cos x2 + cos x3 + …+ cos x30.
62 Определить, есть ли среди чисел sin xn (n = 1, 2, …, 30) хотя бы од-
но отрицательное.
63 При заданном n приближенно вычислить
формулу трапеций:
f0 = f1 = 1; fn = f
n-1
+ f
при n = 2, 3, … .
n-2
63
, используя

( ) ( )
( ) ( ) ( 2 ) ( )
22
b
a
f a f b
f x dx h f a h f a h f b h
,
где h = (b - a) / n.
Задачи для самостоятельной работы
1 Дано целое число N (> 0). Найти произведение
1.1 ∙ 1.2 ∙ 1.3 ∙ …
(N сомножителей).
2 Дано целое число N (> 0). Найти значение выражения
1.1 − 1.2 + 1.3 − …
(N слагаемых, знаки чередуются). Условный оператор не использовать.
3 Дано целое число N (> 0). Найти квадрат данного числа, используя
для его вычисления следующую формулу:
N2 = 1 + 3 + 5 + … + (2∙N − 1).
4 После добавления к сумме каждого слагаемого выводить текущее
значение суммы (в результате будут выведены квадраты всех целых чисел от 1 до N).
5 Дано вещественное число A и целое число N (> 0). Используя один
цикл, найти значение выражения
1 − A + A2 − A3 + … + (−1)N∙AN.
Условный оператор не использовать.
6 Дано целое число N (> 0). Используя один цикл, найти сумму
1! + 2! + 3! + … + N!
(выражение N! — N–факториал — обозначает произведение всех
целых чисел от 1 до N: N! = 1∙2·…·N). Чтобы избежать целочисленного переполнения, проводить вычисления с помощью вещественных переменных и вывести результат как вещественное число.
64

7 Дано целое число N (> 0). Используя один цикл, найти сумму
1 + 1 / 1! + 1 / 2! + 1 / 3! + … + 1 / N!
(выражение N! — N–факториал — обозначает произведение всех
целых чисел от 1 до N: N! = 1∙2∙…∙N). Полученное число является
приближенным значением константы e = exp(1).
8 Дано вещественное число x и целое число N (> 0). Найти значение
выражения
x − x3 / 3! + x5 / 5! − … + (−1)N∙x
2∙N+1
/ (2∙N+1)!
(N! = 1∙2·…·N). Полученное число является приближенным значением функции sin в точке x.
9 Дано целое число N (> 1) и две вещественные точки на числовой
оси: A, B (A < B). Отрезок [A, B] разбит на N равных отрезков. Вывести H — длину каждого отрезка, а также значения функции F(x)
= 1 – sin x в точках, разбивающих отрезок [A, B]:
F(A), F(A + H), F(A + 2·H), …, F(B).
10 Дано целое число N (> 1). Последовательность чисел Фибоначчи FK
(целого типа) определяется следующим образом:
F1 = 1, F2 = 1, FK = F
K−2
+ F
, K = 3, 4, … .
K−1
Вывести элементы F1, F2, …, FN.
11 Дано целое число N (> 0). Найти сумму
N−1
1N + 2
+ … + N1.
Чтобы избежать целочисленного переполнения, вычислять слагаемые этой суммы с помощью вещественной переменной и выводить
результат как вещественное число.
12 Дано целое число N и набор из N целых чисел. Найти номера пер-
вого минимального и последнего максимального элемента из данного набора и вывести их в указанном порядке.
13 Дано целое число N и набор из N целых чисел, содержащий только
нули и единицы. Найти номер элемента, с которого начинается са-
65

мая длинная последовательность одинаковых чисел, и количество
элементов в этой последовательности. Если таких последовательностей несколько, то вывести номер первой из них.
14 Дано целое число N и набор из N целых чисел. Найти минимальное
количество подряд идущих максимальных элементов из данного
набора.
15 Дано целое число N (> 0). Найти двойной факториал N:
N!! = N∙(N − 2)∙(N − 4)∙…
(последний сомножитель равен 2, если N – четное, и 1, если N – нечетное). Чтобы избежать целочисленного переполнения, вычислять
это произведение с помощью вещественной переменной и вывести
его как вещественное число.
16 Дано целое число N (> 0). Найти наименьшее целое положительное
число K, квадрат которого превосходит N: K2 > N. Функцию извлечения квадратного корня не использовать.
17 Дано целое число N (> 0). С помощью операций деления нацело и
взятия остатка от деления определить, имеются ли в записи числа N
нечетные цифры. Если имеются, то вывести true, если нет – вывести false.
18 Дано целое число N (> 1). Если оно является простым, т. е. не име-
ет положительных делителей, кроме 1 и самого себя, то вывести
true, иначе вывести false.
19 Даны целые положительные числа A и B. Найти их наибольший
общий делитель (НОД), используя алгоритм Евклида:
НОД(A, B) = НОД(B, A mod B), если B ≠ 0; НОД(A, 0) = A,
где «mod» обозначает операцию взятия остатка от деления.
20 Дано целое число N (> 1). Найти первое число Фибоначчи, большее
N.
21 Используя оператор цикла записать последовательность операто-
ров для решения задачи:
66

а) вычисление f = 10! описать каждым из трех вариантов оператора
цикла;
б) логической переменной присвоить значение true или false в зависимости от того, является ли натуральное число k степенью 3 или
нет;
в) определить порядковый номер наибольшего из элементов непустой последовательности натуральных чисел, оканчивающейся нулем;
г) найти наибольшее и наименьшее значения в последовательности
из n (> 1) вещественных чисел;
д) вычислить по схеме Горнера:
y = 11 x10 + 10 x9 + 9 x8 + … +2 x + 1;
е) вычислить значение многочлена:
a0 xn + a1 x
n-1
+ ... + a
n-1
x + a
n
и его производной в точке t2 + 0.5;
ж) вычислить значение n!! = 1·3·5·... ·n, если n > 0 и нечетно;
з) вычислить значение n!! = 2·4·6·... ·n, если n > 0 и четно;
и) вычислить значение n!!, если n > 0. Известно, что при n – нечетном n!! = 1·3·5·... ·n, а при n – четном n!! = 2·4·6·... ·n;
к) вычислить значение 2! + 4! + 6! + ... + n!, если n > 1;
л) вычислить значение cos x + cos x2 + cos x3 + … + cos x30 ;
Контрольные вопросы
1. Понятие цикла.
2. Циклические структуры while и do – их синтаксис и семантика.
3. Понятие итерационного цикла.
4. Программирование итерационных вычислений.
5. Структура программы на языке C.
6. Простые типы и циклы.
67

БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1 Тракимус Ю. В. Практикум по основам программирования. Мас-
сивы. Строки. Подпрограммы : учебное пособие / Ю. В. Тракимус,
В. П. Хиценко. – Новосибирск : Изд-во НГТУ, 2021. – 96 с.
2 Тракимус Ю. В. Основы программирования : учебное пособие /
Ю. В. Тракимус, В. П. Хиценко. – Новосибирск : Изд-во НГТУ,
2020. – 78 с.
3 Тракимус Ю. В. Разработка консольных приложений с помощью
Microsoft Visual Studio 2017 : учебное пособие / Ю. В. Тракимус. –
Новосибирск : Изд-во НГТУ, 2018. – 64 с. –
URL: https://elibrary.nstu.ru/source?bib_id=vtls000239787 (дата об-
ращения: 27.12.2021).
4 Керниган Б. У. Язык программирования С (Си) / Б. У. Керниган,
Д. М. Ритчи ; пер. с англ. В. Бродового. – 2-е изд. – Москва : Вильямс, 2015. – 288 с.
5 Дейтел П. Дж. Как программировать на C / П. Дж. Дейтел,
Х. М. Дейтел ; пер. с англ. под ред. С. Банникова. – 7-е изд. – Москва : Бином, 2017. – 1008 с.
6 Прата С. У. Язык программирования C. Лекции и упражнения :
пер. с англ. / С. У. Прата. – 6-е изд. – Москва : Вильямс, 2019. –
928 с.
7 Подбельский В. В. Курс программирования на языке C /
В. В. Подбельский. – 2-е изд., перераб. – Москва : ДМК Пресс,
2017. – 384 с.
8 Абрамян М. Э. Programming Taskbook : электронный задачник по
программированию / М. Э. Абрамян. –
URL: http://www.ptaskbook.com/ru/tasks/index.php (дата обращения:
27.12.2021).
9 Пильщиков В. Н. Сборник упражнений по языку Паскаль /
В. Н. Пильщиков. – Москва : Наука, 1989. – 160 с.
68
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
