Структура программы на С++
Программа состоит из функций, описаний и директив препроцессора. Одна из функций должна иметь имя main, выполнение программы начинается с первого оператора этой функции . Функция имеет вид:
<тип возвращаемого значения> < имя функции>( <параметры функции>)
{
тело функции // всегда заключается в фигурные скобки
}
Если функция не возвращает ничего, то тип указывается void Функции не могут быть вложенными.
Структура программы из нескольких функций
Директивы препроцессора
Описания int main(){
Операторы главной функции
}
int f1(){
Операторы функции f1} int f2(){
Операторы функции f2}
//программа может состоять из нескольких файлов(модулей)
Пример программы на С++
#include <iostream> using namespace std;
// далее текст нашей программы int main()
{int a,b,c; cout<<“vvod a,b”; cin>>a>>b;
c=a+b; cout<<“otvet=“<<c; return c;
}
iostream - стандартный заголовочный файл библиотеки для ввода/вывода
#include - является директивой препроцессора, заставляющей включить в нашу программу текст из файла iostream.Все директивы процессора начинаются #
<iostream>
•Содержит описание классов для управления вводом/выводом. В нем определены стандартные объекты-потоки cin для ввода с клавиатуры и cout для вывода на экран. Позже это будет более понятным, когда будем изучать классы.
•Пока запомним cin>>-vvod
•cout<<-vivod
Ввод-вывод в С++
В с++ нет операторов ввода/вывода, процесс осуществляется с использованием библиотечных функций и объектов.
#include <iostream> using namespace std; int main(void){
int i;
cout<<“введите число\n”; cin>>i; cout<<“вы ввели число”<<i<<endl; return 0;}
using namespace std;
•Эта инструкция называется директивой using. Имена, используемые в стандартной
библиотеке языка С++ iostream (такие, например, как cout), объявлены в пространстве стандартных имен std и невидимы в нашей программе до тех пор, пока мы явно не сделаем их видимыми, для чего и применяется данная директива.
Стандартные функции
•Над арифметическими данными определены некоторые стандартные математические функции, для работы с ними надо подключить библиотеку
#include <math.h>
•В отличие от математики в С++ обращение к таким функциям осуществляется единообразно, независимо от конкретной функции.
•Для использования такой библиотечной функции надо написать ее имя и за ним в скобках параметр (аргумент).
Функция |
Вызов функции |
Тип аргумента |
Тип значения |
||||
|
x |
|
|
|
|
abs(-7.8)=7 |
|
|
|
|
abs( x ) |
Целый |
fabs(-7.8)=7.8 |
||
|
|
|
|
|
fabs(x) |
Вещественный |
|
|
|
|
|
|
|
||
sin Х |
sin( X ) |
Вещественный |
Вещественный |
||||
cos Х |
cos( X ) |
Вещественный |
Вещественный |
||||
tg Х |
tan( X ) |
Вещественный |
Вещественный |
||||
|
|
|
|
|
|
(радианы) |
(радианы) |
|
|
x |
|
sqrt( X ) |
Вещественный |
Вещественный |
|
|
|
|
|
|
|||
|
xn |
pow(x,n) |
Целый/ |
pow(2,3)->8 |
|||
|
|
|
|
|
|
Вещественный |
Как у аргумента |
Функция |
Вызов функции |
Тип аргумента |
Тип значения |
|
e |
x |
exp( x ) |
Вещественный |
Вещественный |
|
||||
|
|
|||
ln Х |
log( x ) |
Вещественный |
Вещественный |
|
lg(x) |
log 10( x) |
Вещественный |
Вещественный |
|
|
|
|
||
Остаток |
fmod(x) |
целый |
fmod(10/3)->1 |
|
целочисленного |
|
|
Есть операция % |
|
деления |
|
|
|
|
Ближайшее |
floor(-7.3) |
любой |
floor(-7.3)->-8 |
|
меньшее целое |
|
|
floor(7.3)->7 |
|
π |
pi |
|
Вещественный |
|
|
|
|
Программа на С++
#include <iostream> using namespace std; int main(void)
{double S; int x,y,n; cout<<“vvod n,x=“<<endl; cin>>x>>n;
y=sin(x)+pow(x,n)/pow(n,-2); S=y; y=sqrt(x)+exp(x);S=S+y; cout<<“summa=“<<S<<endl; return 0;
}