Вступление: Работа ориентирована на систему «Алгоритм», предназначенную для построения блок-схем. Кому это надо сейчас и кому было нужно раньше, я остаюсь в неведении, но выкладываю то, что есть. Реализацию поставленной задачи на Турбо Паскале, а также файл блок-схемы для системы «Алгоритм» можно найти в конце статьи.
Дано масив {X} розмірністю n.
Потрібно: Перетворити його так, щоб на початку масиву знаходилися від’ємні елементи в порядку зростання їх за значенням, а після них додатні елементи в порядку їхнього убування за значенням, якщо кількість від’ємних елементів у масиві не менше, чим кількість додатніх. У противному випадку від’ємні елементи повинні бути розміщені в порядку убування їх за значенням.
Обмеження: створення допоміжного масиву, попереднє сортування вихідного масиву по зростанню (убуванню) його елементів не дозволяється.
Маємо такі вхідні дані:
Спочатку треба знайти кількість від'ємних та додатніх чисел. Потім серед додатніх знаходимо максимальне і записуємо його до массиву У на ту частину, де будуть розміщені додатні числа, в першу позицію. Слідуюче за максимальним число записуємо у другу позицію і так далі.
Потім робимо перевірку:
В системі АЛГОРИТМ, побудуємо блок-схему для поставленої задачі:
Розробимо програму в Turbo Pascal для обчислення поставленої задачі та проведемо обчислення при варіанті, коли від’ємних чисел не менше, ніж додатніх.
Отримаємо такі результати:
x[1]=5.0 x[2]=-3.0 x[3]=6.0 x[4]=-4.0 x[5]=4.0 x[6]=-1.0
y[1]=-4.0 y[2]=-3.0 y[3]=-1.0 y[4]=6.0 y[5]=5.0 y[6]=4.0
Перевіримо роботу програми при кількості від’ємних чисел меншої, ніж додатніх:
x[1]=5.0 x[2]=-3.0 x[3]=6.0 x[4]=-4.0 x[5]=4.0 x[6]=1.0
y[1]=-3.0 y[2]=-4.0 y[3]=6.0 y[4]=5.0 y[5]=4.0 y[6]=1.0
Програма працює вірно.
Нажав на эту кнопку, вы сможете скачать файл с листингом программы на языке Turbo Pascal и файл с блок-схемой, созданный с помощью системы «Алгоритм».
Также вы можете посмотреть еще одну реализацию задачи с массивом на Турбо Паскале, выборочную замену знаков у элементов массива и еще один вариант по замене знаков.
Завдання
Дано масив {X} розмірністю n.
Потрібно: Перетворити його так, щоб на початку масиву знаходилися від’ємні елементи в порядку зростання їх за значенням, а після них додатні елементи в порядку їхнього убування за значенням, якщо кількість від’ємних елементів у масиві не менше, чим кількість додатніх. У противному випадку від’ємні елементи повинні бути розміщені в порядку убування їх за значенням.
Обмеження: створення допоміжного масиву, попереднє сортування вихідного масиву по зростанню (убуванню) його елементів не дозволяється.
Маємо такі вхідні дані:
- Масив Х.
- n – кількість елементів масиву.
Теоретична схема вирішення задачі
Спочатку треба знайти кількість від'ємних та додатніх чисел. Потім серед додатніх знаходимо максимальне і записуємо його до массиву У на ту частину, де будуть розміщені додатні числа, в першу позицію. Слідуюче за максимальним число записуємо у другу позицію і так далі.
Потім робимо перевірку:
- Якщо від’ємних чисел не менше, ніж додатніх, то знаходимо мінімальне число серед від’ємних і записуємо його до масиву У на ту частину, де будуть розміщені від’ємні числа, в першу позицію. Слідуюче за мінімальним число записуємо у другу позицію і так далі.
- Якщо від’ємних менше, ніж додатніх, то знаходимо максимальне число серед від’ємних і записуємо його до масиву У на ту частину, де будуть розміщені від’ємні числа, в першу позицію. Слідуюче за максимальним число записуємо у другу позицію і так далі.
Будування блок-схеми
В системі АЛГОРИТМ, побудуємо блок-схему для поставленої задачі:
Результати обчислень
Розробимо програму в Turbo Pascal для обчислення поставленої задачі та проведемо обчислення при варіанті, коли від’ємних чисел не менше, ніж додатніх.
Отримаємо такі результати:
Похідний масив
x[1]=5.0 x[2]=-3.0 x[3]=6.0 x[4]=-4.0 x[5]=4.0 x[6]=-1.0
Результуючий масив
y[1]=-4.0 y[2]=-3.0 y[3]=-1.0 y[4]=6.0 y[5]=5.0 y[6]=4.0
Перевіримо роботу програми при кількості від’ємних чисел меншої, ніж додатніх:
Похідний масив
x[1]=5.0 x[2]=-3.0 x[3]=6.0 x[4]=-4.0 x[5]=4.0 x[6]=1.0
Результуючий масив
y[1]=-3.0 y[2]=-4.0 y[3]=6.0 y[4]=5.0 y[5]=4.0 y[6]=1.0
Програма працює вірно.
Нажав на эту кнопку, вы сможете скачать файл с листингом программы на языке Turbo Pascal и файл с блок-схемой, созданный с помощью системы «Алгоритм».
Также вы можете посмотреть еще одну реализацию задачи с массивом на Турбо Паскале, выборочную замену знаков у элементов массива и еще один вариант по замене знаков.
Комментариев нет:
Отправить комментарий