Реферат Оператор циклу

Оператор циклу

Устаткування: Персональний комп'ютер, компілятор мови З#.

Мета роботи: Ознайомитися з операторами циклу навчитися застосовувати вС#-программах.

Циклічна управляюча структура застосовується в організацію багаторазового виконання деякого оператора. Оператор циклу включає <заголовок циклу> і <тіло циклу>. Заголовок визначає кількість повторень циклу, а тіло - повторювані оператори.

У З реалізовано три виду оператора циклу.

(1) Циклwhile

>while <умова>

<тіло циклу>

Умова - це логічне виразбулевского типу.

Тіло циклу - це оператор, чи послідовність операторів, ув'язнена воператорние дужки { }. Алгоритм виконання циклуwhile

1.Вичисляется значення умови.

2. Якщо умова істинно, то виконуються оператори тіла циклу і повторюється крок 1.

3. Якщо умова брехливо, то цикл завершується й відбувається перехід ось до чого заwhile оператору.

(2) Циклdowhile

>do{

<тіло циклу>

}

>while (<умова>);


Умова - цей вислівбулевского типу.

Тіло циклу - це оператор, чи послідовність операторів, розділена символом ";".

Алгоритм виконання циклуdowhile

1. Виконуються оператори тіла циклу.

2.Вичисляется значення умови.

3. Якщо умова брехливо, то повторюється крок 1.

4. Якщо умова брехливо, то цикл завершується й відбувається перехід ось до чого заdo оператору.

Зауваження.

1. Операторdowhile , на відміну від оператораwhile, обов'язково виконане буде по крайнього заходу одного разу.

2. Вийти зі циклу можна минаючи обчислення умови з допомогою оператораgo, але це відповідає принципам структурного програмування.

3. Якщо оператори тіла циклу не впливають на значення умови і умова істинно перед виконанням циклуwhile і після виконання циклуdowhile, то цикл виконуватиметься нескінченно (ефект "зациклення").

(3) Операторfor

Операторfor - це найбільш загальний спосіб організації циклу. Вона має наступний формат:

>for ( вираз 1 ; вираз 2 ; вираз 3 ) тіло

Вислів 1 зазвичай використовується задля встановлення початкового значення змінних, управляючих циклом. Вислів 2 - цей вислів, що б умова, у якому тіло циклу виконуватиметься. Вислів 3 визначає зміна змінних, управляючих циклом після кожного виконання тіла циклу.

Схема виконання оператораfor:

1.Вичисляется вираз 1.

2.Вичисляется вираз 2.

3. Якщо значення висловлювання 2 відмінно від нуля (істина), виконується тіло циклу, обчислюється вираз 3 здійснюється перехід до пункту 2, якщо вираз 2 одно нулю (брехня), то управління передається на оператор, наступний за операторомfor.

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

Приклад:

>intmain()

{inti,b;

>for (>i=1;i<10; і++)

>b=i*i;

>return 0;

}

У цьому вся прикладі обчислюються квадрати чисел від 1 до 9.

Іншим варіантом використання оператораfor є нескінченний цикл. Для організації такого циклу можна використовувати порожній умовне вираз, а виходу з добірки зазвичай використовують додаткову умову і операторbreak.

Приклад:

>for (;;)

{ ...

...break;

... }


Оскільки відповідно до синтаксису мови З# оператор то, можливо порожнім, тіло оператораfor також може бути порожнім. Така форма оператора можна використовувати в організацію пошуку.

Приклад:

>for (>i=0;t[i]<10 ; і++) ;

У цьому прикладі змінна циклу і приймає значення номери першого елемента масивуt, значення більше 10. Типи параметра циклу, початкового й кінцевого значень повинні прагнути бути сумісні. Допускається будь-якийскалярной тип крім речовинного, тобто. будь-який порядковий тип. Порядок, встановлений на безлічі значень таких типів, дозволяє нічого для будь-якого значення визначити таке його і попереднє.

Тіло циклу - це оператор, чи послідовність операторів, ув'язнена воператорние дужки { }.

Зауваження

1. Циклfor доцільно залучити до тому випадку, коли наперед відомо кількість повторень циклу.

2. Значення параметра циклу не можна змінювати всередині тіла циклу і треба вважати цю значення невизначеним на виході з циклу.

3. Вийти зі циклу можна передчасно з допомогою оператораgoto, але це відповідає принципам структурного програмування.

>Лабораторная робота 3 включає 4 завдання.

1. Обробка послідовностей значень.

Після обробітку послідовності її елементи не запам'ятовуються, а обробляються одразу після введення.

Дани натуральне число n й цілі числаA1,A2,...,An. З'ясувати, яка кількість зустрінеться в послідовності раніше позитивне чи негативне. Якщо всі члени рівні нулю, то повідомити звідси.

Розглянемо код процедуриMain()

>string N, A;

>int n, a, і;

>Console.WriteLine("Введите n");

N =Console.ReadLine();

n =Convert.ToInt32(N);

і = 0; a = 0;

>while ((a == 0) && (і < n))

{

>Console.WriteLine("Введите a");

A =Console.ReadLine();

a =Convert.ToInt32(A);

і++;

}

>if (a == 0)

>Console.WriteLine("Все елементи рівні 0");

>else

>if (a < 0)

>Console.WriteLine("Первий не нульової елемент негативний");

>else

>Console.WriteLine("Первий не нульової елемент позитивний");

>Console.ReadLine();

2.Распечатка як таблиці значення заданої функції.

Обчислити значення функції: дляа=1,1.1,1.2,...,1+0.1n і роздрукувати як таблиці значень з 2 знаками після десяткової точки.

Розглянемо код процедуриMain():


>string N;

>double a,f;

>int і, n;

>Console.WriteLine("Введите кількість елементів");

N =Console.ReadLine();

n =Convert.ToInt32(N);

a = 1;

>Console.WriteLine("********************************");

>f = ((a - 3) * a + 2) /Math.Sqrt(2 * a * a * a - 1);

>Console.WriteLine("* {0} * {1} ", a,f);

a = a + 0.1;

>for (і = 1; і < n + 1; і++)

{

>f = ((a - 3) * a + 2) /Math.Sqrt(2 * a * a * a - 1);

>Console.WriteLine("* {0} * {1} ", a,f);

a = a + 0.1;

}

>Console.WriteLine("********************************");

>Console.ReadLine();

3.Вичисление суми (твори) заданого числа доданків (>сомножителей), кожна з яких був функція від своєї індексу (номери).

Для заданих дійсного x для цілого n (>n>0) обчислити

P.S = x-

Розглянемо код процедуриMain():


>string N, X;

>double x,s, h,f;

>int n, і;

>Console.WriteLine("Введите кількість елементів");

N =Console.ReadLine();

n =Convert.ToInt32(N);

>Console.WriteLine("Введите значення x");

X =Console.ReadLine();

x =Convert.ToDouble(X);

>s = x;

h = 1;

>f = 1;

>for(i = 0; і < n; і++)

{

h = ->h*x*x;

>f =f*(2*n)*(2*n+1);

>s =s + h />f;

}

>Console.WriteLine("Summa = {>0}",s);

>Console.ReadLine();

Зверніть увагу, що у кожен крок чергове складова обчислюється з допомогою значення попереднього доданка. Це корисний прийом при обчисленні значень типу xn,(-1)n, (>sin x)n,sin xn тощо.

4. Завданняитерационний цикл із заздалегідь невідомим кількістю кроків. Реалізувати метод Ньютона перебування наближення до корені ступеняk з дійсногонеотрицательного x.

Нехайy0 - початкова наближення до корені. Будемо послідовно отримувати значення:


>y1=y0-(y0>k -x)/(k*y0>k-1),

>y2=y1-(y1>k -x)/(k*y1>k-1),

>y3=y2-(y2>k -x)/(k*y2>k-1) тощо.

Процес продовжуватимемо до того часу, поки модуль різниці двох послідовних наближень більше деякого заданого e. Отримане значення буде наближенням корені ступеняk з x з точністю e. Зауважимо, що у кожен крок нам потрібні лише 2 останніх наближення. Розглянемо код функціїMain():

>string K, X,EPS;

>double x,d = 1, y,eps;

>intk;

>Console.WriteLine("Введите ступінь");

K =Console.ReadLine();

>k =Convert.ToInt32(K);

>Console.WriteLine("Введите значення першого елемента");

X =Console.ReadLine();

x =Convert.ToDouble(X);

>Console.WriteLine("Введите значенняепсилент");

>EPS =Console.ReadLine();

>eps =Convert.ToDouble(EPS);

y = x;

>while (>Math.Abs(d)>eps)

{

>d=(x/Math.Exp((k-1)*Math.Log10(y))-y)/k;

>y=y+d;

}

>Console.WriteLine("Приближение до корені одно {0}",d);

>Console.ReadLine();


Вправи для контрольної роботи № 2

Варіант 1

1. Дани цілі числаа1,...,аn,an+1,...;а1>0, середа2,а3,... хоча б одне негативне. Нехайа1,...,аn члени попередні першому негативному. Одержатиmin(a1+a2,a2+a3,...,an-1+an).

2.Дано натуральне числоn.Вичислить суму і роздрукувати

P.S=

3. Дани справжні числа чи b (>a<b), натуральне n, функціяy=x+cos x, певна на відрізку [>a,b]. Для значень аргументу xі=>a+ih (>i=0,1,...,n),h=(b-a)/n Обчислити значення функції yі=xі+>cos xі. Вивести xі,yі як колонки для значень (>a=- ,>b=,n=50). n 1

4. Обчислити суму деяких обласних і роздрукувати.Вичисления припиняються за умови

Варіант 2

1. Дани натуральні числа n, a1, ..., an.Визначити кількість членів адо послідовності а1, ..., аn, є квадратами парних чисел.

2. Дани натуральне число n , дійсне - x. Обчислити:

3. Одержати значення функції Z і роздрукувати як колонки Xі , Zі

>Z=Asin2X +cos(Ax)2;A=ex + 2,5*10-3

Х змінюється в інтервалі [X0,Xn] з крокомh=0,05


X0=-

Xn=

4. Обчислити значення суми і роздрукувати :

,де (>i=1,...,n)

>Вичисления припиняються при Uі<=E,E=10-5

Варіант 3

1. Дани цілі числа а1,...,а50.Одержати суму тих чисел даної послідовності, які задовольняють умові

2. Дани натуральне n, дійсне x. Обчислити суму і роздрукувати:

3. Обчислити значення функції і роздрукувати як таблиці:

>Вичисления виконати для 11 значень Х,равноотстоящих друг від друга

(>i=1,...,11)

x1=2


4.Дано позитивне число е, послідовність {an} задана формулою загального виду:

An=)

Написати програму, визначальну перший член послідовності, котрій виконується нерівність

Варіант 4

1.Дано натуральне число n. Обчислити твір перших nсомножителей і роздрукувати:

>2.Вичислить суму і роздрукувати для даного натурального n:

P.S=

3. Написати програму обчислення функції.Распечатать як таблиці xі, yі.

Y=arctg(e-x)

для x мінливого в інтервалі [-3,-2], якщо x>i+1-xі=0,1 (>i=1,2,...)


4. Обчислити значення суми і роздрукувати для дійсного x

P.S=

Значення n визначається за умовоюe=10-4

Варіант 5.

1. Дани цілі числаa,n,x1,...,xn (>n>0). Визначити яким за рахунком в послідовності x1,...,x член рівний а. Якщо такої члена немає, то відповіддю має бути число 0.

2. Обчислити суму і роздрукувати для даного натурального n

P.S=

3. Обчислити значення функції і роздрукувати як таблиціxi,yi:

>Y=e-x(>cosx+1)

значення аргументу належить інтервалу [>0,1]x>i+1-xі=0,1

4. Обчислити значення суми і роздрукувати P.S і n

значення n визначається з умови un<=0,0001


Варіант 6

1. Дани натуральне число n, справжні числа a1,...,an. Знайти довжину найменшого відрізка числової осі, що містить числа а1,...,аn.

2. Обчислити для відомого натурального n і роздрукувати

P.S=

3. Обчислити значення функції Z і роздрукувати як таблиці xі, yі,zі:

Значення функції Z обчислюються для точок x, що належать інтервалу [-1,5; 1,5], лежачих на прямийx=y.Вичисления виконуються для точок x,равноотстоящих друг від друга на 0,25.

4. Обчислити суму для дійсного x і роздрукувати:

P.S=

n визначається за умовою

Варіант 7

1. Розглядається послідовність a1,...,a300


a1=0,01

a>k=>sin(k+a>k-1)

>k=2,...,300

Потрібна визначити скільки членів послідовності з номерами 1,3,9,27,... має значення менше 0,5.

2. Обчислити суму і роздрукувати для даного натурального n:

3. Обчислити суму значень функції yі і роздрукувати

yі=>0,723xі2->Vxі2+>V7cosxі

длях1=5,234

>х2=1,92

>х3=0,367

>х4=1,00

4. Обчислити суму низки

>Y=sh

Вважати, що потрібна точність досягнуто, якщо чергове складова по модулю менше E.E=10-3

Варіант 8

1. Дани цілі числа a1,a2,... Відомо, що а1>0 І що серед а23,... хоча б одне негативне число. Нехай а1,...,аn члени однієї послідовності, попередні першому негативному члену. Одержати кількість парних серед а1,...,аn.

2. Обчислити суму і роздрукувати для натурального n і дійсного x:

P.S=

3. Обчислити значення функції і роздрукувати як таблиці xі,yі, обчислити значення суми і роздрукувати:

значення xі обчислюється з умови, що x1=-0,01h=0,15

4. Обчислити суму деяких обласних і роздрукувати:

>y=cosx=1-

Вважати, що потрібна точність досягнуто, якщо

Варіант 9

1. Дани натуральне число n, справжні числа y1,...,yn;z = yі при

>z = 2 інакше

Знайтиmin()

2.Дано натуральне n та справжнє x, обчислити суму і роздрукувати:

P.S=

3. Дани справжні числа a і b (>a<b), натуральне n. Обчислити значення функції y і роздрукувати як таблиці xі yі.y=sinx +>cos2x, область визначення функції [>a,b].

xі=>a+ih

(>i=0,1,...,n)

>h=(b-a)/n

(>a=-,b=,n=50)

4. Обчислити суму деяких обласних і роздрукувати. Справжнє x поставлено (x >)

>S=lnx=

n визначається за умовою


Варіант 10

1. Дани цілі числа з1,...,з45. Чи є в послідовності два які йдуть поспіль нульових члена.Распечатать їхні номерні позначки чи відповідь "не є".

2.Дано натуральне N. Обчислити твір першихpсомножителей:

3. Дани справжні числа чи b (>a<b), натуральне n. Обчислити функцію і роздрукувати як таблиці xі, yі. Функція визначено на [>a,b];

xі=>a+ih; (>a=0,b=2,n=50);

4. Обчислити суму низки P.S=

Значення n визначається за умовою .Вичисления виконати для дійсного x і.

Варіант 11

1. Дани натуральне число n, справжні числа x1,...,xn. У послідовності x1,...,xn усіх членів менші двох замінити нулями. Одержати суму членів що належать відтинку [3,7], і навіть число таких членів.

2.Дано натуральне n та справжнє x. Обчислити твір і роздрукувати


3. Обчислити значення функції і роздрукувати як таблиці xі, yі,zі;Z=X+4Y.

Обчислити для Х належить інтервалу [>2,8]x>i+1=xі+x

>x=0,5

4. Обчислити суму деяких обласних і роздрукувати

Вважати, що потрібна точність досягнуто, якщо

Варіант 12

1. Дани натуральне число n, справжні числа a1,...,an. Одержати й роздрукувати.

2.Дано натуральне n та справжнє x, обчислити суму деяких обласних і роздрукувати

>3.Вичислить значення функції і роздрукувати як таблиці xі, yі 1

x1=-1

x>i+1-xі=0,05

>i=0,1,...,7

4. Обчислити суму деяких обласних і роздрукувати дляx=0,4

 n визначається за умовою

Варіант 13

>1.Дани цілі числа a1,a2,... Відомо, що а1 > 0 І що серед а23,... хоча б одне негативне число. Нехай а1,...,аn, попередні негативному числу. Одержатиmax(a12,...,an2) і роздрукувати.

2. Обчислити суму низки для речовинного x і роздрукувати


3. Обчислити значення функції і роздрукувати як таблиці xі, yі:

 дляравноотстоящих значень x в інтервалі [0 ;1,5]x=0,1

>4.Вичислить суму деяких обласних і роздрукувати

n визначається з умови

Варіант 14

1.Дано натуральне число n і кількості b0=1, b1=1, b>k=>k2 b>k-1 + b>k-2k=2,3,...,n. Обчислити bn і роздрукувати.

2. Дани натуральне n та справжнє x. Обчислити суму і роздрукувати:

3. Обчислити значення функції і роздрукувати як таблиці xі, yі:

x належить відтинку [-3 , -2] і x>i+1 - xі = 0,1

4. Обчислити суму деяких обласних і роздрукувати P.S з точністю e (>e=10-5).


>Заданная точність вважається досягнутої за умови

Варіант 15

1.Дано натуральне число n і кількості

a0=1,

Обчислити твір і роздрукувати .

2. Обчислити суму і роздрукувати для даного натурального n.

3. Обчислити значення функції і роздрукувати як таблиці xі, yі:

 якщоx>1

>x*ln x якщоx<=1

аргумент x змінюється від значення x0= 0,3 x>i+1 - xі = 0,2i=0,1,...,6 Обчислити у для семи значень аргументу і роздрукувати

4. Обчислити твір з точністю e = 10-5 і роздрукуватиP і n


точність вважається досягнутої, коли

Питання

>1.Приведите конструкцію і алгоритм роботи оператораwhile

>2.Приведите конструкцію і алгоритм роботи оператораdowhile

>3.Приведите конструкцію і алгоритм роботи оператораfor

>4.Чем відмінність циклів зпостусловием від циклів зпредусловием. Наведіть приклади.


Схожі реферати:

Нові надходження

Замовлення реферату

Реклама

Навігація