Частина тексту файла (без зображень, графіків і формул):
НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ
“КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ
імені ІГОРЯ СІКОРСЬКОГО”
ЗВІТ
з практичного завдання №3
з навчальної дисципліни “Програмування складних алгоритмів”
Тема:
«ПРОГРАМУВАННЯ З ВИКОРИСТАННЯМ
АЛГОРИТМІВ СОРТУВАННЯ»
Варіант 18
Мета:
Мета заняття – отримання знань і навичок, необхідних для виконання сортування даних, ознайомлення з базовими методами та алгоритмами сортування, використання їх на практиці в процесі розроблення програм мовою програмування С++ (Java ... інші)
Завдання
1. Відповідно за номером по журналу виберіть індивідуальне завдання.
2. Розробіть алгоритм вирішення завдання (блок-схема або пояснення).
3. Складіть текст програми (обрати два метода із розглянутих чотирьох).
4. Створіть проект в інтегрованому середовищі розробки ...... (pract_№_призвище.cpp або pract_№_призвище.java).
5. Запустіть програму на виконання, проаналізуйте результати (двох методів за часом) і переконайтеся в правильності рішення задачі.
/
Результат роботи програми
/
Код програми
https://replit.com/join/npffccugbk-okseniait
#include <stdio.h>
#define N 20
int main(void) {
// Створення масиву
int arr[N];
int arr2[N];
int i, j, k, t;
// Ініціалізація масиву рандомними числами(0-50)
for (i=0; i<N; i++){
arr[i]=rand()%50;
}
// Копіювання масиву
for (i=0; i<N; i++){
arr2[i]=arr[i];
}
//Вивід масиву
printf("Початковий масив: \n");
for (i=0; i<N; i++){
printf("%d \t", arr[i]);
}
printf("\n\nВідсортований масив: ");
//Упорядкувати масив методом вставки
//Елементи з парними індексами (0-18) за спаданням
for (i=1; i<N; i=i+2){
t=arr[i];
for (j=i-2; j>=0 && arr[j]>t; j=j-2){
arr[j+2] = arr[j];
}
arr[j+2] = t;
}
//Елементи з непарними індексами (1-19) за зростанням
for (i=2; i<N; i=i+2){
t = arr[i];
for (j=i-2; j>=0 && arr[j]<t; j=j-2){
arr[j+2] = arr[j];
}
arr[j+2] = t;
}
//Вивід відсортованого масиву
printf("\nМетод вставки: \n");
for (i=0; i<N; i++){
printf("%d \t", arr[i]);
}
printf("\n\nМетод вибору: \n");
//Упорядкувати масив методом вибору
//Елементи з парними індексами (0-18) за спаданням
for (i=0; i<N; i=i+2){
k=i;
t=arr2[i];
for (j=i+2; j<N; j=j+2){
if(arr2[j]>t){
k=j;
t=arr2[j];
}
}
arr2[k]=arr2[i];
arr2[i]=t;
}
for (i=1; i<N-1; i=i+2){
k=i;
t=arr2[i];
for (j=i+2; j<N; j=j+2){
if(arr2[j]<t){
k=j;
t=arr2[j];
}
}
arr2[k]=arr2[i];
arr2[i]=t;
}
//Вивід відсортованого масиву
for (i=0; i<N; i++){
printf("%d \t", arr2[i]);
}
return 0;
}
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!