Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Цели изучения темы. Стандартные математические функции хранятся в библиотеке math.h

Пример

Пример

Пример

Пример

Пример

Цели изучения темы

Стандартные математические функции хранятся в библиотеке math.h.

Пример

// Вычисление средней зарплаты, зарплаты меньше 500 не учитываются#include < iostream.h >main(){float sr_zarp=0,zarp; // средняя заработная плата, текущая заработная плата int kol=0; // количество do{ cout<<"Введите зарплату \n"; cout<<"(для окончания введите значение -1):\n"; cin>> zarp; if (zarp<0)break; if (zarp<500) continue;else{ sr_zarp+=zarp; kol++; } while (1= =1); // Бесконечный циклs_zarp/=floa_kol;cout <<"Средняя зарплата=" << sr_zarp;}

Прокомментируйте программу. Что произойдет если ввести зарплату -550, 230?

 

 


Стандартные математические функции

 

 

Тригонометрические функции используют радианы. Все функции, кроме указанных принимают один аргумент типа double и возвращают результат типа double.

 

acos Аркосинус
asin Арксинус
atan Арктангенс
atan2 (x, y) Арктангенс от у/х
ceil Округление в большую сторону
cos Косинус
cosh Гиперболический синус
exp е в степени х
fabs Модуль
floor Округление в меньшую сторону
fmod (x, y) Остаток от деления х на у
log log10 Натуральный логарифм Логарифм по основанию 10
pow(x,y) sin Возводит число х в степень y Синус
sinh Гиперболический синус
sqrt Квадратный корень
tan Тангенс
tanh Гиперболический тангенс

 

 

Тема 1.4. Ввод-вывод данных

· изучить различные функции для ввода и вывода данных;

· познакомиться с понятиями буферизованного и не буферизованного ввода данных

 

Папка INCLUDE системы Borland С++ содержатся библиотечные файлы с расширением h. Каждый из библиотечный фалов хранит функции, предназначенные для работы с памятью, графическими примитивами, файлами, строками и т.д. Многие из них содержат средства ввода-вывода информации. Разберем некоторые из них.

Функции get() и put()

Функция get() вводит один символ со стандартного устройства ввода (оно обозначается cin и, если оно не было переназначено, то это клавиатура).

Функция put() выводит одиночный символ на стандартное устройство вывода (оно обозначается cout и, если оно не было переназначено, то это экран).

 

Функции get() и put() хранятся в библиотечном файле fstream.h Для их применения этот библиотечный файл необходимо подключить с помощью директивы include.

Функция get() сначала получает набранный с клавиатуры символ, затем получает \n (символ новой строки, который генерируется нажатием клавиши ENTER), a после этого еще один введенный с клавиатуры символ.

#include <fstream.h>main(){ char s, inl, in2; cout < <"Введите ваш первый инициал"; cin.get(s); //Функция get() получает набранный на клавиатуре символ inl=s; //Введенный символ заносится в переменную in1 cin.get(s); //Функция get() получает символ новой строки (\n) при нажатии // клавиши ENTER cout< < "Введите второй инициал"; cin.get(s); //Функция get() получает второй введенный символ in2=s; //Введенный символ заносится в переменную in2 cout< < "\n Ваши инициалы \n"; cout.put(inl); //На экран выводится символ из переменной in1 cout.put(in2); //На экран выводится символ из переменной in2 return 0;}

 

Для более красивого вывода результата можно добавить возврат каретки:

cout< < "\n Ваши инициалы \n";cout.put(inl);cout.put('\n');cout.put(in2);

 

Функция get() является функцией буферизированного ввода. Это значит, что вводимые символы сначала попадают в буфер, и только после этого в программу. Т.к. символ сначала находится в буфере, то это влияет на порядок обработки информации. Так, ни один символ не попадет в программу, пока не будет нажата клавиша Enter. Поэтому если в программе задается вопрос: "Продолжить работу (Y/N)?" и для ввода используется функция get(), то даже если пользователь нажмет Y, программа не будет знать об этом до тех пор, пока не будет нажата клавиша Enter.

Функция getch()

Если требуется вводить символы непосредственно в программу, используется функция getch(). Эта функция реализует не буферизованный ввод, т.е. вводимые символы сразу попадают в программу, минуя буфер. При использовании функции getch() ввод не может быть перенаправлен. Символы всегда выводятся на экран, а считываются с клавиатуры. Для использования функции getch() функций в директиве include необходимо указывать библиотечный файл conio.h.

В программе вычисляется количество букв «а» во введенной строке.

#include <conio.h>main(){ char с;int k=0, i;cout< < "Введите последовательность из 5 символов \n";for (i= 1; i<=5; i++){ c=getch(); if (c=='a' || c='A')k++;}}

 

Во время выполнения программы символы не появляются на экране. После ввода каждого символа не надо нажимать клавишу Enter, цикл закончится после набора 5 символов.

Пользователь вводит пароль из 5 символов, при этом вместо вводимых символов на экране отображается символ '*'.

#include <conio.h>main(){ char с[5]; // описывается массив С, состоящий из 5 символовint k=0, i;cout< < "Введите последовательность из 5 символов \n";for (i= 0; i<=4; i++){ c[i]=getch(); // в элемент массива с[i] заносится набранный на клавиатуре // символ, который получает функция getch()cout < < '*';}

Функцию getch() можно использовать для задержки сообщений на экране.

В библиотеке conio.h так же содержатся функции:

clrscr() – очистка экрана

gotoxy (x1,y1) – позиционирование курсора, х1 – номер строки, y1 – номер столбца (позиции в строке).

Функция printf

Функция printf может быть использована для вывода информации на экран (находится в библиотеке stdio.h).

 

Формат функции:

printf (Аргумент1, Аргумент2, Аргумент3,...)

 

Функция printf формирует и выводит на экран символьную строку из аргументов Аргумент1, Аргумент2, Аргумент3,..., где

Аргумент1 – это строка символов, которая может включать управляющие последовательности \n \t и т.д., а также знак %.

Знак % указывает место включения в строку символов Аргумента2, Аргумента 3,...

· %f – вещественное число, можно указать формат числа;

· %4.0f – первая цифра - общее количество позиций на число, вторая цифра - количество позиций на дробную часть;

· %d – десятичное целое число;

· %о – восьмеричное целое число;

· %х – шестнадцатеричное целое число;

· %с – символ

· %s – символьная строка

 

x=142; y=12374.4213;printf("\nПри х=%d y=%7.1f ", x, y); В результате выполнения функции printf на экран выводится сообщение:При х=142 y= 12374.4

Функция sprintf()

В библиотеке stdio.h имеется еще одна полезная функция – sprintf. В отличие от функции printf функция sprintf не выводит строку на экран, а записывает ее в Аргумент 0. Аргументы 1, 2, 3 и т.д. используются аналогично функции printf.

Формат функции:

sprintf (Аргумент0, Аргумент1, Аргумент2, Аргумент3,...)

Сформируем символьную строку buffer из сообщения и значения числа пи:

char buffer[80]; // описывается массив buffer, состоящий из 80 символовsprintf(buffer, "\n Число Пи = %f\n", M_PI); В результате выполнения функции sprintf в массив buffer заносится сообщение:\n Число Пи = 3.14\n

 

Функция sprintf применима в более новых системах программирования на основе С++, например, в C++ Builder.

 

Тема 1.5. Функции. Локальные и глобальные переменные.

Способы передачи данных.

· изучить способы описания локальных и глобальных переменных, использования функций;

· изучить механизмы передачи данных.

 

1.5.1. Видимость переменных

 

<== предыдущая лекция | следующая лекция ==>
Пример 2. Пример 2 // Сложение чисел от а до b#include <iostream.h>main(){ int a,b,i;long int s=0;cout <<Введите a ;cin>> a;cout | Инициализация переменной происходит только при первом обращении к блоку (функции). Если Вы не проинициализируете переменную, то C++ сам обнулит ее при первом обращении
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 298; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.