МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
|||||||
Оператор циклу з параметром.Для організації циклу з відомим числом повторень використовується оператор циклу з параметром, котрий формально записується таким чином: for (вираз 1; логічний вираз 2; вираз 3) команда 1;
У виразах 1,2,3 використовується спеціальна змінна, котра називається керуючою або параметром циклу. За її значенням встановлюється необхідність повторення циклу чи виходу з нього. Вираз 1 використовується для присвоєння початкового значення керуючої змінної, вираз 2 - для перевірки умови продовження циклу, вираз 3 - для зміни значень керуючої змінної. Дія команди. 1. Обчислюється значення виразів 1 та 2. 2. Якщо значення виразу 2 істине виконується тіло циклу, а потім знаходиться значення виразу 3. 3. Потім повторно визначається значення виразу 2 і пункт 2 повторюється до тих пір, поки значення виразу 2 істине. Як тільки значення виразу 2 стане хибне, відбувається вихід з тіла циклу. Будь-який з трьох виразів може бути відсутній, але крапка з комою повинна залишатись. Якщо відсутні вирази 1 або 3, то керуюча змінна не використовується. Якщо ж пропущено вираз 2, то вважається, що умова істина і цикл не закінчується. Таким чином, for (;;) { ... } є нескінчений цикл, вихід з якого треба забезпечити іншими засобами. Приклад .Протабулювати функцію y = 2sinx на проміжку [0; 1.5] з кроком h = 0.1 та обчислити середнє арифметичне значень функції більших 0.5, але менших 1.5. #include <iostream.h> #include <conio.h> #include <math.h> void main() { clrscr(); cout<<"--------------\n" <<"x\t2sin(x)\n" <<"----------------\n"; float sum=0, h=0.1; int n=0; for (float x=0.0,y=2*sin(x);x<=1.5+h/2;y=2*sin(x),x+=h) { cout<<x<<"\t"<<y<<endl; if ((y>=0.5)&&(y<=1.5),sum+=y,n++); } sum/=n; cout<<"Середне = "<<sum<<endl; getch(); } В циклі замість логічного виразу x<=1.5 ми записали умову x<=1.5+h/2. Це пов’язано з специфікою комп’ютерної арифметики. Справа в тому, що значення дійсних змінних співпроцесором комп’ютера хоч обчислюються і з великою точністю, але все ж наближено. Тому щоб не втратити останнього значення х = 1.5 ми і записали умову у вигляді x<=1.5+h/2 – додали зміщення h/2.Взагалі кажучи в логічних виразах бажано уникати порівнянь змінних дійсних типів. Але якщо все ж таки порівняння дійсних типів неминуче, то необхідно додавати деяке зміщення. Приклад. Знаходження кількісті та добутку лише парних чисел з діапазону 4..11 void main() { for (int n=4,prod=1,k=0;n<=11;n+=2) { prod*=n; k++; } }
Читайте також:
|
||||||||
|