Once you begin to tasks, therefore already know what for loop. Let's look at a few of the tasks, solution in which it is applied, and, thereby, strengthen the knowledge gained. Programming practice– the best way to deal with the material and store information for a long time.
1. Write a program, that will show on the screen the number of the square, entered by the user. The user has to decide for himself – exit the program or continue writing. (Tip – You must run an infinite loop, which provide for termination of his, upon the occurrence of certain conditions).
Show code
Задача: оператор for 1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
usingnamespacestd;
intmain()
{
setlocale(LC_ALL,"rus");
intdigit=0;// число для расчета
charexit='y';// для выхода или продолжения
for(;;)
{
cout<<"Введите число: ";
cin>>digit;
cout<<"Квадрат "<<digit<<" = "<<digit*digit;
cout<<"\nПродолжить ввод чисел - Y, Выйти - N: ";
cin>>exit;// выбор пользователя
if(exit!='y'&&exit!='Y')
break;// прервать цикл
}
return0;
}
В задаче, as you can see, provided for continuation of the work, вне зависимости в каком регистре введена буква Y (в нижнем или в верхнем).
Result:
2. In the gym every day comes a certain number of visitors. It should prompt the user to enter such data: how many people visited the gym for the day, enter the age of each visitor and ultimately show the age of the oldest and the youngest of them, as well as to calculate the average age of visitors.
Show code
Задача: оператор for 2
C++
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
#include <iostream>
usingnamespacestd;
intmain()
{
setlocale(LC_ALL,"rus");
intage=0;// будет вводить пользователь
intmaxAge=0;// для записи максимального количества лет
intminAge=100;// для записи минимального количества лет
intsum=0;// общая сумма для расчета среднего
intaverage=0;// для записи среднего возраста посетителей
intamount=0;// количество посетителей спортзала
cout<<"Введите количество посетителей спортзала: ";
cin>>amount;
for(inti=0;i<amount;i++)
{
cout<<"Введите возраст "<<i+1<<"-го посетителя: ";// запрос на введение числа
cin>>age;
if(age>maxAge)// если оно больше, чем хранит переменная max
maxAge=age;// записываем в неё это число
if(age<minAge)
minAge=age;
sum+=age;// накопление общей суммы
}
average=sum/amount;// подсчет среднего возраста
cout<<"\nСредний возраст всех посетителей: "<<average<<endl;
cout<<"\nСамый взрослый: "<<maxAge<<endl;
cout<<"\nСамый молодой: "<<minAge<<endl;
return0;
}
The variable min we initialized value 100, so the program can work properly. If it was initialized value 0, conditionif (age < minAge) would not satisfy the ever, asage is always more 0. Thus the value of variable minAge would always remain zero.
Result:
For the job yourself, We offer you to solve a similar task. Arrange the number of visitors entering the gym and the number of hours spent by each of them in the gym. As a result, calculate and display the total amount, which customers have paid for training.
3. In stock has a certain number of boxes of apples (in this example, 15). When the car arrives for pickup, ask the user to enter, how many boxes loaded into the first car, the second and so on, until there are no more boxes of apples. Provide case, When the user enters the number of boxes more, than there is in stock.
Show code
Задача: оператор for 3
C++
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
#include <iostream>
usingnamespacestd;
intmain()
{
setlocale(LC_ALL,"rus");
intboxWithApples=15;// количество ящиков на складе
intamountBoxesForSale=0;// количество отгружаемых ящиков
cout<<"Сейчас на складе "<<boxWithApples<<" ящиков с яблоками.\n\n";
for(inti=1;;i++)// счетчик i будет считать количество машин к погрузке
{
cout<<"Сколько ящиков загрузить в "<<i<<"-ю машину? ";
cin>>amountBoxesForSale;
if(amountBoxesForSale>boxWithApples)
{
cout<<"\nНа складе недостаточно товара!";
cout<<"Осталось только "<<boxWithApples<<" ящиков\n\n";
i--;// уменьшить счетчик на единицу
}
else
{
boxWithApples-=amountBoxesForSale;// перезаписываем значение
cout<<"Осталось "<<boxWithApples<<" ящиков.\n";
}
if(boxWithApples==0)// если ящиков больше нет - выйти из цикла
{
cout<<"Яблоки закончились! Давай до свидания!\n";
break;
}
}
return0;
}
"I" count in string 21 reduced per unit, so that the next iteration of the loop to show the correct serial number of the machine.
Result:
If you have questions, please contact us in the comments.
we can write an infinite loop, and so: while( true ) { ... break; ... }
You launch an infinite loop. It looks like this: for(;;){ // block code } In principle we can and while(){} cycle of use, so even a few lines will be less. Just then this topic.
The first problem was solved peacefully and immediately, but on second thought long, then I opened the code and still could not understand. If someone turned out to be smarter than please explain the second problem.
int main(int argc, char** argv) { int x, y = 0; cout <> x; do { static int i = 1; cout << "How many boxes put in " << i <> Y; if ((x-y) < 0) { cout << "WTF!?!? Boxes are out, put less boxesnOn warehouse " << x << " boxes\n"; } else { x = x – Y; ++i; } } while(x != 0); return 0; }
Why do we have to assign to each variable “0”? Solving the second problem is not assigning variable value 0 heresy was obtained when calculating the average number of , why is this happening ?
#include using namespace std; int main() { setlocale(LC_ALL, “rus”); int yash=15; int pogr; int sum; cout<<"На складе "<<yash<<" ящиков.\n"; for(int i=1;sum<yash;i ) { cout<<"Приехала "<<i<>heated; sum + = pogr; if(sum>15) { cout<<"У нас нет столько ящиков.\n"; sum = sum-pogr; i=i-1; } } cout<<"\nВсё, boxes ran, let's go home!";
Karoch again cropped
In the first task, Why for loop ?
and thou hast done?
because they need, without it we will not be able to run an infinite loop, break will not work, but it is not exactly, I think so
we can write an infinite loop, and so:
while( true ) {
...
break;
...
}
You launch an infinite loop. It looks like this:
for(;;){
// block code
}
In principle we can and while(){} cycle of use, so even a few lines will be less. Just then this topic.
because, that the topic of the problem “The for loop”!!!
The first problem was solved peacefully and immediately, but on second thought long, then I opened the code and still could not understand. If someone turned out to be smarter than please explain the second problem.
#include
using namespace std;
int main(int argc, char** argv)
{
int x, y = 0;
cout <> x;
do
{
static int i = 1;
cout << "How many boxes put in " << i <> Y;
if ((x-y) < 0)
{
cout << "WTF!?!? Boxes are out, put less boxesnOn warehouse " << x << " boxes\n";
}
else
{
x = x – Y;
++i;
}
}
while(x != 0);
return 0;
}
>_<. cost x.
Why do we have to assign to each variable “0”? Solving the second problem is not assigning variable value 0 heresy was obtained when calculating the average number of , why is this happening ?
my code to third objective
#include “stdafx.h”
#include
using namespace std;
int main()
{
setlocale(LC_ALL, “ru”);
int a = 15, n, sum = 0, count = 1;
for (;;)
{
cout << "сколько ящиков загрузить в " << count <> n;
sum += n;
count ;
if (n > a)
cout << "введённая сумма больше кол-во яблок!" << endl;
if (sum == a)
{
cout << "ящики закончились!" < a)
{
cout << "ошибка! you used more boxes than there. Number of boxes = " << a << endl;
break;
}
}
return 0;
}
something that cropped, but the point is clear think
The problem with drawers
#include
using namespace std;
int main()
{
int nBox = 0;//Boxes user input
int nMaxBox = 15;//Number of boxes in stock
for (; nMaxBox != 0;)
{
cout << "Max box to warehouse is " << nMaxBox << "."<< endl;
cout <> nBox;
if (nBox <= nMaxBox)
{
nMaxBox = nMaxBox – nBox;
} else {cout << "To many box. The max box is " << nMaxBox << ". Pleas, entered agane." << endl;}
}
cout << "\n The warehouse is empty." << endl;
return 0;
}
cout nBox; – here cin >> nBox;
The third task easier:
#include
using namespace std;
int main()
{
setlocale(LC_ALL, “rus”);
int yash=15;
int pogr;
int sum;
cout<<"На складе "<<yash<<" ящиков.\n";
for(int i=1;sum<yash;i )
{
cout<<"Приехала "<<i<>heated;
sum + = pogr;
if(sum>15)
{
cout<<"У нас нет столько ящиков.\n";
sum = sum-pogr;
i=i-1;
}
}
cout<<"\nВсё, boxes ran, let's go home!";
return 0;
}