Лабораторная работа 1 "Арифметика"
- ID: 00170
- 12 страниц
Часть текста скрыта. После покупки Вы получаете полную версию
Содержание:
Лабораторная работа 1 "Арифметика"
Лабораторная работа №1 «Арифметика»
Задание: Сформировать массив простых чисел, не превышающих заданное. Сущность алгоритма состоит в проверке всех чисел от 2 до val и сохранении их в массиве, если они простые.
…
Пример работы программы:
…
Исходный текст программы:
…
Лабораторная работа №2 «Итерационные процессы и циклы»
Задание: Написать функцию вычисления суммы ряда. для диапазона значений 0.1.. 0.9 и шага 0.1 изменения аргумента вычислить значения суммы ряда и контрольной функции, к которой он сходится, с точностью до 4 знаков после запятой.
Вариант 7
Ряд Функция
n
sin(x) - sin(2x) / 2+..+(-1)sin(nx) / n x / 2
…
Пример работы программы:
…
Лабораторная работа №3 «Символы, строки, тексты»
Задание: В строке, содержащей последовательность слов, найти конец предложения, обозначенный символом "точка". В следующем слове первую строчную букву заменить на прописную.
…
Пример работы программы:
…
Исходный текст программы:
…
Лабораторная работа №4 «Сортировка и поиск»
Задание: "Быстрая" сортировка с итерационным циклом вычисления медианы. Для заданного интервала массива, в котором производится разделение, ищется медиана обычным способом. Затем выбирается та часть интервала между границей и медианой, в которой находится середина исходного интервала, и процесс повторяется.
"Быстрая сортировка” является наиболее широко применяемым и одним их самых эффективных алгоритмов.
Общая схема такова:
1. из массива выбирается некоторый опорный элемент a[i]
2. запускается процедура разделения массива, которая перемещает все ключи, меньшие, либо равные a[i], влево от него, а все ключи, большие, либо равные a[i] - вправо
3. теперь массив состоит из двух подмножеств, причем левое меньше, либо равно правого
4. для обоих подмассивов: если в подмассиве более двух элементов, рекурсивно запускаем для него ту же процедуру.
В конце получится полностью отсортированная последовательность. Рассмотрим алгоритм подробнее. На входе массив a[0]...a[N] и опорный элемент p, по которому будет производиться разделение.
1. Введем два указателя: i и j. В начале алгоритма они указывают, соответственно, на левый и правый конец последовательности.
2. Будем двигать указатель i с шагом в 1 элемент по направлению к концу массива, пока не будет найден элемент a[i] >= p.
3. Затем аналогичным образом начнем двигать указатель j от конца массива к началу, пока не будет найден a[j] <= p.
4. Далее, если i <= j, меняем a[i] и a[j] местами и продолжаем двигать i,j по тем же правилам...
5. Повторяем шаг 3, пока i <= j.
…
Блок-схема алгоритма:
…
Пример работы программы:
…
Исходный текст программы:
…
Список файлов | |
---|---|
BK32 | |
BK32.CPP | 2 КБ |
BK32.docx | 24 КБ |
BK33 | |
BK33.CPP | 1 КБ |
BK33.docx | 26 КБ |
BK34 | |
BK34.CPP | 1 КБ |
BK34.docx | 25 КБ |
BK35 | |
BK35.cpp | 2 КБ |
BK35.docx | 31 КБ |
Отчет.docx | 72 КБ |
Информация по контрольной | |
---|---|
код работы (ID) | 00170 |
просмотров | 1593 |
страниц | 12 |
автосодержание | ДА |
изображений | 7 |
оформление по ГОСТу | ДА |
были доработки | НЕТ |
проверено преподавателем НГТУ | ДА |