Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 03 / README.md
blob: 5d510c5ac67c9dc39fd1a6461866b4242d324e04 (plain) (blame)
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# Цикли
### Цикъл for

```c++

for( <Инициализация(i)>;  <Булево условие>;  <Актуализация(i)> )  
{  
	<Тяло на цикъла(i)> 
}

 ```
 Изпълнението работи така:
1. Изпълнява се инициализацията
2. Проверява се булевото условие;
	
	2.1  ако има стойност **лъжа**, цикълът приключва
	
	2.2 ако има стойност **истина**,  се изпълнава 3.
	
3. Изпълнява се тялото на цикъла.
4. Изпълнява се инкрементацията. Отиваме на точка 2.
### Цикъл while
```c++
while ( <Булево условие> )  
{  
	<Тяло на цикъла> 
}
 ```
Изпълнението работи така:
1. Проверява се булевото условие;
	
	1.1  ако има стойност **лъжа**, цикълът приключва
	
	1.2 ако има стойност **истина**,  се изпълнава 2.
	
2. Изпълнява се тялото на цикъла. Отиваме на 1.

### Цикъл do- while
```c++
do
{  
	<Тяло на цикъла>
	
}while ( <Булево условие> );
 ```
 Изпълнението работи така:
1. Изпълнява се тялото на цикъла.
2. Проверява се булевото условие

	2.1  ако има стойност **лъжа**, цикълът приключва

	2.2  ако има стойност **истина**,  отиваме на точка 1.

# Конвертиране на цикли.

![enter image description here](https://i.ibb.co/3pwkSHr/Capture.png)

### От for към while.
```c++
// for loop   
for(int i = 0; i < 10; i++)  
{  
	<Тяло на цикъла>
}  
  
// for loop converted to while loop   
int i = 0; //Инициализация
while(i < 10)  
{  
	<Тяло на цикъла>
	i++; // Актуализация
}
 ```
### От while към for.

```c++

// while loop  
while(*str != '\0')  
{ 
	<Тяло на цикъла>
	++str;
}

  
// while loop converted to for loop  
for(; *str != '\0'; ++str)  
{  
	<Тяло на цикъла>  
}
 ```
 ### От do-while към while.
```c++
// do-while loop
do 
{  
	<Тяло на цикъла>
	
} while ( <Условие> );


// do-while loop converted to while loop  
<Тяло на цикъла> 
while( <Условие> )  
{  
	<Тяло на цикъла>
}
 ```
Забележка! Предложените начини за преобразуване между цикли са с демонстрационна цел! Спрямо конкретната цитуация може да се постигне такова преобразуване и по много по-прост начин.