1й курс / Konspekt_lektsiy_Informatika_2
.pdf11
//Начало главной функции программы int main(int argc, char *argv[])
{
//Описание локальных переменных float x,y;
//Ввод исходного значения х printf("Input x="); scanf("%f",&x);
//Вычисление результата у y=sin(sqrt(fabs(1.2*x)))-exp(x+1.5)+
log(1+fabs(x))/(cos(x)+2*x*x*x);
//Вывод результата у printf("For x=%5.2f \t",x); printf("y=%5.2f \n",y);
//Пауза в работе программы system("PAUSE");
return EXIT_SUCCESS;
}
Результаты работы программы:
3.2.2. Объектно-ориентированные средства ввода-вывода
Для использования объектно-ориентированного консольного ввода-вывода с помощью потоков (stream) в программу необходимо подключить заголовочный файлiostream.h с помощью директивы:
#include <iostream>
При подключении этого файла в программе автоматически создаются объекты-потоки для консольного приложения (поток – виртуальный канал связи, создаваемый в программе для передачи данных)
·cout – поток для вывода на экран,
·cin – поток для ввода с клавиатуры,
атак же операции
· |
помещения в поток |
<<, |
· |
чтения из потока |
>>. |
Объект cout и операция << используются для вывода на экран текста и значений переменных. Текст необходимо заключать в двойные кавычки.
Например, пусть х=2.51, тогда оператор:
cout<<"x="<<x; |
х=2.51 |
выведет на экран значение х в виде: |
В списке вывода также допустимо применение специальных символов\t (табуляция) и \n (переход на новую строку).
Например, пусть х=2.51 и y=3.1 тогда оператор: cout<<"Result \n x="<<x<<"\t y="<<y<<"\n";
выведет на экран:
Result
x=2.51 y=3.1
Конспект лекций по «Информатике» |
Ó Ефименко К.Н. |
12
Для указания перехода на новую строку также можно использовать ключевое слово
endl.
Например, оператор: cout<<"x="<<x<<endl<<"y="<<y<<endl;
выведет на экран: x=2.51 y=3.1
Объект cin и операция >> используются для консольного ввода данных и позволяют
присвоить значение переменной.
Например, команда cin>>i;
означает, что в переменную i будет записано число, введенное с клавиатуры.
Если необходимо ввести значения нескольких переменных, то следует написать cin>>x>>y>>z;.
При вводе данных рекомендуется использоватьcin в паре с cout, для вывода приглашения к вводу данных.
Например, cout<<"Input x = "; cin>>x;
Пример 3.2 (лабораторная работа 2.2). Дано трехзначное число. Записать его цифры в обратном порядке и вывести на печать новое число.
Пусть P=456. Вычисление остатка от деления числа P на 10 даст его последнюю цифру
(количество единиц в числе P): |
456 % 10 = 6 |
Операция деления нацело числа P на 10 позволит уменьшить количество разрядов, чис- |
|
ло станет двузначным: |
456 / 10 = 45 |
Остаток от деления полученного числа на 10 будет следующей цифрой числа P (количе- |
|
ство десятков в числе P): |
45 % 10 = 5 |
Последнюю цифру числа P (количество сотен) можно найти так: 456 / 100 = 4 |
|
В задаче требовалось записать цифры числа P в обратном порядке, значит, в новом числе |
|
будет 6 сотен, 5 десятков и 4 единицы: |
S = 6*100 + 5*10 + 4 = 654 |
Текст программы, реализующей решение для любого трехзначного числа:
//Директива подключения объектов cin/cout
#include <iostream> using namespace std;
//Начало главной функции программы int main(int argc, char *argv[])
{
//Описание локальных переменных unsigned int P, S;
//Ввод исходного значения P cout<<"Input P=";
cin>>P;
S=(P%10)*100+(P/10%10)*10+P/100;
//Вывод результата S cout<<"S="<<S<<endl;
//Пауза в работе программы system("PAUSE");
return EXIT_SUCCESS;
}
Результаты работы программы:
Конспект лекций по «Информатике» |
Ó Ефименко К.Н. |
13
Пример 3.3. Размер файла P задан в байтах. Найти количество полных мегабайтов и килобайтов, которые занимает данный файл и остаток в байтах.
Текст программы:
#include <iostream> using namespace std; int main()
{
unsigned long int P,M,K,B; cout<<"Input P=";
cin>>P;
M=P/1024/1024; K=(P-M*1024*1024)/1024; B=P-M*1024*1024-K*1024; cout<<"Full size of file \n"; cout<<"Mb="<<M<<endl; cout<<"Kb="<<K<<endl; cout<<"b="<<B<<endl; system("PAUSE");
return EXIT_SUCCESS;}
Результаты работы программы:
Пример 3.4. Старая английская денежная система включала гинеи, шиллинги и пенсы. Денежная сумма S задана в пенсах. Определить количество полных гиней и шиллингов, которые образуют эту сумму и остаток в пенсах. Примечание: 1 гинея = 21 шиллинг, 1 шиллинг = 20 пенсов.
#include <iostream>
int main(int argc, char *argv[])
{
unsigned long int S, G, Sh,P; printf("Input S = "); scanf("%d",&S);
P=S%20;
Sh=S/20%21;
G=S/20/21;
printf("Full S = %d guinea %d shilling %d pence \n",G,Sh,P); system("PAUSE");
return EXIT_SUCCESS;
}
Результаты работы программы:
КОНТРОЛЬНЫЕ ВОПРОСЫ И ЗАДАЧИ
Алгоритмизация и программирование на С++
1.Типы данных, описание переменных.
2.Оператор присваивания, множественное присваивание, составное присваивание.
3.Запись арифметических выражений. Операции целочисленного деления.
4.Логические операции и операции отношения.
5.Общая структура программы на языке С++.
6.Функции ввода-вывода (printf/scanf), спецификатор форматов.
7.Объектно-ориентированные средства ввода-вывода (cin/cout).
Конспект лекций по «Информатике» |
Ó Ефименко К.Н. |