Пример текста линейной программы
Стр 1 из 2Следующая ⇒ Задание: 1) изучить структуру программы на языке С/С++; 2) изучить средства потокового ввода/вывода в языке С++; 3) изучить этапы создания консольной диалоговой программы в среде Microsoft Visual Studio 2017; 4) освоить навыки отладки программы при ее создании в среде программирования (программу из примера 2); 5) решить задачу согласно индивидуальному варианту (в тетради для отчетов по практическим работам); 5.1) с применением средств консольного ввода/вывода (см. пример2); 5.2) с применением средств форматированного ввода/вывода (см. пример 1); 6) сдать программы в электронном виде преподавателю; 7) подготовиться к защите работы по контрольным вопросам.
Контрольные вопросы и задания. 1. Что представляет собой консольная программа? 2. Опишите технологию создания консольной программы на языке С/С++ в среде Microsoft Visual Studio 2017. 3. Объясните, что содержат файлы со следующими расширениями *. cpp, *. obj, *. exe? 4. Запишите текст программы из примера 2, и поясните, из каких разделов состоит структура программы на языке С/С++? 5. Для чего в программе на языке С/С++ используется директива # include? 6. Какие заголовочные файлы библиотек были использованы в программе? Объясните назначение соответствующих библиотек. 7. Что означает в программе строка void main ()? 8. Как оформляются комментарии в программе на языке С/С++? 9. Что такое входной поток? 10. Что такое выходной поток? 11. Перечислите, какие средства потокового ввода/вывода языка С++ были использованы для организации ввода данных с клавиатуры и вывода данных на экран. Приведите примеры и поясните. 12. Какие средства языка С++ использовались для организации корректной работы с вводимыми и выводимыми данными на русском языке? Запишите их и поясните.
13. Какие манипуляторы потокового вывода использовались в программе? Привести 14. примеры и пояснить. Пояснения к работе Понятие консольной программы Консоль (Console) – представляет собой совокупность клавиатуры и монитора. Консольное приложение — программа, для которой устройством ввода является клавиатура, а устройством вывода — монитор, работающий в режиме отображения символьной информации (буквы, цифры и специальные знаки). Консольные приложения удобны при рассмотрении общих вопросов программирования, когда надо сосредоточиться на сути проблемы, а также как небольшие утилиты "для внутреннего потребления".
Структура программы на языке С/С++ Общая структура программы на С++ имеет вид (рис.1):
директивы_препроцессора определение_функции_1 определение_функции_2 ........ определение_функции_N Рисунок 1 Назначение элементов программы описано ниже. Среди функций обязательно присутствует главная функция с именем main. Простейшая программ на С++ содержит только главную функцию и имеет следующую структуру (рис.2):
Директивы_препроцессора
{
операторы; return; }
Операторы – это выражения в С++, завершаемые точкой с запятой Рисунок 2 Разберем пример простейшей программы на языке С++, которая выведет на экран текст "Hello!" #include <iostream> /* директива препроцессора #include, которая подключает заголовочный файл потоковой библиотеки iostream, из которой мы будем брать средства для вывода информации на экран*/ void main()//заголовок нашей программы – главной функции { //открываем блок операторов главной функции cout << " Hello! "; //вывод сообщения " Hello! " на экран
return; //указываем, что возвращает функция после завершения работы } //закрываем блок операторов главной функции
Позже мы рассмотрим, как организуется ввод с клавиатуры. Сейчас же необходимо разобраться с одним из терминов, которым пользуются программисты при организации ввода и вывода информации. Таким термином является поток.
Что такое поток и потоковый ввод/вывод в языке С++? Поток – это последовательность байтов, передаваемая в процессе ввода-вывода. При организации ввода-вывода данных различают входной и выходной поток.
При выводе на экран (т.е. на консоль) модель выходного потока можно изобразить таким образом:
Рисунок 3. Модель выходного потока при выводе данных на экран (консоль)
Буфер вывода – это область оперативной памяти, куда программа передает байты данных. Т.е. выходной поток предполагает передачу данных из программы на внешне устройство, например в данном случае, экран монитора. В представленном выше примере программы мы применили для вывода на экран объект cout из библиотеки iostream, связанный со стандартным потоком вывода, и операцию << - операция вывода из потока на экран. Следует отметить, что выходной поток может быть направлен не только на экран монитора (консоль), он так же может направляться в файл, на принтер, в сеть. При вводе данных с клавиатуры модель входного потока можно представить следующим образом:
Рисунок 4. Модель входного потока при вводе в программу данных с клавиатуры
Буфер ввода – это область оперативной памяти, в которой размещаются вводимые в данном случае, с клавиатуры, байты данных. Как видно, далее, они будут переданы в программу. Примечание: в языке С, кроме представленных выше средств (cin, cout – средства потокового ввода/вывода) существуют другие средства для организации ввода с клавиатуры и вывода на экран, например средства форматированного ввода/вывода из стандарта С, функции printf() и scanf() из библиотеки stdio.h. В рамках этого курса мы их рассматривать не будем (вы можете их освоить самостоятельно по учебной литературе).
Далее в программа мы будем применять средства потокового ввода-вывода из библиотеки iostream.h Рассмотрим на примере текста программы.
Пример текста линейной программы
Условие задачи: создать программу вычисления значения функции y=sin(2x3)+1; Постановка задачи: разработать программу для вычисления значения функции y=sin(x)2, где значение аргумента x вводится с клавиатуры в градусах, значение функции y выводится на экран с точностью до 4 знаков после точки. Текст программы с комментариями: Пример 2. /* начало многострочного комментария Программа вычисления значения функции y=sin(2*x^3)+1 конец многострочного комментария */ //однострочный комментарий #include <iostream> // директива препроцессора #include, которая подключает //потоковую библиотеку iostream #include <windows.h> //подключить заголовочный файл библиотеки windows #include <math.h> //подключить заголовочный файл математической //библиотеки math using namespace std;// означает пространство стандартных имен //потоковой библиотеки void main()//заголовок главной функции { //открываем блок операторов главной функции //для корректного вывода и ввода текста на русском языке (на кириллице) //будем использовать функции SetConsoleCP(1251); и SetConsoleOutputCP(1251); // из библиотке windows SetConsoleCP(1251); //выполняет установку кодовой страницы // win-cp 1251 (кириллица) в поток ввода SetConsoleOutputCP(1251); //установка кодовой страницы win-cp 1251 //в поток вывода //потоковый вывод строки на экран cout << " Вычислить значение функции y=sin(2*x^3)+1 " << endl; // сout – объект из библиотеки iostream, связанный со стандартным //потоком вывода // << - операция вывода из потока // endl – манипулятор для перевода строки, т.е. курсор будет переведен в //начало следующей строки double x //объявление переменной x вещественного типа double double y; //объявление переменной y вещественного типа double //потоковый вывод строки на экран cout << " введите значение аргумента Х (в градусах)---> "; //потоковый ввод с клавиатуры в переменную х
cin >> x // сin – объект из библиотеки iostream, связанный со стандартным //потоком ввода // >> - операция ввода из потока через буфер ввода в переменную x = x * 3.14 / 180; //преобразовать x из градусов в радианы cout.precision(2);//манипулятор setprecision (2) устанавливает 2 знака в дробной части cout << "x в радианах = " << x << endl; y = sin(2 * pow(x, 3)) + 1; //вычислить y cout.precision(); cout << "значение y = " << y << endl; system("Pause");//выполнить задержку в работе программы return; //завершить работу } // закрыть блок операторов главной функции
Дополнительные пояснения к тексту программы:
using namespace std; - означает пространство стандартных имен. То есть, если бы вы не указали using namespace std; то строку cout << " Hello! "; пришлось бы писать std:: cout <<" Hello! "; или std:: cin >>x; Но если эта строчка написана то эти инструкции можно писать без std::
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|