
- •Void main()
- •Void main()
- •Void main()
- •Раскомментируйте по очереди три строки, которые устанавливают систему счисления манипулятором, и определите назначение каждого манипулятора.
- •Void main()
- •Используя данную программу, определите коды символов 'm' и 'q'.
- •Void main()
- •Объясните работу программы.
- •Пример работы программы (результаты вывода на экран)
- •Void ts(void);
- •Void main (void)
- •Void ts(void)
- •20 Degrees Celsius is 68 degrees Fahrenheit.
- •Иначе, если а равняется нулю, то переменной z присваивается значение переменной а, иначе – b.
- •Решение трансцендентных уравнений методом итераций
- •Вычисление определенного интеграла по формуле Симпсона
- •Метод итераций для решения системы линейных алгебраических уравнений
- •Параболическая интерполяция
- •Метод Рунге-Кутта
1. *T1 2
2. *T2 4
3. *T4.1 5
4. *T4.2 6
5. T4.3 7
6. *T4.4 8
7. *T4.5 9
8. *Т4.6 10
9. Т4.7 11
10. Т4.8 12
11. *Т4.9 13
12. Т4.10 14
13. *Т6.1 15
14. *Т6.2 16
15. *Т6.3 17
16. *Т6.4 18
17. Т8 19
18. *Т9 20
19. Т10.1(a) 21
20. *T10.1(b) 22
21. *T10.1(с) 23
22. **T10.3 24
23. **T10.4 25
24. **T10.5(a) 26
25. **T10.5(b) 27
26. Т10.7(a) 28
27. Т10.7(b) 29
28. **Т10.8 30
29. **Т10.9(a) 31
30. **Т10.9(b) 32
31. Т10.12 33
32. Т11.4 34
33. T11.5 35
34. **Т11.6 36
35. Т11.7 37
36. Т12.1 38
37. Т12.2 39
38. Т12.3 40
Т13.1(a) 41
Т13.1(b) 41
Т13.1(c) 41
Т14.1 41
Т14.2 41
Т14.3 42
Т14.4 42
Т14.5 42
Т14.6 42
Т14.7 42
Т14.8 42
Т14.9 42
Т14.10 42
Т15.1 43
Т15.2 43
Т15.3 43
Т15.4 43
Т15.5 43
Т15.6 44
Т15.7 44
Пример: 44
Т15.8 45
Параболическая интерполяция 45
Т15.9 45
Т15.10 45
1.*T1
//Пример. Cтиль С.
/*Программа выводит
на экран числа:
2, 1.2 и 0.5*/
#include<stdio.h>
#include<conio.h>
Void main()
{
int z; float mp, v=0.5;
z=2;
mp=1.2;
printf("z = %i mp = %f v=%f",z,mp,v);
getch();
}
//Пример. Cтиль С++.
/*Программа выводит
на экран числа:
2, 1.2 и 0.5*/
#include<iostream>
using namespace std;
Void main()
{
int z; float mp, v=0.5;
z=2;
mp=1.2;
cout<<"z="<<z<<" mp="<<mp<<" v="<<v<<"\n";
cin.get();
}
Объявите переменную типа double, присвойте ей значение 3.14 и выведите её на экран.
Решение
В стиле С
#include<stdio.h> #include<conio.h> void main() { int z; float mp, v=0.5; double d; d = 3.14; z=2; mp=1.2; printf("z = %i mp = %f v = %f d = %f",z,mp,v,d); getch(); }
В стиле С++
#include<iostream> using namespace std; void main() { int z; float mp, v=0.5; double d; d = 3.14; z=2; mp=1.2; cout<<"z="<<z<<" mp="<<mp<<" v="<<v<<" d="<<d<<"\n"; cin.get(); }
2.*T2
Объясните результаты выполнения инструкций:
float z=2/5;
Объявляем переменную z типа float и присваиваем ей значение выражения 2/5 ;
z=2/5*3.14;
Переменной z присваиваем значение выражения 2/5*3.14 ;
z=3.14*2/5;
Переменной z присваиваем значение выражения 3.14*2/5;
int z=5;
Объявляем переменную z типа int и присваиваем ей 5;
int k=++z;
Объявляем переменную k типа int и присваиваем ей значение переменной z увеличенное на 1 ;
cout<<k;
Используя стандартный поток вывода cout выводим на экран значение переменной k.
int i=k++;
Объявляем переменную i типа int и присваиваем ей значение переменной k, после чего увеличиваем значение k на 1 ;
cout<<i;
Используя стандартный поток вывода cout выводим на экран значение переменной i.
cout<<z++;
Используя стандартный поток вывода cout выводим на экран значение переменной z, после чего увеличиваем значение z на 1 ;
cout<<++z;
Используя стандартный поток вывода cout выводим на экран значение переменной z, предварительно увеличенное на 1 ;
3.*T4.1
#include<stdio.h> #include<conio.h> int main() { float f=(1.f/3.f); // в операции используются константы типа float (f) double d=(1.l/3.l); // -//- типа double (l) long double l=(1.L/3.L); // -//- типа long double (L) printf("f = %23.21f\n",f); printf("d = %23.21lf\n",d); printf("l = %23.21Lf\n",l); getch(); return 0; } Загрузите программу на выполнение, и определите количество значащих цифр числа типа float, double и long double.
Программа вывела:
f = 0.333333343267440800000 d = 0.333333333333333310000 l = 0.333333333333333310000
Так как количество значащих цифр равняется числу цифр, образующих число, за исключением левых и правых нулей, то: для float количество значащих цифр после запятой равно 16, а для double и long double равно 17.
4.*T4.2
#include <iostream> using namespace std; int main() { float a=11.17, b=50.25; cout.setf(ios_base::fixed, ios_base::floatfield); cout << "a = " << a << "; b = " << b << "\n"; cout << "a + b = " << a + b << "\n"; return 0; } Примечание:
cout.setf(ios_base::fixed, ios_base::floatfield); Функция setf() сбрасывает флаги, указанные объединённым флагом floatfield (fixed и scientific) и устанавливается флаг fixed, фиксированного формата записи чисел. Если значение первого параметра функции setf не содержится во втором параметре, то флаг, указанный в первом параметре не будет установлен.
Почему результат сложения чисел 11.17 и 50.25 не равен 61.42? Как изменится результат, если в место типа float применить тип double?
При float
a = 11.170000; b = 50.250000 a + b = 61.419998
Такой результат получили потому, что у типа float для хранения числа используется меньшее количество разрядов.
При double
a = 11.170000; b = 50.250000 a + b = 61.420000
5.T4.3
#include <iostream> using namespace std; int main() { float a = 2.34E+22f; float b = a + 1.0f; cout << "a = " << a << "\n"; cout << "b - a = " << b - a << "\n"; return 0; } Загрузите программу на выполнение и объясните результат.
Результаты выполнения программы
a = 2.34e+022 b - a = 0 // так как
6.*T4.4
#include <iostream>
#include <limits>//#include <limits.h>#include <float.h>
#include<conio.h>
//using namespace std;