Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
П_лаб1_2_3_new1прав.doc
Скачиваний:
39
Добавлен:
18.11.2019
Размер:
1.17 Mб
Скачать

Оператор вывода (вывод данных из оп на внешнее устройство):

cout << выражение;

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

    1. Задание на выполнение лабораторной работы

Дома

1. Проработать материал лекций: Этапы решения задач на ЭВМ. Понятие алгоритма; Основные конструкции алгоритмического языка С++; Концепция данных языка С++. Выражения. Материал лекций рассмотрен в [1, c.7-89 ; 2, c. 5- 40].

2. Разработать алгоритм задачи вычисления арифметического и логического выражения согласно варианту.

В компьютерных классах

Разработать программу в соответствии с алгоритмом, используя оператор присваивания и операторы ввода- вывода данных.

2.4. Порядок выполнения работы

  1. Загрузить систему Borland C++3.11 (файл bc.exe);

  2. Создать новый файл для редактирования (File|New) и сохранить его на диске (F2) с некоторым именем;

  3. Написать в окне редактирования программу, которая должна содержать:

  • объявление констант и переменных;

  • ввод с клавиатуры значений переменных, используя поток cin и операцию ввода данных >>;

  • вычисление значения арифметического выражения:

1) в операторе присваивания:

а) используя выражение целиком и

б) разбив его на промежуточные переменные,

2) в параметрах функции printf(),

3) в операторе вывода: cout<<выражение;

  • ввод с клавиатуры значений координат точки (x,y), используя функцию форматного ввода scanf() и поток cin и операцию ввода >>;

  • вычисление значения логического выражения в операторе вывода в выходной поток cout и в операторе присваивания;

  • комментарий - заголовок с фамилией исполнителя и наименованием лабораторной работы и пояснительные комментарии по тексту программы.

  1. Провести компиляцию, отладку, тестирование программы, предварительно подготовив данные для тестирования.

  2. Составить отчет.

2.5. Пример варианта лабораторной работы

Задание

1. Дана формула для вычисления переменной z:

z = .

Разработать программы для вычисления значения z с использованием арифметического выражения, операторов присваивания и вывода на экран.

Значения переменных x, y ввести с клавиатуры, а константам a и b задать следующие значения a = 0.89, b= 7.56.

2. Разработать программу для вычисления логического выражения, значение которого есть истина, если координаты точки попадают в затемненную область фигуры на рис. 2.1, и ложь, если нет.

Значения координат точки x и y вводить с клавиатуры.

y

x

Рис. 2.1. Фигура для вычисления логического выражения

Текст программы

//Лабораторная работа №1 студента группы ЭВМ 1-1 Петрова Ивана

//Программирование алгоритмов линейной структуры

//Вычисление выражений

#include <iostream.h> //директивы

#include <stdio.h>

#include <math.h>

#include <conio.h> // препроцессора

const float a=0.89, b= 7.56; // определение глобальных констант

//------------------------ Главная функция--------------------------------------

void main ()

{

float x, y, z, t, q; //определение локальных переменных

clrscr(); // функция очистки экрана

cout<< "Введите переменные\nx="; // вывод на экран строковой константы

cin>>x; //ввод значения с клавиатуры

cout<<"y="; cin>>y;

cout<<"\nПромежуточные переменные:";

//операторы присваивания:

t= a+pow(y, b);

q=(exp(a*y+1)-pow(sin(x),3))*(2.25e+02-x*y/b);

z=t/q;

cout<<"\nt="<<t<<"\nq="<<q

<<"\n\nРезультат с промежуточными переменными:\nz="<<z;

z= (a+pow(y,b))/(exp(a*y+1)-pow(sin(x),3))/(2.25e+02-x*y/b);

cout<<"\n\nРезультат с помощью одного выражения:\nz=" <<z;

cout<<"\n\nРезультат с помощью выражения в операторе вывода :\nz="

<< (a+ pow(y,b))/(exp(a*y+1)-pow(sin(x),3))/(2.25e+02-x*y/b);

printf("\n\nРезультат с помощью выражения- параметра функции \

printf:\nz=%12f", (a+pow(y,b))/(exp(a*y+1)-pow(sin(x),3))/(2.25e+02-x*y/b));

//Вычисление условного выражения

int i ;

cout<<"\n\nВведите координаты точки\nx=";

cin>>x;

cout<<"y="; cin>>y;

//Вычисление выражения в операторе вывода cout<<…;

cout<<"\n\nЗначение выражения:\n"

<<((pow(x-3,2)+pow(y-5,2)<=4) && (x >= 3));

//Использование условной операции для вывода слов true или false

((pow(x-3,2)+pow(y-5,2)<=4) && (x >= 3))? cout<<" - true":cout<<"-false";

// Вычисление выражения в операторе присваивания

printf("\n\nВведите координаты точки еще раз \nx= ");

scanf(" %f",&x );

printf("y="); scanf(" %f", &y );

i=((pow(x-3,2)+pow(y-5,2)<=4) && (x >= 3));

printf("\nЗначение выражения: %d", i );

}