Лабораторная работа: Операции ввода вывода Арифметические операции

Лабораторная работа: Операции ввода вывода Арифметические операции




🛑 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































На тему: "Операции ввода-вывода. Арифметические операции"
Удобная компьютерная программа – это всегда программа, корректно взаимодействующая с пользователем, даже если пользователем является сам программист. Такая программа запрашивает все необходимые для ее работы данные, используя операции ввода
, и выдает результаты работы с помощью операций вывода
. Стандартным устройством ввода в ПК считается клавиатура, устройством вывода – экран монитора (точнее, окно приложения на экране). Совокупность клавиатуры и монитора часто называют консолью
.
С/C++ дает пользователю различные возможности для программирования ввода-вывода. Эти возможности реализуются с помощью функций, входящих в состав различных библиотек. Далее мы рассмотрим две из них – консольный и потоковый ввод-ввод.
Консольный ввод-вывод организуется с помощью стандартных библиотек stdio.h и conio.h, что предполагает наличие директив #include и / или #include в заголовочной части программы.
Функция printf
используется для вывода информации на экран. С ее помощью в окне приложения можно распечатать как строку простого текста, так и значения переменных различных типов. Общая форма записи соответствующего оператора
printf(«форматная_строка» [, перем1] [, перем2] [,…]);
Здесь в круглых скобках указаны параметры (или аргументы) функции printf, причем первый из них, форматная строка в двойных кавычках, является обязательным. Остальные параметры, переменные различного типа, указываются по необходимости. Форматная строка может содержать:
· обычные текстовые символы, которые выводятся на экран в том же виде, как они записаны в форматной строке,
· управляющие символы, в частности символы перевода строки «\n», табуляции «\t», и некоторые другие (начинаются со знака обратной косой черты «\»),
· символы форматного преобразования, которые используются для вывода значений переменных (начинаются со знака процента «%»).
Вслед за форматной строкой, в функции printf через запятую может быть указан список всех переменных, значения которых выводятся на экран. При этом внутри форматной строки должны быть размещены соответствующие символы форматного преобразования. Численное значение переменной будет выведено в ту позицию, в которой указан соответствующий символ. Символы преобразования для стандартных типов данных указаны в следующей таблице
К примеру, запись printf(«Hello!») означает вывод на экран простой текстовой строки «Hello!». Запись printf(«%d», x) выводит на экран значение целочисленной переменной x. Случай, когда на экран выводятся сразу две переменные, иллюстрируется следующим примером
Здесь верхние стрелки указывают позиции внутри форматной строки, куда будут выведены значения переменных i и x. Остальной текст форматной строки будет отображен без изменения. К примеру, если переменная i к моменту выполнения этого оператора имела значение 5, а переменная x была равна 1.5, на экран будет выведено: «Значение 5‑й переменной равно 1.500000».
Важным является соответствие символа форматного преобразования (%d, %f, и т.д.) действительному типу переменной (int, float, doubleи т.д.). Несоблюдение этого правила ведет к непредсказуемому результату на экране. Поэтому использованная в примере переменная i должна быть объявлена ранее как целочисленная (int), а x – как вещественная (float или double).
Функция printf также дает возможности управления выводом с помощью эскейп-последовательностей
, начинающихся с символа ESC (обратный слэш «\»). Некоторые из них приведены в таблице:
Консольный ввод может быть организован с помощью функции scanf
. Вводимая при этом информация помещается в некоторую переменную. Общая форма записи этого оператора
scanf(«форматная_строка», &перем1 [, &перем2] [,…]);
Аргументы функции scanf во многом аналогичны соответствующим аргументам printf, за исключением того, что в качестве дополнительных параметров scanf принимает не имена
переменных, а их адреса
. В силу этого перед именем каждой переменной в scanf должен стоять знак операции взятия адреса «&» (амперсанд).
В момент передачи управления функции scanf выполнение программы приостанавливается в ожидании ввода от пользователя. Вся вводимая с клавиатуры информация отображается на экране (эхо-вывод). Во время ввода пользователю доступны простейшие возможности редактирования, в частности клавиша забоя Backspace. Выполнение оператора завершается, как только пользователь нажимает клавишу Enter. Введенная информация при этом будет приведена к соответствующему типу и записана в переменную.
Функция getch
из библиотеки conio.h не имеет параметров и используется для ввода с клавиатуры отдельного символа нажатой клавиши. В отличие от scanf, эта функция не требует нажатия Enter для подтверждения конца ввода. Оператор завершает работу сразу после того, как нажата любая клавиша. Ваша программа может анализировать возвращаемое этой функцией значение с тем, чтобы немедленно на него реагировать. Мы будем также использовать эту функцию в конце программы для того, чтобы приостановить закрытие окна на время ознакомления с результатами работы.
Рассмотрим следующий пример работы с функциями консольного ввода-вывода.
Пример 1
. Напишите программу, выводящую на экран символы звездочки «*» в форме ромба, как это показано на рисунке справа.
Решение. Задача может быть решена несколькими способами. Ниже приводится один из вариантов.
#
include
<
stdio
.
h
>
// Подключаем библиотеки
#
include
<
conio
.
h
>
// консольного ввода-вывода
printf
(» *\
n
»);
// В программе используем несколько
printf
(» * *\
n
»);
// последовательных вызовов функции
printf
(» * *\
n
»);
// printf для вывода на экран
printf
(«* *\
n
»);
// отдельных строк рисунка.
printf
(» * *\
n
»);
// Каждую строку заканчиваем
printf
(» * *\
n
»);
// управляющим символом ‘\n’.
getch();
// Задержка до нажатия любой клавиши
Потоковый ввод-вывод организуется с помощью библиотеки iostream.h, что предполагает наличие директивы #include в заголовочной части программы. В библиотеке определены два потоковых объекта с именами cin и cout, которые связаны с клавиатурой и экраном компьютера соответственно. Эти объекты используются как источник входящей информации (поток cin) и контейнер исходящей информации (поток cout). Для них определены следующие операции:
· извлечение из потока cin (знак операции «>>»),
· размещение в потоке cout (знак операции «<<»).
cout << текстовая строка_или_переменная;
Здесь первая строка означает извлечение числового значения из потока cin (т.е. ввод с клавиатуры) и его запись в переменную. Вторая строка – размещение простой текстовой стоки или числового значения переменной в потоке cout (т.е. вывод на экран).
cout << index; // выводит на экран значение index
cin >> x; // вводит значение x с клавиатуры
cout << «Enteryourname»; // выводит текстовую строку
cin >> name; // вводит переменную name
В отличие от соответствующих конструкций консольного ввода-вывода, потоковые операторы нигде не требуют явного указания типа переменных. В приведенных выше примерах index, x, name могут быть переменными любого типа (int, float, charи т.д.), и во всех случаях представленные операторы будут работать корректно. Это происходит за счет автоматического определения типа переменной в потоковых операциях. Программист получает дополнительные удобства в связи с исключением ошибок приведения типов, которые характерны для консольных операций. Начинающим программистам C++ часто рекомендуется использовать именно потоковые операции, как более надежную (и современную) технику программирования.
Поток cout допускает наличие в выводимой текстовой строке управляющих символов или ESC‑последовательностей (`\n`, `\t`, `\b` и др., см. таблицу выше), действие которых аналогично их действию в операторе printf. Кроме того, вывод в cout может управляться с помощью специальных потоковых манипуляторов
. Например, манипулятор endl (endline) приводит к завершению текущей строки и переводу курсора на новую экранную строку. Запись cout << endl, таким образом, приводит к тому же результату, что и конструкция cout << «\n».
Решение сформулированной выше задачи о выводе на экран фигуры в форме ромба средствами потокового ввода-вывода показано в следующем листинге
#
include
<
iostream
.
h
>
// для потокового вывода в cout
#
include
<
conio
.
h
>
// для использования getch
Откомпилируйте код этой программы, запустите на выполнение и проверьте результат.
3. Арифметические операции и математические функции

Выполнение вычислений составляют основу подавляющего большинства компьютерных программ. Для этой цели C++ использует множество арифметических операций, каждая из которых имеет свой знак. Ниже приведена таблица наиболее употребительных бинарных операций, то есть операций c двумя аргументами, с примерами их программной записи
Круглые скобки в арифметических выражениях C++ используются так же, как в алгебре. При определении порядка вычислений сложных выражений C++ придерживается стандартных правил старшинства операций: первыми выполняются операции в скобках; затем операции умножения, деления, и вычисления остатка; в завершение – операции сложения и вычитания. Пример:
В последнем выражении скобки необходимы для сохранения правильного порядка операций – сначала суммирование, затем деление.
Кроме арифметических операций, язык C++ дает удобные возможности использования математических функций. Большая их часть содержится в библиотеке math.h, и для пользования ими требуется соответствующая директива #include . Наиболее употребительные математические функции приведены в таблице:
Все перечисленные функции принимают в качестве аргумента вещественную переменную (или константу) и возвращают вещественный результат. Использовать функции можно путем их вызова, аналогично вызову функций ввода-вывода. Например, в результате выполнения следующего набора операторов переменная y получит значение квадратного корня из 2:
В библиотеке math.h также определены некоторые часто используемые математические константы, часть из которых приведена ниже
Необходимо написать программу, запрашивающую у пользователя длины сторон треугольника a, b, c и выводящую на экран углы a, b, g.
Решение. Воспользуемся известной формулой косинусов, которую последовательно применим для нахождения всех углов треугольника. Рассчитанные значения a, b, g переведем из радианов в градусы, помножив их на 180°/p.
#include // для потокового ввода-вывода
#include // для acos(x) и M_PI
floata, b, c; // объявляем переменные a, b, c
cout << «inputa–»; // выводим на экран приглашение
cin >> a; // вводим значение a, и т.д.
floatalpha, betta, gamma; // объявляем переменные
alpha = acos((b*b + c*c – a*a)/(2*b*c)); // считаем alpha
betta = acos((a*a + c*c – b*b)/(2*a*c)); // считаем betta
gamma = acos((a*a + b*b – c*c)/(2*a*b)); // считаем gamma
cout << «\n alpha =» << alpha/M_PI*180; // выводимвсе
cout << «\n betta =» << betta/M_PI*180; // углынаэкран
cout << «\n gamma =» << gamma/M_PI*180; // (вградусах)
cout << «\n» << alpha + betta + gamma; // суммауглов=pi?

Название: Операции ввода вывода Арифметические операции
Раздел: Рефераты по информатике
Тип: лабораторная работа
Добавлен 17:17:56 02 июля 2010 Похожие работы
Просмотров: 85
Комментариев: 14
Оценило: 2 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Лабораторная работа: Операции ввода вывода Арифметические операции
Контрольная работа по теме Вплив транспорту на довкілля та живі організми
Сочинение На Тему Война Интересные Встречи
Пример Сочинения По Русскому
Курсовая работа по теме Роль ТНК Nestle в современной мировой экономике
Реферат по теме Воззрения Аистотеля
Курсовая работа по теме Разработка базы данных 'Туризм и отдых'
Научная Работа На Тему Изучение Роли Редуплицированных Слов В Различных Стилях Речи
Сочинение Описание Внешности Пушкина 7 Класс
Контрольная работа по теме Технология и организация обслуживания в гостинице
Курсовая работа по теме Годовой расчет работы автотранспортного предприятия
Контрольная Работа На Тему Биопотенциал. Эндокринная Функция Поджелудочной Железы
Сочинение Поздняя Осень С Корнями Чередования
Автореферат На Тему Вільні Амінокислоти Крові В Діагностиці Спадкових Хвороб Обміну У Дітей Високого Генетичного Ризику
Контрольная работа по теме Этапы развития психологии
Реферат Понятие Средние Века Периодизация Средневековья
Казахское Ханство Эссе
Доклад: Кубомедузы. Скачать бесплатно и без регистрации
Контрольная работа: Tourism in Spain
Реферат: Общие принципы инвестиционной деятельности в Тунисе
Гдз Практические Работы 3 Класс
Статья: Догматика ислама
Реферат: Порядок государственной регистрации юридических лиц при их создании - проблемы и решения
Курсовая работа: Этапы развития науки управления персоналом

Report Page