- •Введение
- •4. Программы циклической структуры (продолжение, см. предыдущую часть [1])
- •4.9. Приёмы вычисления сумм, произведений и экстремальных значений
- •Вычисление суммы и произведения
- •Нахождение наибольшего или наименьшего значения
- •4.10. Пример выполнения задания А
- •4.11. Задания А для самостоятельной работы
- •4.12. Пример выполнения задания Б
- •4.13. Задания Б для самостоятельной работы
- •4.14. Вычисление суммы бесконечного ряда с заданной точностью
- •4.15. Вывод рекуррентной формулы для вычисления члена ряда
- •Способы вычисления значения члена ряда
- •4.16. Примеры выполнения задания
- •4.17. Задания для самостоятельной работы
- •4.18. Уточнение корней уравнений
- •Метод простых итераций
- •Метод половинного деления
- •Метод касательных
- •4.19. Пример выполнения задания
- •4.20. Задания для самостоятельной работы
- •4.21. Вычисление определённых интегралов
- •4.22. Пример выполнения задания
- •4.23. Задания для самостоятельной работы
- •5. Организация программ со структурой вложенных циклов
- •5.1.Вычисление определенного интеграла с заданной точностью
- •5.2. Задания для самостоятельной работы
- •5.3.Вычисление наибольшего (наименьшего) значения функции с заданной точностью на заданном интервале
- •5.4. Задания для самостоятельной работы
- •5.5.Обработка матриц
- •5.6.Примеры выполнения задания на обработку матриц
- •5.7. Задания для самостоятельной работы
- •5.8.Методы сортировки массивов
- •Метод включения с сохранением упорядоченности (метод прямого включения или сортировка вставками).
- •Метод прямого обмена (метод пузырька).
- •Метод прямого выбора (сортировки посредством выбора) и его модификации
- •Сортировка методом поиска минимального элемента
- •Сортировка методом поиска максимального элемента
- •Сортировка методом поиска индекса минимального элемента
- •Сортировка методом поиска индекса максимального элемента
- •5.9.Пример выполнения задания
- •5.10. Задания для самостоятельной работы
- •Приёмы вычисления сумм, произведений и экстремальных значений
- •Вычисление суммы бесконечного ряда с заданной точностью
- •Вложенные циклы
- •Список литературы
105
imax=i;
for (k=i+1;k<n;k++)
if (x[k]>x[imax]) imax=k;
//Взаимная перестановка X[i] с X[iMax] y=x[i];
x[i]=x[imax];
x[imax]=y;
#ifdef dbg
//Операторы, используемые при отладке
//Вывод массива после перестановки элементов X[i] с X[imax] printf("\n Promeshutochnij massiw\n");
for (k=0;k<n;k++) printf("%5.2f ",x[k]);
printf("\n imax=%d\n",imax);
#endif dbg
i++; }while (i<n-1);
printf("\n Otsortirowannij massiw\n"); for (i=0;i<n;i++)
printf("%5.2f ",x[i]); getch();
return 0;
}
5.10. Задания для самостоятельной работы
Составить программу упорядочения первых N, N ≤12, элементов массива X. Вид сортировки, а также метод сортировки и операторы внешнего и внутреннего циклов, которые следует использовать в программе, указаны для каждого варианта в расположенной ниже таблице.
При отладке использовать начальные значения N и массива X, а также выполнять форматный вывод первых N элементов массива одной строкой в конце каждого шага выполнения работ во внешнем цикле.
|
Вид |
Метод |
Оператор |
Оператор |
|
№ |
внешнего |
внутреннего |
|||
сортировки |
сортировки |
||||
|
|
|
цикла |
цикла |
|
|
|
|
|
|
|
1 |
по |
прямого |
while |
while |
|
возрастанию |
включения |
||||
|
|
|
|
|
Оглавление
Ю.Е. Алексеев, А.В. Куров «Практикум по программированию на языке C в среде VS C++» Часть 2
106
|
|
|
for |
for |
|
2 |
по |
выбора |
с положительным |
с положительным |
|
убыванию |
максимального |
приращенирем |
приращением |
||
|
|||||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
|
|
|
for |
for |
|
3 |
по |
выбора |
с положительным |
с отрицательным |
|
возрастанию |
минимального |
приращением |
приращением |
||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
|
4 |
по |
выбора индекса |
while |
с отрицательным |
|
убыванию |
максимального |
приращением |
|||
|
|
||||
|
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
for |
|
|
5 |
по |
выбора индекса |
с отрицательным |
while |
|
возрастанию |
минимального |
приращением |
|||
|
|
|
параметра |
|
|
|
|
|
|
|
|
6 |
по |
прямого обмена |
do-while |
do-while |
|
убыванию |
(пузырька) |
||||
|
|
|
|||
|
|
|
|
|
|
|
|
модифицированного |
|
for |
|
|
по |
|
с отрицательным |
||
7 |
прямого обмена |
while |
|||
возрастанию |
приращением |
||||
|
|
(пузырька) |
|
параметра |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
for |
|
|
8 |
по |
прямого |
с положительным |
while |
|
убыванию |
включения |
приращением |
|||
|
|
||||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
|
|
9 |
по |
выбора |
с положительным |
while |
|
возрастанию |
максимального |
приращением |
|||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
for |
|
10 |
по |
выбора |
с отрицательным |
с положительным |
|
убыванию |
минимального |
приращением |
приращением |
||
|
|||||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
Оглавление
Ю.Е. Алексеев, А.В. Куров «Практикум по программированию на языке C в среде VS C++» Часть 2
107
|
|
|
for |
for |
|
11 |
по |
выбора индекса |
с отрицательным |
с положительным |
|
возрастанию |
максимального |
приращением |
приращением |
||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
|
|
|
for |
|
|
12 |
по |
выбора индекса |
с положительным |
do-while |
|
убыванию |
минимального |
приращением |
|||
|
|
||||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
|
|
13 |
по |
прямого обмена |
с отрицательным |
while |
|
возрастанию |
(пузырька) |
приращением |
|||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
модифицированного |
|
for |
|
|
по |
|
с отрицательным |
||
14 |
прямого обмена |
do-while |
|||
убыванию |
приращением |
||||
|
(пузырька) |
|
|||
|
|
|
параметра |
||
|
|
|
|
||
|
|
|
|
|
|
|
|
|
for |
|
|
15 |
по |
прямого |
с положительным |
while |
|
возрастанию |
включения |
приращением |
|||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
for |
|
16 |
по |
выбора |
с отрицательным |
с отрицательным |
|
убыванию |
максимального |
приращением |
приращением |
||
|
|||||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
|
|
|
for |
|
|
17 |
по |
выбора |
с положительным |
do-while |
|
возрастанию |
минимального |
приращением |
|||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
for |
|
18 |
по |
выбора индекса |
с положительным |
с положительным |
|
убыванию |
максимального |
приращением |
приращением |
||
|
|||||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
19 |
по |
выбора индекса |
while |
do-while |
|
возрастанию |
минимального |
||||
|
|
|
|
|
Оглавление
Ю.Е. Алексеев, А.В. Куров «Практикум по программированию на языке C в среде VS C++» Часть 2
108
|
|
|
for |
for |
|
20 |
по |
прямого обмена |
с отрицательным |
с положительным |
|
убыванию |
(пузырька) |
приращением |
приращением |
||
|
|||||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
21 |
по |
прямого |
do-while |
while |
|
возрастанию |
включения |
||||
|
|
|
|
|
|
|
|
|
for |
for |
|
22 |
по |
выбора |
с положительным |
с отрицательным |
|
убыванию |
максимального |
приращением |
приращением |
||
|
|||||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
|
|
|
for |
|
|
23 |
по |
выбора |
с отрицательным |
while |
|
возрастанию |
минимального |
приращением |
|||
|
|
|
параметра |
|
|
|
|
|
|
|
|
|
|
|
for |
for |
|
24 |
по |
выбора индекса |
с отрицательным |
с отрицательным |
|
возрастанию |
максимального |
приращением |
приращением |
||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
25 |
по |
выбора индекса |
do-while |
while |
|
убыванию |
минимального |
|
|||
|
|
|
|||
|
|
|
|
|
|
|
|
|
for |
for |
|
26 |
по |
прямого обмена |
с положительным |
с отрицательным |
|
возрастанию |
(пузырька) |
приращением |
приращением |
||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
|
|
|
модифицированного |
|
for |
|
|
по |
|
с положительным |
||
27 |
прямого обмена |
do-while |
|||
убыванию |
приращением |
||||
|
(пузырька) |
|
|||
|
|
|
параметра |
||
|
|
|
|
||
|
|
|
|
|
|
|
|
|
for |
for |
|
28 |
по |
выбора индекса |
с положительным |
с положительным |
|
возрастанию |
минимального |
приращением |
приращением |
||
|
|
|
параметра |
параметра |
|
|
|
|
|
|
Оглавление
Ю.Е. Алексеев, А.В. Куров «Практикум по программированию на языке C в среде VS C++» Часть 2
109
|
по |
модифицированного |
|
|
|
29 |
прямого обмена |
while |
do-while |
||
возрастанию |
|||||
|
|
(пузырька) |
|
|
|
|
|
|
|
|
|
|
|
|
|
for |
|
30 |
По |
выбора индекса |
do-while |
с положительным |
|
убыванию |
максимального |
приращением |
|||
|
|
||||
|
|
|
|
параметра |
|
|
|
|
|
|
Оглавление
Ю.Е. Алексеев, А.В. Куров «Практикум по программированию на языке C в среде VS C++» Часть 2
110
Алфавитный указатель |
|
Бесконечный ряд.......................................................................................................................... |
21 |
Вложенные циклы....................................................................................................................... |
57 |
Внешний цикл.............................................................................................................................. |
57 |
Внутренний цикл......................................................................................................................... |
57 |
Двумерный массив ...................................................................................................................... |
79 |
Матрицы....................................................................................................................................... |
79 |
Метод касательных...................................................................................................................... |
38 |
Метод парабол ............................................................................................................................ |
45 |
Метод половинного деления...................................................................................................... |
37 |
Метод простых итераций............................................................................................................ |
34 |
Метод прямого включения................................................................................................. |
99, 102 |
Метод прямого выбора............................................................................................................. |
103 |
Метод прямого обмена............................................................................................................. |
100 |
Метод прямоугольников............................................................................................................. |
45 |
Метод пузырька ........................................................................................................................ |
100 |
Метод Симпсона......................................................................................................................... |
45 |
Метод трапеций ......................................................................................................................... |
45 |
Общая формула члена ряда........................................................................................................ |
21 |
Объявление типа двумерного массива...................................................................................... |
79 |
Рекуррентная формула члена ряда............................................................................................ |
21 |
Смешанный способ вычисления члена ряда............................................................................. |
22 |
Сортировки.................................................................................................................................. |
98 |
Сумма ряда................................................................................................................................... |
21 |
Упорядочения............................................................................................................................... |
98 |
Член ряда...................................................................................................................................... |
21 |
Оглавление
Ю.Е. Алексеев, А.В. Куров «Практикум по программированию на языке C в среде VS C++» Часть 2