Читайте также:
|
|
На длину условия и количество операций ограничений нет (ну, практически нет). Также условия можно комбинировать и разбивать с помощь круглых скобок «()».
Ну и напоследок, программа для определения високосности года:
# include <iostream> using namespace std; int main() { cin >> year; if (year % 400 == 0 || (year % 100!= 0 && year % 4 == 0)) cout << "Leap year! \n"; else cout << "Not leap year! \n"; system("pause"); return 0; } |
Год является високосным, если он делится без остатка на 400, или же делится без остатка на 4, но не делится на 100. Что наша программа и делает.
Если нашли ошибку или хотите улучшить статью — пишите комментарии. Вопросы по статье и предложения насчет темы для следующих уроков туда же. Спасибо за прочтение, надеюсь было полезно и интересно
C++. Урок 7. Циклы
Опубликовано 07.11.2012 автором admin
Всем привет! Сегодня наша тема — Циклы. Нет, даже так ЦИКЛЫ! Тема не сложная, но тем не менее очень важная.
Предыдущие уроки доступны по ссылке.
И так, что же такое цикл? Циклы — это повторяющаяся последовательность некоторых событий. Например:
§ Смена дня и ночи — цикл суток;
§ Смена времен года — цикл сезонов;
§ Цикады вылезающие на свет каждые 17 лет — это тоже некий цикл;
Огромное количество циклов, вот из чего состоит мир…
Извиняюсь, отвлекся. Теперь о программировании. Цикл — это выполнение неких функций и операций до тех пор пока некое условие выполняется.
Циклы есть двух категорий:
1) for
for — это цикл состоящий из 3 стадий:
1 стадия: будет выполнена ровно один раз, и в самую первую очередь. Обычно там инициализируют(т.е создают) переменные.
2 стадия: условие. Будет проверятся каждый такт цикла(т.е каждый раз, когда цикл закончился и теперь собирается начаться заново).
3 стадия: будет выполнятся после того, как завершится такт цикла, но перед тем, как цикл запустится заново.
В for эти стадии разделяются точкой-запятой `;`. Причем они(стадии) могут быть как и пустыми, так и заполненные огромным количеством данных. Вот сам синтаксис:
for (стадия_1; стадия_2; стадия_3) { функция_1; операция_1; ... и так далее } |
Стадия 1 состоит из любых функций, операций и всего прочего, т.е синтаксис стандартный, за исключением того, что в качестве разделителя будет выступать запятая `,`, а не точка-запятая `;`.
У 2-ой стадии синтаксис такой же, как и у if-а, исключений и особых правил нет.
Третья стадия идентична первой.
Пример использования цикла for:
int n; cin >> n; for (int i = 1; i <= n; i = i + 1) cout << i << " "; |
В 1-ой стадии мы инициализируем переменную i. Она будет доступна только внутри цикла. После завершения цикла компилятор не будет хранить значение переменной.
Во 2-ой стадии мы задаем программе условие — пока i меньше или равно n цикл не прерывать, т.е произойдет ровно n тактов (или, как более правильно итераций).
В третьей стадии мы увеличиваем переменную i на 1.
While
While отличается от for -а тем, что для него можно задавать только условие. Синтаксис условия полностью идентичен if -овскому.
В качестве примера можно привести программу переводящую число из десятичной системы счисления в двоичную:
cin >> n; if (n == 0) cout << "0"; while (n > 0) { cout << n % 2; n = n / 2; } |
Правда число будет выведено задом на перед, но это можно будет исправить. О том, как это сделать поговорим на последующих уроках.
Кстати, стоит упомянуть о том, что циклы могут быть вложенными, для более лучшего понимания скомпилируйте у себя следующий код:
for (int i = 1; i <= 7; i = i + 1) for (int j = 1; j <= 7; j = j + 1) cout << "i = " << i << ", j = " << j << "\n"; |
Ну и напоследок, программа находящая все шестизначные «счастливые» билеты:
# include <iostream> using namespace std; int main () { for (int a = 1; a <= 9; a = a + 1) for (int b = 0; b <= 9; b = b + 1) for (int c = 0; c <= 9; c = c + 1) for (int d = 0; d <= 9; d = d + 1) for (int e = 0; e <= 9; e = e + 1) for (int f = 0; f <= 9; f = f + 1) if (a + b + c == d + e + f) cout << a << b << c << d << e << f << "\n"; system("pause"); return 0; } |
На этом все, спасибо!
C++. Урок 8. Массивы
Опубликовано 16.11.2012 автором admin
Всем привет! Сегодня поговорим о массивах.
Предыдущие уроки доступны здесь.
Массив — это набор однотипных переменных. Все элементы пронумерованы начинается с нуля. Пример создания массива:
int array[10]; |
Мы создаем массив типа integer длиной в 10 элементов, которые пронумерованы от 0 до 9 (включительно). К каждому элементу массива можно обратиться, написав сначала имя, затем индекс(номер) элемента в квадратных скобках «[ ]«.
Пример:
int array[15]; cin >> a[0] >> a[1]; int cnt = a[0] + a[1]; cout << cnt; |
Индекс элемента всегда целое положительное число. Если в ходе работы программы вы будете обращаться к несуществующему элементу массива, то программа прекратит свою работу.
Элемент массива всегда такого же типа, что и сам массив. Исключений и особенностей нет.
Массивы по своей структуре очень похожи на одномерный отрезок:
int a[14]; for (int i = 0; i < 14; ++i) cin >> a[i]; |
Скажем мы ввели числа:
14, 78, 26, -98, 1, 0, 14, 9, 3, 456, 12, 71, -21, 0
Тогда наш массив можно представить в виде отрезка a[0, 14):
Точки соответствую индексам.
Но иногда одного индекса недостаточно, поэтому во всех языках программирования реализована возможность создания многомерных массивов.
Двумерный массив очень похож на таблицу, трехмерный массив схож с параллелепипедом. Пример работы с двумерным массивом:
int a[10][10]; for (int i = 0; i <= 9; ++i) for (int j = 0; j <= 9; ++j) a[i][j] = i * j; for (int i = 0; i <= 9; ++i) { for (int j = 0; j <= 9; ++j) cout << a[i][j]; cout << «\n»; } |
Дата добавления: 2015-09-10; просмотров: 68 | Поможем написать вашу работу | Нарушение авторских прав |