Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Программирование вычисления алгебраических выражений

Читайте также:
  1. VII) Закончите предложения с помощью подходящих модальных выражений.
  2. В оперативной памяти находятся 10 переменных, содержащих числа, - S1, S2, ... S10. Программирование в среде Ассемблера. Сосчитать их произведение.
  3. Ввод математических выражений
  4. Ведомость вычисления объема грунта
  5. Вычисление арифметических выражений
  6. Вычисление приведенных интегралов аналитически и нахождение абсолютной погрешности вычисления.
  7. Вычисления в запросах

Ввод символов до некоторого ограничителя
//(в данном случае х)

int main(){

char ch;

cout << "Input char (end - x)\n ";

do {

cout << ":"; //приглашение к вводу

cin >> ch; //ввод символа завершаем нажатием <enter>

} while (ch!= 'x');

cout << " <x> -- end " << endl;

_getch();

return 0;

}

 

 

getchar() – ждет ввода символа и нажатия <enter> //функции С

getche() – вводит символ c эхо и не ждет <enter>

getch(), _getch() – ждет ввода символа и нажатия <enter>

 

while ( (ch=getche() )!=’\r’) //пока не нажата клавиша <enter>

{ if ch==’ ‘ …..

else ……}

Определение первого символа вводимого значения

Функция (метод) peek() объекта cin класса istream возвращает из потока очередной символ (оставляя его в потоке), или EOF, если достигнут конец файла;

//1

char c[10], c2;

cout << "Type 'abcde': ";

//abcde, набранные на клавиатуре, попадают в буфер ввода;

//принимающий объект cinкласса istream с помощью своего методаpeek() извлекает
// из буфера ввода очередной (первый, в данном случае) символ, т.е. а (оставляя его там)

c2 = cin.peek(); //определяет первый вводимый символ

cin.getline(&c[0], 9); //с помощью метода getline() в символьный массив с
//вводится строка abcde

cout << c2 << " " << c << endl; //вывод символа a и строки abcde

//2

double f;

char c2;

cout << "Type 123.456: ";

c2 = cin.peek();

cin >> f;

cout << c2 << " " << f << endl; //1 123.456

//3

char c, c2;

cout << "Type simvol a: ";

c2 = cin.peek(); //определяет вводимый символ

cin >> c;

cout << c2 << " " << c << endl; //a a

Контроль правильности ввода значения переменной

При вводе значения любого из целочисленных типов, превосходящего максимально допустимое значение для диапазона типа соответствующей переменной, фактически вводится неверное значение. Чтобы обнаружить ошибку, необходимо контролировать вводимые данные.

Контроль правильности ввода значения некоторого типа можно реализовать, например, таким образом:

//проверка ввода значения из диапазона значений типа unsigned char

unsigned int uchar; //более широкий тип unsigned int

do {

cout << "input unsigned char:" << endl;

cin >> uchar;

} while(uchar < 0 || uchar > UCHAR_MAX); //диапазон значений типа unsigned char

 

//проверка ввода значения из диапазона значений типа int

float f; //более широкий тип float

int i;

do {

cout << "input int:" << endl;

cin >> f;

} while(f < INT_MIN || f > INT_MAX);

i=f;

cout <<"ok " << i << endl;

Если компилируем как C++:

#define _USE_MATH_DEFINES

#include <cmath>

Если компилируем как C:

#define _USE_MATH_DEFINES

#include <math.h>

 


Дата добавления: 2015-07-08; просмотров: 165 | Нарушение авторских прав


Читайте в этой же книге: Классификация операций | Приоритеты (ранги) операций | Арифметические операции | Выделение цифр в целом числе | Операции присваивания | Примеры использования | Логические выражения и примеры их записи | Пример 6. | Правила преобразования типов | Примеры преобразования типов |
<== предыдущая страница | следующая страница ==>
Адрес переменной| Основные встроенные (стандартные) функции

mybiblioteka.su - 2015-2024 год. (0.006 сек.)