Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основна частина.doc
Скачиваний:
1
Добавлен:
16.12.2018
Размер:
1.84 Mб
Скачать

Розділ 3. Опис алгоритмів розв’язання задачі

Програма «розгалужений алгоритм». Для розв’язання задачі № 1 необхідно об’явити одну змінну дійсного типу. Ініціалізація цієї змінної відводиться користувачу. Після цього необхідно порівняти значення змінної за умовою, що вказана в задачі. В залежності від виконання чи невиконання умови потрібно вивести на екран відповідну інформацію.

Програма «цикли». Для розв’язання задачі № 2, потрібно, щоб користувач ввів початкові значення аргументів функції:

За умовою задачі параметр a змінюється від до із кроком . Приріст параметру a, також встановлюється користувачем. Для обчислення значення функції використовується цикл умовою якого є: . Кожна ітерація циклу повинна давати чергове значення функції. В тілі циклу необхідна перевірка підкореневого виразу, тобто чи не є він від’ємний, якщо це так потрібно вивести повідомлення про помилку. Також в тілі циклу необхідно розмістити інструкцію виведення на екран поточного значення параметру a, та значення функції. Цикл повинен завершуватись наступною інструкцією: .

Програма «Масиви». Нехай p – кількість пунктів, k – кількість кандидатів. Значення p, k встановлює користувач. Необхідно створити матрицю q розмірності . Дана матрицю ініціалізувати випадковими числами за вказаним діапазоном.

Після цього знайти суму кожного стовпця матриці q і помістити результати наприклад у вектор s. Далі необхідно знайти найбільший елемент у векторі s, і запам’ятати його індекс:

m=s[0];

ip=0;

for(i=1; i < p; ++i)

if(s[i] > m) {m = s[i]; ip = i;}

Після цього вивести на екран вміст таблиць, та значення індексу встановленого індексу.

Програма «текстові дані». Розв’язок цієї задачі починається з відкриття текстового файлу для зчитування з нього даних. Отриману інформацію помістити у вектор типу char. Вважається, що вектор достатньо великий, щоб вмістити всю необхідну інформацію з файлу. Після цього виконується безпосереднє шифрування, яке здійснюється додаванням деякого константного числа до кожного елемента вектора:

for (i = 0; i < n; i++) a[i] += 4;

Далі змінений вектор записується в інший файл згідно умови.

Програма «емблема». Спочатку необхідно виконати зображення смайлика.

Смайлик складатиметься з кола, в якому будуть зображені очі у вигляді двох кіл і посмішки, яка буде виконана у вигляді дуги. Щоб смайлик розташовувався в потрібному місці згідно умови задачі, кожний його елемент прив’язується до відповідних координат. Моргання ока смайлика здійснюється за допомогою циклу з обмеженою кількістю ітерацій. Тіло циклу складається з послідовної зміни кольору ока при кожній ітерації, з визначеною затримкою зображення на екрані.

Програма «файли». В цій задачі необхідно знайти середнє арифметичне для чисел, які б задовольняли вказану умову в задачі. Алгоритм є досить прямолінійний. Спочатку користувач встановлює значення кількості компонент – N. Створюється файл для запису. В циклі який здійснює N ітерацій генерується випадкове число, яке потім записується у файл. Якщо число задовольняє визначену умову то воно додається додається до деякої змінної цілого типу, початкове значення до запуску циклу має дорівнювати нулю. Також необхідно порахувати кількість випадкових чисел, які задовольняють визначену умову. Після завершення циклу потрібно розділити суму випадкових чисел, які задовольняють умову на їх кількість. Результат вивести на екран.

Програма «титульна сторінкаю». Для цієї задачі необхідно вибрати фон і колір тексту, розміри шрифту. Вивести на екран відповідний текст із заданими координатами. Зобразити рамку.

Програма «монітор». Створюється пункти меню. Оголошується одна змінна цілого типу для оператора switch. В залежності від значення цієї змінної відбуватиметься перехід до вибраного пункту меню. Значення змінної встановлює користувач. За допомогою оператора goto після завершення роботи вибраної підпрограми потрібно здійснити перехід на початок меню. Також необхідно передбачити вихід з програми.