- •Дисциплина: технология программирования
- •Лабораторная работа №1
- •Результаты работы программы для данных типа float
- •Объяснение результатов
- •Программа решения задания 2
- •Результат работы программы
- •Лабораторная работа №3
- •Постановка задачи
- •Текст программы
- •Результат работы программы
- •Лабораторная работа №8
- •Постановка задачи
- •Текст программы
- •Результат работы программы
- •Лабораторная работа №11
- •Постановка задачи
- •Текст программы
- •Результат работы программы
Лабораторная работа №1
«Знакомство с Си++. Выполнение программы простой структуры.»
Постановка задачи
Вычислить значение выражения при различных вещественных типах данных (float и double). Вычисления следует выполнять с использованием промежуточных переменных. Сравнить и объяснить полученные результаты.
Вычислить значения выражений. Объяснить полученные результаты.
Программа решения задания 1
#include <iostream.h>
#include <conio.h>
#include <math.h>
int main(int argc, char* argv[])
{
float a,b,c, d, e, f, g, r;
double aa,bb,cc, dd, ee, ff, gg, rr;
int m,n, r1, r2, r3;
aa = 1000;
bb = 0.0001;
a = 1000;
b = 0.0001;
c = pow(a+b,3);
d = pow(a,3);
e = pow(a,2);
f = pow(b,2);
g = pow(b,3);
r = (c-(d+3*e*b))/(3*a*f+g);
cout << "FLOAT: " << r << endl;
cc = pow(aa+bb,3);
dd = pow(aa,3);
ee = pow(aa,2);
ff = pow(bb,2);
gg = pow(bb,3);
rr = (cc-(dd+3*ee*bb))/(3*aa*ff+gg);
cout << "DOUBLE: " << rr << endl;
}
Результаты работы программы для данных типа float
рис.1.
Результат работы программы
Объяснение результатов
Так как тип double может содержать более большое число, чем тип float, то вычисление через тип double наиболее точное.
Программа решения задания 2
//---------------------------------------------------------------------------
#include <iostream.h>
#include <conio.h>
#include <math.h>
int main(int argc, char* argv[])
{
m = 5; n = 7;
cout << "\nm = 5\nn = 7\n\n";
r1 = n---m;
cout << "Result n---m: " << r1 << endl;
cout << "m=" << m << endl;
cout << "n=" << n << endl << endl;
r2 = m--<n;
cout << "Result m--<n: " << r2 << endl;
cout << "m=" << m << endl;
cout << "n=" << n << endl << endl;
r3 = n++>m;
cout << "Result n++>m: " << r3 << endl;
cout << "m=" << m << endl;
cout << "n=" << n << endl << endl;
getch ();
return 0;
}
//---------------------------------------------------------------------------
Результаты работы программы
Рис.2. Результат работы программы
Объяснение результатов
Сначала выполняется операция сложения, вычитания и сравнения, а за тем операция «++» или «--».
Лабораторная работа №2
«Использование основных операторов языка Си»
Постановка задачи
Используя оператор цикла, найти сумму элементов, указанных в конкретном варианте. Результат напечатать, снабдив соответствующим заголовком.
Текст программы
#include <iostream.h>
#include <conio.h>
#include <windows.h>
char* rus(const char* text);
int main(int argc, char* argv[])
{
int m;
m = 0;
for (int n = 1; n < 200; )
{
m = n + m;
n = n + 2;
}
cout << rus("Сумма чисел: ") << m;
getch ();
return 0;
}
char bufrus[256];
char* rus(const char* text)
{
CharToOem(text,bufrus);
return bufrus;
}
//---------------------------------------------------------------------------
