Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Pytanie] Funkcja kwadratowa w oknie aplikacji.


Rekomendowane odpowiedzi

Opublikowano

Witam , mam na zadanie do zrobienia funkcię kwadratową w c++, jest to oczywiście banalne, ale nie w tym tkwi moje pytanie. Funkcja kwadratowa ma byc w oknie aplikacji coś podobnego jak niżej, tylko do funkci kwadratowej:

 

1_6_1.png

 

Ma to wyglądac: podaje w okienkach A, B, C liczby. Po naciśnięciu guzika wykonaj, powinno mi podac delte, x1 i x2.

Nie mam pojęcie jak sie do tego zabrac, liczę na jakieś podpowiedz albo w komentarzach podajcie mi jakieś poradniki.

Z góry bardzo dziękuje :)

Opublikowano

Dobra zaprojektowałem okno aplikacji,na razie żeby było. Teraz w jaki
sposób ja mam pola tekstowe połaczyc z funkcją kwadratową ?? Żebym
wpisywał w poszczególne pola liczby i obliczało mi wszystko ???


Liczę na jakieś podpowiedzi

nfnns6.jpg

Oto kod samego szkieletu okna aplikacji:

 

 

#include

LPSTR NazwaKlasy = "Klasa Okna";
MSG Komunikat;

LRESULT CALLBACK WndProc(HWND hwnd , UINT msg, WPARAM wParam, LPARAM lParam);

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
WNDCLASSEX ko;
ko.cbSize = sizeof(WNDCLASSEX);
ko.style = 0;
ko.lpfnWndProc = WndProc;
ko.cbClsExtra = 0;
ko.cbWndExtra = 0;
ko.hInstance = hInstance;
ko.hIcon = LoadIcon(NULL, IDI_APPLICATION);
ko.hCursor = LoadCursor(NULL, IDC_ARROW);
ko.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
ko.lpszMenuName = NULL;
ko.lpszClassName = NazwaKlasy;
ko.hIconSm = LoadIcon(NULL, IDI_APPLICATION);

if (!RegisterClassEx (&ko))
return 0;


HWND hwnd, Ramka, Pole_Tekstowe, Przycisk ;


hwnd = CreateWindowEx(WS_EX_CLIENTEDGE, NazwaKlasy, "Funkcja Kwadratowa", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 550, 350, NULL, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "Program Funkcja kwadratowa", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 10, 5, 500, 300, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "Podaj A:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 20, 30, 170, 60, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "Podaj B:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 20, 90, 170, 60, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "Podaj C:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 20, 150, 170, 60, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "Ilosc miejsc zerowych:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 250, 30, 220, 60, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "Delta wynosi:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 250, 90, 220, 60, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "X1 wynosi:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 250, 150, 220, 60, hwnd, NULL, hInstance, NULL);
Ramka = CreateWindowEx(0,"BUTTON" , "X2 wynosi:", WS_CHILD | WS_VISIBLE | BS_GROUPBOX, 250, 210, 220, 60, hwnd, NULL, hInstance, NULL);

Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 30, 50, 150, 30, hwnd, NULL, hInstance, NULL);
Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 30, 110, 150, 30, hwnd, NULL, hInstance, NULL);
Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 30, 170, 150, 30, hwnd, NULL, hInstance, NULL);
Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 260, 50, 200, 30, hwnd, NULL, hInstance, NULL);
Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 260, 110, 200, 30, hwnd, NULL, hInstance, NULL);
Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 260, 170, 200, 30, hwnd, NULL, hInstance, NULL);
Pole_Tekstowe = CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 260, 230, 200, 30, hwnd, NULL, hInstance, NULL);
Przycisk = CreateWindowEx(0, "BUTTON", "Licz", WS_CHILD | WS_VISIBLE, 40, 240, 120, 30, hwnd, NULL, hInstance, NULL);


ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);

while(GetMessage(&Komunikat, NULL, 0, 0))
{
TranslateMessage(&Komunikat);
DispatchMessage(&Komunikat);
}
return Komunikat.wParam;
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch(msg)
{
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, msg, wParam, lParam);
}
return 0;
}




 

 

A o to program funkcji kwadratowej zwykły:

 

 

 

 



#include
#include
#include
float fdelta(float,float,float);
float iks1(float,float,float);
float iks2(float,float,float);
float wysw(float,float);
int main()
{
char g;
float a,b,c;
float delta;

printf("\npodaj a: ");
scanf("%f",&a);

printf("\npodaj b: ");
scanf("%f",& B);

printf("\npodaj c: ");
scanf("%f",&c);

fdelta(a,b,c);
if (fdelta>=0)
{
printf("delta: %f \n", fdelta);
iks1(a,b,fdelta(a,b,c));
iks2(a,b,fdelta(a,b,c));
wysw(iks1(a,b,fdelta(a,b,c)),iks2(a,b,fdelta(a,b,c)));
}
else printf("\nDelta ujemna brak rozwiazania");

return 0;
scanf("%c",&g);
}
float fdelta(float a,float b,float c)
{
float delta;
delta=((b* B)-(4*a*c));

return(delta);
}
float iks1(float a, float b,float delta)
{
float x1;
x1=((-b+sqrtf(delta))/(2*a));
return(x1);
}
float iks2(float a, float b,float fdelta)
{
float x2;
x2=(-b-sqrtf(fdelta))/(2*a);
return(x2);
}
float wysw(float iks1,float iks2)
{
printf("\nPierwiastek pierwszy: %f",iks1);
printf("\nPierwiastek drugi: %f\n\n",iks2);
return 0;
}

 

 

 

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...