методичка. метода по ООП для практики. Лабораторная работа 1. Линейный вычислительный процесс 2 Общие теоретические сведения 2 Создание оконного приложения 6
Скачать 1.1 Mb.
|
3.2. Пример выполнения заданияНаписать и отладить программу вывода всех значений функции S(x) для аргумента х, изменяющегося в интервале от а до b c шагом h и заданном n. . Панель диалога и полученные результаты представлены на рис. 3.1. 3.2.1. Пример создания оконного приложенияТекст функций-обработчиков может быть следующим (стандартный текст опущен): //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { Edit1->Text="0,1"; Edit2->Text="1,0"; Edit3->Text="10"; Edit4->Text="0,2"; Memo1->Lines->Add("Лабораторная работа 3"); } Рис. 3.1 //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { double a, b, x, h, r, s; int n, zn = -1, k; a = StrToFloat(Edit1->Text); b = StrToFloat(Edit2->Text); n = StrToInt(Edit3->Text); h = StrToFloat(Edit4->Text); for(x = a; x<=b; x+=h) { r = s = 1; for(k = 1; k<=n; k++) { r = zn*r*x/k; s+=r; } Memo1->Lines->Add("при x= "+FloatToStrF(x,ffFixed,8,2) +" сумма= "+FloatToStrF(s,ffFixed,8,5)); } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Memo1->Clear(); } 3.2.2. Пример создания консольного приложенияТекст программы предложенного задания может иметь вид #include #include #include #pragma hdrstop #pragma argsused int main(int argc, char* argv[]) { double a, b, x, h, r, s; int n, zn = -1, k; puts("Input a,b,h,n"); scanf("%lf%lf%lf%d", &a, &b, &h, &n); for(x = a; x<=b; x+=h) { r = s = 1; for(k = 1; k<=n; k++) { r=zn*r*x/k; s+=r; } printf("\n x= %8.2lf sum= %8.5lf", x,s); } puts("\nPress any key ... "); getch(); return 0; } Результат программы с введенными значениями a=0.1, b=1.0, h=0.2 и n=10: 3.3. Индивидуальные заданияДля каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры. Так как значение S(x) является рядом разложения функции Y(x), при правильном решении значения S и Y для заданного аргумента x (для тестовых значений исходных данных) должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки. Работу программы проверить для a = 0,1; b = 1,0; h = 0,1; значение параметра n выбрать в зависимости от задания. 1. , . 2. . 3. . 4. . 5. . 6. . 7. , . 8. , . 9. , . 10. , . 11. , . 12. , . 13. , . 14. , . 15. , . 16. . |