 |
www.etipg.fora.pl Forum studiów niestacjonarnych Politechniki Gdańskiej na ETI
|
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
pod_smith
Świeżaczek
Dołączył: 26 Wrz 2010
Posty: 16
Przeczytał: 0 tematów
Ostrzeżeń: 0/5
|
Wysłany: Sob 18:30, 20 Lis 2010 Temat postu: zad nr 2 |
|
|
moze sie komus przyda a moze nie, moje dotychczasowe prace nad projektem nr 2...
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include "winbgim.h"
//#include <windows.h>
#include "winbgim.cpp"
//using namespace std;
int main()
{
char liczba[10];
int Sterownik, Tryb;
Sterownik = DETECT;
initgraph(&Sterownik, &Tryb, "" );//"c:\\borlandc\\bgi");
// char znak[4];
int a,b,c,i,j,cx,cy,y,f,g;
double x,fx;
a = 0;
setcolor(2);
settextjustify(CENTER_TEXT, TOP_TEXT);
settextstyle(6,HORIZ_DIR,3);
outtextxy(320,0,"f(x)=x*(1-exp(-x))/(cos(x)+1)");
// znak = 'kupa';
// outtextxy(320,0,znak);
//getchar()
// restorecrtmode();
cout << "Podaj przedzial w jakim rysowac wykres (wartosci x<a,b>)\n";
// cin >> j;
// cout << i;
// setgraphmode(Tryb);
b = 0;
c = 0;
cx = 310;
cy = 320;
setcolor(1);
line(130, 320, 500, 320);
line(310, 170, 310, 470);
line(310, 170, 315, 185);
line(310, 170, 305, 185);
line(500, 320, 485, 315);
line(500, 320, 485, 325);
setcolor(2);
outtextxy(520,305,"x");
outtextxy(312,135,"y");
setcolor(1);
settextstyle(2,HORIZ_DIR,4);
g = 7;
f = -9;
for (i = 1; i <= 17; i++)
{
b = b + 20;
// c++;
f++;
g--;
line(130+b, 315, 130+b, 326);
// cout << c;
itoa(f,liczba,10);
outtextxy(130+b,330,liczba);
itoa(g,liczba,10);
outtextxy(300,175+b,liczba);
line(305,180+b,316,180+b);
}
cout << "podaj a:\n";
cin >> x;
cout << "podaj b:\n";
cin >> y;
setcolor(GREEN);
x=x-1;
c=y-x;
if (c>0)
{
a=0;
for (i = 1; i <= c+1; i++)
{
a = a + 40;
rectangle(70+a,50,110+a,90);
rectangle(70+a,90,110+a,130);
}
setcolor(BLUE);
settextstyle(3,HORIZ_DIR,1);
outtextxy(130,55,"x");
outtextxy(130,95,"f(x)");
a = 20;
b = 0;
setcolor(GREEN);
moveto(cx+x*a+a,cy-(x*(1-exp(-x))/(cos(x)+1))*a-a);
for (i = 1; i <=c; i++)
{
b = b + 40;
x=x+1;
fx = x*(1-exp(-x))/(cos(x)+1);
// moveto(cx+x*a,cy-(tan(x))*a);
putpixel(cx+x*a, cy-fx*a, RED);
gcvt(x, 2, liczba);
//itoa(x,liczba,10);
outtextxy(130+b,55,liczba);
//itoa(fx,liczba,10);
gcvt(fx, 2, liczba);
outtextxy(130+b,95,liczba);
delay(100);
// getch();
lineto(cx+x*a, cy-fx*a);
}
}
else
outtextxy(230,255,"zle podany przedzial");
// lineto(cx,cy);
// getch();
getch();
getch();
// while(!kbhit());
closegraph();
return 0;
}
tylko sie nie smiac xD
wymaga "dopracowania"
ja mialem problem z umieszczeniem zmiennych w outtextxy, a dokladniej zmiane z int na char
to zalatwia sprawe:
Cytat: | char liczba[10];
itoa(fx,liczba,10); - dla liczb calkowitych
gcvt(fx, 2, liczba); - dla ulamkow itp
|
poza tym kobita mowila dzisiaj zeby wczytywanie danych bylo w osobnym okienku ale graficznym, bo w tym przypadku jest w trybie tekstowym
Post został pochwalony 0 razy
|
|
Powrót do góry |
|
 |
|
 |
Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
bknopa
Bywalec
Dołączył: 29 Wrz 2010
Posty: 103
Przeczytał: 0 tematów
Pomógł: 3 razy Ostrzeżeń: 0/5 Skąd: Lipy, Gdańsk
|
Wysłany: Sob 22:50, 20 Lis 2010 Temat postu: |
|
|
Wszystko ma być w trybie graficznym, mam przykład na kartce narysowany przez p, Choreń. Wrzucam niżej >
[link widoczny dla zalogowanych]
Post został pochwalony 0 razy
Ostatnio zmieniony przez bknopa dnia Nie 21:11, 21 Lis 2010, w całości zmieniany 2 razy
|
|
Powrót do góry |
|
 |
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
|