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