День №1.
Оглавление
1. Зачем нужно программирование? 1
2. Что такое программа 1
3. Язык программирования 2
4. Переменные 3
4.1 Типы данных и переменные 3
4.2 Арифметические выражения 4
5. Ввод/вывод. 4
6. Среда разработки Visual Studio. 6
Экспериментальная часть. 10
Практическая часть. 11
1. Зачем нужно программирование?
Иногда создается впечатление, что все существующие задачи могут быть решены с помощью готовых программ для компьютеров. Во многом это действительно так, но опыт показывает, что всегда находятся задачи, которые не решаются (или плохо решаются) стандартными средствами. В этих случаях приходится писать собственную программу, которая делает все так, как вы этого хотите (или нанимать за большие деньги умного дядю, который способен это сделать).
2. Что такое программа
Программа на языке Си – это набор инструкций, понятный компьютеру. Для того, чтобы компьютер понял программу она должна соответствовать определённым правилам. После того, как инструкции приняты, они превращаются (транслируются) в более подробные инструкции, а затем эти собираются (компонуются) в исполняемый файл.
Обычно
у программа решает ту или иную задачу.
Для решения задач, как и в математике,
как и в физике, нужны исходные данные –
числа, которые даны по условию. Программа
использует одни инструкции для получения
этих данных, другие инструкции с ними
что-то делают, а третья группа команд
сообщает ответ. Итак, программа на языке
Си – это инструкции и данные.
Также, как и на большинстве современных языков программирования, создается в два этапа:
1) трансляция – перевод текста программы в машинные коды;
2) компоновка – сборка частей программы и подключение стандартных функций.
Почему же не сделать все за один шаг? Для простейших программ это действительно было бы проще, но для сложных проектов двухступенчатый процесс имеет явные преимущества:
обычно сложная программа разбивается на несколько отдельных частей (модулей), которые отлаживаются отдельно и зачастую разными людьми; поэтому в завершении остается лишь собрать готовые модули в единый проект;
при исправлении в одном модуле не надо снова транслировать (переводить в машинные коды) все остальные (это могут быть десятки тысяч строк);
при компоновке во многих системах можно подключать модули, написанные на других языках, например, на Ассемблере (в машинных кодах).
Трансляторы языка Си называются компиляторами: они переводят (транслируют) сразу всю программу в машинный код, а не транслируют строчка за строчкой во время выполнения, как это делают интерпретаторы. Это позволяет значительно ускорить выполнение программы и не ставить интерпретатор на каждый компьютер, где программа будет выполняться.
3. Язык программирования
Как мы уже знаем, с помощью программы компьютеру можно сообщить, что делать. Но говорить с ним нужно по-особому – на языке, который ему понятен. Таких языков несколько. В нашем случае это язык Си. Рассмотрим простую задачу.
Задача. Найдите сумму двух случайных чисел.
Как бы Вы её решили? Конечно, Вы без труда загадаете число. Затем ещё одно и даже сложите. А что дальше? Обычно мы пишем ответ. Но если говорить формально, то ответ в задаче не просили. Кстати, никто не уточнял, какие числа нужно загадать. Компьютер не терпит таких неточностей.
Итак, когда мы говорим с компьютером мы должны точно рассказать ему, следующее:
какие виды или типы данных он должен использовать;
как и откуда взять эти данные;
что с ними сделать;
как сообщить ответ.
Все программы на языке Си состоят из особых блоков – функций. Их может быть от одной и больше. В любом программе должна быть функция main(). С неё начинается работа программы. Функция main() вызывается первой, поэтому её называют точкой входа в программу. Кроме main() можно использовать дополнительные функции.
Общий вид самой простой программы на языке Си показан в листинге 1.
Листинг 1. Общий вид программы.
Подключение библиотек
тип_результата main()
{
Инструкция1;
Инструкция2;
...
}
Библиотеки содержат подробные описания инструкций. По началу мы будем использовать только одну библиотеку – <iostream>. Она помогает компьютеру понять, как «слышать» и «говорить».
