67975

Програмна реалізація алгоритмів циклічної структури

Практическая работа

Информатика, кибернетика и программирование

Цикл – оператор за допомогою якого деяку дію можна виконати кілька разів, залежно від деякої умови. Кожне повторення дії називається кроком циклу або ітерацією. Цикл складається з тіла циклу, тобто тих операторів, які виконуються кілька разів, початкових установок, модифікації параметра...

Украинкский

2014-09-16

162 KB

1 чел.

i: Практична робота №6 до лекції №16. 

Практична робота № 6

Програмна реалізація алгоритмів циклічної структури

Мета роботи -  ознайомитися з прийомами програмування обчислювального  циклічної структури.

Тими для попереднього опрацювання:

Реалізації обчислювальних процесів циклічної структури з використанням оператору циклу FOR.

Варіанти індивідуальних завдань.

Див. додаток 1.

Теоретична частина.

 Цикл – оператор за допомогою якого деяку дію можна виконати кілька разів, залежно від деякої умови. Кожне повторення дії  називається  кроком циклу або ітерацією.

Цикл складається з тіла циклу, тобто тих операторів, які виконуються кілька разів, початкових установок, модифікації параметра циклу і перевірки умови продовження виконання циклу. Цілочисельні параметри циклу,  що змінюються з постійним кроком на кожній ітерації, називаються  лічильником циклу.

Перевірка умови виконується на кожній ітерації. Якщо перевірка виконується  до тіла циклу,  тоді говорять про цикл з|із| передумовою, який може не виконатися жодного разу.

Цикл з предумовою

for|([початкові установки|];[умова];[кінці оператори|])

{

   оператор;

   оператор;

   ...

}


Приклад розв’язання завдання.

Приклад 2. Обчислити суму перших n членів ряду за формулою

                    , де  n змінюється від 0 до деякого значення, введеного з клавіатури .

Розробка алгоритму розв’язання.

Загальний метод розв’язання.

Процес підрахунку суми членів ряду має бути ітераційним: слід повторювати обчислення за однією і тією ж формулою при значеннях n=0, 1, 2, .. . Отримане значення слід додавати до змінної, яка представляє суму.

Алгоритм обчислення 2n  

Для цієї операції можна застосувати функцію  pow(x, y). Скористаємося  ефективнішим способом:

20 = 1

21 = 2 = 2 *20

22 = 4 = 2*21

23 = 8 = 2*22  и т.д.

Таким чином, на кожній ітерації циклу значення цього виразу удвічі більше, чим на попередній. Тому, виділимо окрему змінну для збереження значення 2n . Її початкове значення має бути 20 = 1. у кінці кожної ітерації воно повинне подвоюватися.

Алгоритм обчислення (- 1) n

В цьому випадку також недоцільно застосовувати функцію піднесення до ступеня.

Значення цього виразу буде 1 при парних значеннях n і - 1 - при непарних. Тому, можна виділити змінну для збереження значення цього виразу.

Її початкове значення має бути (-1)0 = 1, а у кінці кожної ітерації воно повинне міняти знак на протилежний.

Вхідні дані:

n - кількість членів ряду.

Вихідні дані:

sum - торба членів ряду.

Проміжні дані:

k2 - 2n  

k1 - (-1)n 

і – лічильник цикла.

Блок-схема алгоритму

         

Для реалізації алгоритму визначимося з діапазоном зміни значень :

n

Ціле число.

і

Ціле число. Проте,  результати виразів, в яких використовується і, матимуть дробову частину. Перетворення типів можна виконувати безпосередньо при обчисленні виразу, але щоб заздалегідь виключити помилки, введемо ще одну змінну - dbi, яка представлятиме значення n як числа з плаваючою точкою: double dbi;

sum

  double sum=0;

k2

""довге ціле": long long int.  Значення 2n може бути досить великим. Максимальне значення  n= 62. Для int n=30.

k1

""коротке ціле":  short k1=1;

Виведення результату.

Результат з фіксованою точкою, 7 знаків після коми.

Текст програми.

#include <iostream>

#include <windows.h>

#include <iomanip>

using namespace std;

void main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

cout.setf(ios::fixed);

cout<<setprecision(7);

int n;

cin>>n;

double dbi, sum=0;

long long int k2=1;              // pow(2,n)

int k1=1;       // pow(-1,n)

for (int i=0; i<=n ; i++, k2*=2, k1=-k1)

{

   dbi=n;      

 sum+=k1*(dbi+1)/(dbi*dbi+k2);

 cout<<i<<"\t"<<sum<<"\t"<<k2<<endl;  // отладка

}

cout<<"\nПолная сумма "<<n<<" членов ряда равна "<<sum<<endl;  

 

cout<<endl;

system("pause");

}     

 Результат.

5

0       0.2307692       1

1       0.0085470       2

2       0.2154436       4

3       0.0336254       8

4       0.1799668       16

5       0.0747037       32

Полная сумма 5 членов ряда равна 0.0747037


Індивідуальні  завдання

Варіант 1

Варіант 2

Варіант 3

Варіант 4

Варіант 5

Варіант 6

Варіант 7

Варіант 8

Варіант 9

Варіант 10

Варіант 11

Варіант 12

Варіант 13

Варіант 14

Варіант 15

Варіант 16

Варіант 17

Варіант 18

Варіант 19

Варіант 20

Варіант 21

Варіант 22

Варіант 23

Варіант 24

Варіант 25

Варіант 26

Варіант 27

PAGE  1

FILENAME \p C:\TEXNICUM_2012\CI_2012\Lesson_C_11_Mathematics_Function\Lab\C_03_Function_Math_LAB_L11_Metodichka_ukr.doc  DATE \@ "M/d/yyyy" 11/25/2012


Начало

sum=0; i=0;

k1=1; k2=1

i <=n ?

sum=sum+k1* EMBED Equation.3  

k1= - k1;

k2=2*k2;

i=i+1

Печать sum

конец

да

нет


 

А также другие работы, которые могут Вас заинтересовать

9147. Педагогика в системе наук о человеке 132 KB
  Педагогика в системе наук о человеке. Возникновение педагогики как науки. 2. Объект, предмет, функции и задачи педагогики. 3. Понятийный аппарат педагогики. Структура педагогических наук. Связь педагогики с другими наук...
9148. Сущность, закономерности, принципы процесса воспитания и самовоспитания 55.5 KB
  Сущность, закономерности, принципы процесса воспитания и самовоспитания 1. Характеристика особенностей процесса воспитания. 2. Содержание и основные этапы процесса воспитания. 3. Самовоспитание и перевоспитание как неотъемлемые компонент...
9149. Технология организации педагогической деятельности классного руководителя 113.5 KB
  Технология организации педагогической деятельности классного руководителя Технологические аспекты деятельности классного руководителя. Функции классного руководителя. Взаимодействие классного руководителя с учителями-предметниками,...
9150. Технология работы педагога по профилактике девиантного поведения подростков 120 KB
  Технология работы педагога по профилактике девиантного поведения подростков 1. Причины и факторы возникновения девиантного поведения. 2. Общая характеристика и психологические типы девиантного поведения учащихся. 3. Система работы педагога по устран...
9151. Ученическое самоуправление в школе. Деятельность организаций и объединений учащихся 65.5 KB
  Ученическое самоуправление в школе. Деятельность организаций и объединений учащихся Суть ученического самоуправления. Формы школьного самоуправления. Условия, способствующие развитию самоуправления. Детское движение и детские объед...
9152. Формирование мировоззрения, нравственно-эстетической и гражданской культуры личности 96.5 KB
  Формирование мировоззрения, нравственно-эстетической и гражданской культуры личности Формирование научного мировоззрения учащихся. Формирование нравственной культуры школьников. Развитие эстетической культуры детей в педагогическом...
9153. Формирование экологической культуры и здорового образа жизни учащихся 82 KB
  Формирование экологической культуры и здорового образа жизни учащихся. Понятия экология, экологическое образование и экологическое воспитание. 2. Задачи и содержание экологического воспитания школьников. Валеология как наука о здор...
9154. История развития научной психологии 25.75 KB
  История развития научной психологии Структура конспекта: Этапы становления и развития психологии как самостоятельной науки Основные направления зарубежной психологии XX века Основные направления отечественной психологии XX века...
9155. Предмет и методы психологии 22.57 KB
  Предмет и методы психологии Предмет психологии - закономерные связи субъекта с физическим и социальным миром, запечатленные в системе чувственных и умственных образов этого мира, мотивов, побуждающих действовать, а также в самих действиях, переживан...