Технология программирования. Базовые конструкции C/C++. Липачев Е.К. - 32 стр.

UptoLike

Составители: 

32
С помощью оператора , (запятая) можно включать сразу несколько
операторов в любой управляющий блок.
Пример. Все те же числа Фибоначчи. Все операции в одном цикле. В
отличие от предыдущих примеров вычисления этих чисел, в теле цикла
печатаем f, а не g. Неправильные значения уже не попадут в тело цикла
после вычисления операторов блока обновления будет проверено условие
продолжение и только потом (если условие истинно), будет выполнено тело
цикла.
// Числа Фибоначчи
int f,g,h;
for (f=g=h=1;(INT_MAX-f)>0;f=g+h,h=g,g=f)
cout<<"\t "<<f;
В стандартах С99, С11 языка C и стандартах языка C++ разрешено
объявлять переменные в блоке инициализации цикла for. Отметим, что в
языке С, ориентированном на стандарт C89, этого нет. Объявленные в for
переменные являются локальными, и их областью видимости является
только тело цикла.
Пример. Тот же пример, но объявления переменных помещены в блок
инициализации.
for (int f=1, g=1, h=1;(INT_MAX-f)>0;f=g+h,h=g,g=f)
cout<<"\t "<<f;
Пример. Еще одна иллюстрация оператора цикла – тело цикла пустое.
// Числа Фибоначчи
int k=1;
for (int f=1,g=1,h=1;(INT_MAX-f)>0;f=g+h,h=g,g=f, k++);
cout<<"\nLimits for int: "<<k<<" Fibonacci Numbers\n";
     С помощью оператора ―,‖ (запятая) можно включать сразу несколько
операторов в любой управляющий блок.
     Пример. Все те же числа Фибоначчи. Все операции в одном цикле. В
отличие от предыдущих примеров вычисления этих чисел, в теле цикла
печатаем f, а не g. Неправильные значения уже не попадут в тело цикла –
после вычисления операторов блока обновления будет проверено условие
продолжение и только потом (если условие истинно), будет выполнено тело
цикла.
// Числа Фибоначчи
int f,g,h;
for (f=g=h=1;(INT_MAX-f)>0;f=g+h,h=g,g=f)
                                      cout<<"\t "<0;f=g+h,h=g,g=f)
                                      cout<<"\t "<0;f=g+h,h=g,g=f, k++);
cout<<"\nLimits for int: "<