Главная страница
Навигация по странице:

  • Button1Click

  • Button2Click


  • методичка. метода по ООП для практики. Лабораторная работа 1. Линейный вычислительный процесс 2 Общие теоретические сведения 2 Создание оконного приложения 6


    Скачать 1.1 Mb.
    НазваниеЛабораторная работа 1. Линейный вычислительный процесс 2 Общие теоретические сведения 2 Создание оконного приложения 6
    Анкорметодичка
    Дата11.01.2022
    Размер1.1 Mb.
    Формат файлаdoc
    Имя файламетода по ООП для практики.doc
    ТипЛабораторная работа
    #328342
    страница8 из 19
    1   ...   4   5   6   7   8   9   10   11   ...   19

    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. .
    1   ...   4   5   6   7   8   9   10   11   ...   19


    написать администратору сайта