ewka110
-
Postów
10 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Odpowiedzi opublikowane przez ewka110
-
-
ktos mi moze powiedziec jak napisac kod do takiego programu?Nie mam kompletnie pojecia jak to zrobic, jedyne co mam to tylko to:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, XPMan, StdCtrls, ExtCtrls, Spin,Math;
type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
Image: TImage;
Button1: TButton;
XPManifest1: TXPManifest;
Button2: TButton;
SpinX0: TSpinEdit;
SpinY0: TSpinEdit;
SpinSkala: TSpinEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
m:integer = 20;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
x0, y0, skala, w_image, h_image,yp,y,x,xp: integer;
begin
x0 := spinX0.Value;
y0 := spinY0.Value;
skala := spinSkala.Value;
w_image := Image.Width;
h_image := Image.Height;
image.canvas.Brush.Color := rgb (255,255,255);
image.Canvas.Rectangle(0,0,w_image,h_image);
image.Canvas.MoveTo(m,y0);
image.Canvas.LineTo(w_image-m,y0);
image.Canvas.Brush.Color:= rgb (0,0,0);
image.Canvas.Polygon([Point(w_image-m, y0),Point(w_image-m-10,y0-5),Point(w_image-m-10,y0+5)]);
image.Canvas.MoveTo(x0,m);
image.Canvas.LineTo(x0,h_image-m);
image.Canvas.Brush.Color:= rgb (0,0,0);
image.Canvas.Polygon([Point(x0,m),Point(x0-5,m+10),Point(x0+5,m+10)]);
y:=0;
yp:= y0;
while (yp > m + skala) do
begin
yp:= yp - skala;
y:= y +1;
image.Canvas.Brush.Style := bsclear;
image.Canvas.textout(x0+6,yp-4,IntToStr(y));
image.Canvas.MoveTo(x0-3,yp);
image.Canvas.LineTo(x0+3,yp);
end;
y:= 0;
yp:= y0;
while (yp<h_image - skala) do
begin
yp:= yp + skala;
y:=y-1;
image.Canvas.Brush.Style := bsclear;
image.Canvas.textout(x0+6,yp-4,IntToStr(y));
image.Canvas.MoveTo(x0-3,yp);
image.Canvas.LineTo(x0+3,yp);
end;
x:=0;
xp:=x0;
while(xp>m) do
begin
xp:=xp-skala;
x:=x-1;
image.Canvas.Brush.Style:=bsclear;
image.Canvas.TextOut(xp,y0+6,IntToStr(x));
image.Canvas.MoveTo(xp,y0-3);
image.Canvas.LineTo(xp,y0+3);
end;
x:=0;
xp:=x0;
while (xp<w_image+skala) do
begin
xp:=xp +skala;
x:= x+1;
image.Canvas.Brush.Style:=bsclear;
image.Canvas.TextOut(xp,y0+6,IntToStr(x));
image.Canvas.MoveTo(xp,y0-3);
image.Canvas.LineTo(xp,y0+3);
end;
xp:=x0;
while (xp<w_image +skala) do
begin
xp:=xp+skala;
image.Canvas.Pen.Color:=rgb(192,192,192);
image.Canvas.Polygon([point(xp,m),point(xp,h_image-m)]);
end;
xp:=x0;
while (xp>m) do
begin
xp:=xp-skala;
image.Canvas.Pen.Color:=rgb(192,192,192);
image.Canvas.Polygon([point(xp,m),point(xp,h_image-m)]);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
x0, y0, skala, w_image, h_image,y,x,xs,xe: integer;
begin
x0 := spinX0.Value;
y0 := spinY0.Value;
skala := spinSkala.Value;
w_image := Image.Width;
h_image := Image.Height;
xs := 0 - x0 + m;
xe := xs + w_image - 2*m;
image.Canvas.MoveTo(m,(round(sin(DegtoRad(xs))*skala*(-1))+y0));
for x := m to w_image - 2*m do
begin
image.Canvas.LineTo(x,(round(sin(degToRad(x-m+xs))*skala*(-1))+y0));
end;
end;
-
ok dzięki Wam bardzo
-
czy ktos moglby mi powiedziec jak w delphi napisac program, który będzie mi wyswietlal kwadrat a w nim nastepne kwadraty tylko obrocone? czy ma to zrobic za pomocą pętli?
-
Nie ma za co. Mi wystarczy, że będziesz się uczyć.
Na pewno się przyłożę. Jeszcze raz dzięki.
-
https://gmclan.org/up152_3_trojkaty.html w Delphi 6.
Prosz, takie straszne? :)
Jeju, bardzo Ci dziękuję. Chciałabym się pdwdzięczyć, ale nawet nie wiem jak..Dzięki serdeczne!
-
Tak, tylko jakie. Bo skoro to mają być 4 osobne programy to mogą mieć różne inputy. Więc się pytam, co użytkownik ma podać w każdym z tych programów. W sumie wszystko można obliczyć jak ma się podane długości boków, ale wolę być po prostu pewny by 10 razy nie przepisywać programów.
Przepraszam, bo teraz kręcę. Dowiedziałam się, że to ma być jeden program, który ma mi obliczać pole,obwód,wysokość i kąty w trójkącie. I nie mam nic podane, po prostu jeśli będę wpisywać liczby to ma mi wyskakiwać odpowiedź w formie wyniku.
-
To ja dodam tylko, że pisanie w Delphi wcale nie jest trudniejsze od Basica.
Jakie dane wejściowe masz podane? Długości boków?
Właśnie nie mam nic podane. Nie wiem ja kto zrobić.
-
Zarejestrowałaś się na GMclanie, tylko po to, aby wykorzystywać użytkowników? (między innymi, aby odrabiali prace domowe za ciebie)
nie, po prostu nie wiem kompletnie jak to zrobić...
pamiętam, że chyba Tymon kiedyś pisał wszystkim takie programiki xD Ja bym z chęcią zrobił zważając że to dama, ale niestety nie programuje w Delphi.dzięki. Wiem, że pisał tylko to nie było w Delphi, już to prześledziłam.
-
Mam problem z tworzeniem programów w Delphi. Muszę stworzyć 4 programy osobno. Obliczenie w trójkącie:
- pola
- obwodu
- kątów
- wysokości
Jeśli ktoś mógłby pomóc, będę wdzięczna.
delphi
w Pascal, Delphi
Opublikowano
po prostu musze ułożyc kod do tego programu.