C++. Демонстрація використання циклу for в програмах. Приклад обчислення суми ряду




Демонстрація використання циклу for в програмах. Приклад обчислення суми ряду

У даній роботі продемонстровано застосування циклічного процесу для знаходження суми ряду. Програма реалізована на мові програмування C++ з використанням засобів Microsoft Visual Studio.

 

Умова задачі

Використовуючи оператор циклу з параметром for знайти суму ряду:

Виконання

1. Створення проекту

Завантажити MS Visual Studio. Створити проект за шаблоном “Visual C++ – Windows Forms Application“. Приклад створення додатку за даним шаблоном детально описується тут.

 

2. Розміщення елементів управління

Згідно з умовою задачі, в програмі фігурує змінна n, яку потрібно ввести з клавіатури. Тому, форма програми буде мати вигляд, як зображено на рисунку 1.

Рисунок 1. Головна форма програми

На формі розміщуються такі елементи управління:

  • два елементи управління типу Label з іменами label1 та label2;
  • елемент управління типу Button з іменем button1;
  • елемент управління типу TextBox з іменем textBox1.

 

3. Налаштування властивостей елементів управління.

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

В елементах управління налаштувати наступні властивості:

  • в елементі управління label1 властивість Text = “n = “;
  • в button1 властивість Text = “Обчислити“;
  • в Form1 властивість Text = “Сума ряду“;
  • в label2 властивість Text = “Сума ряду = “.

Після налаштування, форма програми прийме вигляд як показано на рисунку 2.

Рисунок 2. Головна форма програми

 

4. Програмування події кліку на кнопці “Обчислити

При кліку на кнопці “Обчислити” буде проводитись розрахунок суми ряду.

В цьому випадку потрібно запрограмувати подію Click елементу управління button1. Детальний приклад програмування події Click описується тут.






Лістинг обробника події Click наступний:

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
{
    float summa;
    int i, n;

    try
    {
        if (textBox1->Text == "") throw -1;

        // взяти значення n
        n = n.Parse(textBox1->Text);

        // обчислення суми
        summa = 0;
        for (i=1; i<=n; i++)
            summa = summa + 1.0/i;

        // виведення результату на екран
        label2->Text = "Сума ряду = " + summa.ToString();
    }
    catch (int e)
    {
        if (e == -1)
            label2->Text = "Помилка! Не введено значення n";
    }
}

Для обчислення суми ряду використовується цикл for. Загальний вигляд циклу:

for (ініціалізація; вираз; інкремент)
{
    послідовність_інструкцій
}

де

  • ініціалізація – інструкція присвоювання, яка встановлює управляючу змінну циклу в початкове значення. Управляюча змінна циклу є лічильником. У нашому випадку управляючою змінною циклу є змінна з іменем i. На початку змінній i присвоюється значення 1 згідно з умовою задачі;
  • вираз – умовний вираз, в якому здійснюється перевірка значення змінної i. Цикл виконується до тих пір, доки значення елементу вираз є істинним. У нашому випадку здійснюється перевірка i<=n;
  • інкремент – вираз, що визначає зміну значення управляючої змінної циклу після кожної ітерації. У нашому випадку змінна i збільшується на 1 (i++).