|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.01.2018, 15:08 | #1 |
Пользователь
Регистрация: 23.01.2018
Сообщений: 16
|
Откуда берутся числа в решении?
Условие задачи прикреплено в скрине.
Разбираю решение, выложенное в нете. Код программы: //--------------------------------------------------------------------------- #include <vcl.h> #include <math.h> #pragma hdrstop #include "l2.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { float x, y, z, a, c, u; z = StrToFloat(Edit1->Text); a = StrToFloat(Edit2->Text); c = StrToFloat(Edit3->Text); if(z<0) x = log(z*z-z); else x = 2*z+1; // Проверка номера нажатой кнопки и выбор соответствующей функции switch(RadioGroup1->ItemIndex){ case 0: u=2*x; Memo1->Lines->Add("2x = "+FloatToStrF(u,ffFixed,8,6)); break; case 1: u=x*x; Memo1->Lines->Add("x^2= "+FloatToStrF(u,ffFixed,8,6)); break; case 2: u=x/3; Memo1->Lines->Add("x/3= "+FloatToStrF(u,ffFixed,8,6)); break; } //находим значение функции y=sin(u)*sin(u)+a*pow(pow(x,3),5)+c *log(pow(x,2/5)); //выводим результат Memo1->Lines->Add("y = "+FloatToStrF(y,ffFixed,8,6)); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { Edit1->Text="0,1"; Edit2->Text="1"; Edit3->Text="1"; Memo1->Clear(); Memo1->Lines->Add("Лабораторная работа 2"); RadioGroup1->ItemIndex = 0; } Вопрос: Откуда берутся эти значения? void __fastcall TForm1::FormCreate(TObject *Sender) { Edit1->Text="0,1"; Edit2->Text="1"; Edit3->Text="1"; |
23.01.2018, 15:25 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Умолчания. Сделай свои если не нравятся )) Единички походу значения коэффициентов a и c. А 0,1 значение для z
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
23.01.2018, 15:34 | #3 |
Пользователь
Регистрация: 23.01.2018
Сообщений: 16
|
|
23.01.2018, 15:46 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Не, z нельзя любой, логарифм же только от положительных. Да и x^(2/5) для отрицательных x проблемно, смотря как вычислять будешь. Если (pow(x,2/5) то х не может быть отрицательным, а если сначала в квадрат, а потом корень извлечь то можно ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 23.01.2018 в 15:48. |
23.01.2018, 15:51 | #5 | |
Пользователь
Регистрация: 23.01.2018
Сообщений: 16
|
Цитата:
Надо мне еще за математику взяться Большое спасибо) я пока не буду тему закрывать, тк только начала выполнять эти задачи. |
|
29.01.2018, 12:13 | #6 |
Пользователь
Регистрация: 23.01.2018
Сообщений: 16
|
Возник еще вопрос. Программа выше написана на языке С++?
Дело в том, что в пособии, что выдали в уч заведении, написано пособие по языку си. В методичках же везде начиная с первого задания стоит так С/С++ |
29.01.2018, 15:21 | #7 |
Участник клуба
Регистрация: 30.01.2011
Сообщений: 1,578
|
На с++, да и еще похоже в Borland C++ (IDE)
пишу код не только за печеньки
|
29.01.2018, 16:03 | #8 |
Пользователь
Регистрация: 23.01.2018
Сообщений: 16
|
|
02.02.2018, 12:06 | #9 |
Пользователь
Регистрация: 23.01.2018
Сообщений: 16
|
Появился новый вопрос.
Вот задание Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры. Работу программы проверить для a = 0,1; b = 1,0; h = 0,1; значение параметра n выбрать в зависимости от задания (10, 20, 50, 100). Вариант #include <vcl.h> #include <stdio.h> #include <conio.h> #include <math.h> #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused int main(int argc, char* argv[]) { float a, b, x, h, y, s, r; int n, k, fact; puts("Input a,b,h,n"); scanf("%f%f%f%d", &a, &b, &h, &n); for(x = a; x<=b; x+=h){ printf("\n x= %8.2f",x); y=exp(2*x); printf("\n Y(x)= %8.6f",y); fact=1; s=0; for(k=0; k<=n; k++){ if(k==0) fact = 1; else fact*=k; s+= pow(2*x,k)/fact; } printf("\n S(x)= %8.6f",s); r=fabs(y-s); printf("\n |Y(X)-S(X)|= %8.6f",r); } puts("\nPress any key ... "); getch(); return 0; } Вопрос по поводу выделенного полужирным, почему там так написано? Спасибо |
02.02.2018, 12:43 | #10 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,546
|
Почему fact=1; s=0; ? Ну так это задание начальные значений: для сумматора 0, для произведений 1. ("Очистка" единицей, "очистка" нулем). Если этого не сделать, результаты операций будут наслаиваться на начальную неопределенность. fact не может быть 0, потому что все результаты умножений на 0 всегда будут 0.
В этом был смысл вопроса ? Дальше код не смотрел. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Откуда берутся космически большие цифры в массиве? | AlFina | Помощь студентам | 8 | 17.09.2015 06:08 |
Откуда берутся "тики" Stopwatch.Frequency | lawliet93 | C# (си шарп) | 9 | 27.03.2014 19:46 |
даны два числа A и B.проверить являются ли числа A и B нечётными ( Делфи 7 нужна помощь в решении задач) | nadyaH | Помощь студентам | 7 | 24.10.2013 17:51 |
Откуда берутся расширения у файлов | Ципихович Эндрю | Общие вопросы по программированию, компьютерный форум | 38 | 29.07.2012 10:56 |
Откуда берутся милионные при простых операциях | mrMad-Cat | Microsoft Office Excel | 2 | 07.02.2012 16:56 |