ответ:Это похоже на условный оператор if. Однако в случае циклических операторов их тела могут выполняться далеко не один раз. В случае if, если логическое выражение в заголовке возвращает истину, то тело выполняется единожды. После этого поток выполнения программы возвращается в основную ветку и выполняет следующие выражения, расположенные ниже всей конструкции условного оператора.
В случае while, после того как его тело выполнено, поток возвращается к заголовку цикла и снова проверяет условие. Если логическое выражение возвращает истину, то тело снова выполняется. Потом снова возвращаемся к заголовку и так далее.
Цикл завершает свою работу только тогда, когда логическое выражение в заголовке возвращает ложь, то есть условие выполнения цикла больше не соблюдается. После этого поток выполнения перемещается к выражениям, расположенным ниже всего цикла. Говорят, "происходит выход из цикла".
Объяснение:
#include <iostream>
#include <string>
#define SIZE 3
/*
Структура содержит 3 поля, фамилия и оценки имеют тип string, поле с годом рождения имеет тип int;
Также имеется метод, с которого происходит ввод информации.
*/
struct student {
std::string surname;
int birthYear;
std::string marks;
void InputInfo() {
std::cout << "Фамилия студента: ";
getline(std::cin, surname);
std::cout << "\nГод рождения студента: ";
std::cin >> birthYear;
std::cin.ignore();
std::cout << "\nОценки студента: (через пробел): ";
getline(std::cin, marks);
}
};
/*
В основной функции мы создаем массив структур "group" размера SIZE (SIZE объявили выше)
Затем находим сумму возрастов и делим ее на размер массива структур
*/
signed main() {
setlocale(LC_ALL, "Rus");
student group[SIZE];
int _sumAge = 0;
for (int i = 0; i < SIZE; ++i) {
group[i].InputInfo();
_sumAge += 2022 - group[i].birthYear;
}
std::cout << "\nСредний возраст студентов в группе:" << _sumAge / SIZE;
return 0;
}
они все социальные животные
объщаются между собой и благодаря этому понимают друг друга и выживают