Типы данных и арифметика
Если мы хотим, чтобы наша программа оперировала какими - либо данными, нам нужно эти данные предоставить этой программе. Для этого нам нужно знать ввод, и то, что мы хотим ввести. Вводить мы можем разные вещи, такие как строки, числа и так далее. Обобщенно эти вещи нызываются переменные. Переменная - это именованная область памяти. Переменная характеризуется тремя параметрами:
- Имя переменной - не должно иметь пробелов, и не может быть числом.
- Адрес переменной - понятно, что это адресс ячейки, в которой хранится наша переменная. Подробнее мы будем рассматривать этот пункт, когда будем говорить про указатели.
- Тип переменной - это тип данных, который имеет переменная.
Всего таких типов несколько. Рассмотрим самые важные из них:
Таких образом мы можем создавать переменные
И выводить их
Еще одним важным понятием языка С++ является константа. Допустим, мы хотим создать переменную, в котрой будем хранить колличество часов в сутках. Константы по определению нельзя изменять по ходу выполнения программы, а если такое случится, то компилятор выведет сообщение об ошибке.
Создаются константы следующим образом:
Общепринятый стиль программирования говорит нам о том, что константы лучше всего именовать с большой буквы.
Ввод
Думаю сейчас вам будет интересно узнать про ввод в C++. Выглядит он следующим образом:
Обратите внимание, что стрелочки направлены в другую сторону, нежели при выводе.
Если вводится два числа подряд, можно сделать так:
Итак, мы уже знаем как использовать IDE, умеем делать ввод и вывод, и уже знаем, что такое типы данных. Пора решать задачи? Возможно. Вот задачка от автора, отправляем решение на email внизу страницы.
Дано целое число \(n\). Решить уравнение \(x = n\) отностительно \(x\). Пример ввода: 10 Пример вывода: 10
Думаю эта задача оказалась вам по силам. Но что дальше? Нам не хватает одной важной вещи - арифметики. Сейчас мы про неё узнаем и тогда точно сможем пройти на финал ICPC!
Арифметика С++
В общих чертах, арифметика C++ мало чем отличается от обычной, математической арифметики. Рассмотрим следующий код:
Особое внимание хотелось бы уделить операции деления. Она - целочисленная, как div в Паскале. Чтобы получить настоящее частное двух чисел, используйте тип с плавающей точкой (float, double и т.д).
Инкремент и декремент
Иногда в целях экономии времени строчку вида
Заменяют на эквивалентную операцию:
Эта операция называется инкрементом. Аналогично можно представить операцию декремента:
Стоит отметить, что у операций инкремента и декремента сущиствует префиксная и постфиксная форма записи:
Существуют и другие сокращения:
Таким образом, мы узнали, что такое тип данных, вывод, и арифметика C++. Все, мы уже можем ехать на финал ICPC? Рано, однако решить задачу 1000 с Timus вы вполне способны решить! Вперед решать!
Форматированный вывод
Если мы хотим выводить ответ с наперед заданной точностью (актуально для чисел с плавающей запятой), то нам могут помочь вот эти две строки:
где n - количество знаков после запятой. Для простоты скажем, что precision и setf - особые функции для работы с cout.
Например, мы хотим вывести число пи с точностью до трех знаков после запятой. Тогда мы можем написать что-то вроде: