Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2010, 12:14   #1
Nastery
Новичок
Джуниор
 
Регистрация: 29.01.2010
Сообщений: 2
По умолчанию Циклы и ООП на Паскале

Программирование Циклов и ООП на Паскале.
Пыталась сделать сама - ничего не выходит. Надеюсь на вас.

1)По введенным с клавиатуры значениям A, B, n, m и X вычислить S

S=A+BE(X-A*B*i)/(X+A*B*i)
i=2,4,6....
E - значек суммы, простите за такое обозначение. Не знаю, как сюда вставлять формулы из ворда.

2)Движение треугольника по треугольному контуру. С помощью объектно-ориентированного программирования(ООП)

Ребят, выручайте, буду очень вам благодарна.

Последний раз редактировалось Nastery; 29.01.2010 в 12:32.
Nastery вне форума Ответить с цитированием
Старый 29.01.2010, 12:50   #2
MadReason
Ищу работу
Форумчанин
 
Аватар для MadReason
 
Регистрация: 16.02.2007
Сообщений: 269
По умолчанию

100р, стучи 107335
Пишу на Delphi все что угодно, недорого, красиво, с комментариями
###icq 107335###
MadReason вне форума Ответить с цитированием
Старый 29.01.2010, 13:19   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Пыталась сделать сама
Показывай как пыталась.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.01.2010, 18:56   #4
mrLee
 
Регистрация: 15.10.2009
Сообщений: 4
По умолчанию

а i до скольки-то?
mrLee вне форума Ответить с цитированием
Старый 31.01.2010, 22:30   #5
Nastery
Новичок
Джуниор
 
Регистрация: 29.01.2010
Сообщений: 2
По умолчанию

С 1 задачкой разобралась сама, а вот код для построения треугольника. Не могу понять в чем ошибка...
Код:
program LABA4;
uses graph, crt;
label m;
type objworld = object
driver, mode: integer;
procedure create;
procedure destroy;
constructor initworld(id,im: integer);
end;
constructor objworld.initworld(id, im: integer);
begin
driver:= id;
mode:= im;
end;
procedure objworld.create;
begin
InitGraph(driver,mode,'C:\');
end;
procedure objworld.destroy;
begin
CloseGraph;
end;
type coords = object
x, y: integer;
constructor Init(ix,iy: integer);
destructor Delete;
function GetX: integer; virtual;
function GetY: integer; virtual;
procedure SetX(cx: integer); virtual;
procedure SetY(cy: integer);virtual;
end;
procedure coords.SetX(cx: integer);
begin
x:= cx;
end;
procedure coords.SetY(cy: integer);
begin
y:= cy;
end;
function coords.GetX: integer;
begin
GetX:= x;
end;
function coords.GetY: integer;
begin
GetY:= y;
end;
destructor coords.Delete;
begin
x:= 0;
y:= 0;
end;
constructor coords.Init(ix,iy: integer);
begin
x:= ix;
y:= iy;
end;
type vector = object (coords)
vecx,vecy: integer;
procedure setx(ix: integer); virtual;
procedure sety(iy: integer); virtual;
procedure setvecx(ix: integer);
procedure setvecy(iy: integer);
function getx: integer; virtual;
function gety: integer; virtual;
function getvecx: integer;
function getvecy: integer;
end;
function vector.getvecx: integer;
begin
getvecx:= vecx;
end;
function vector.getvecy: integer;
begin
getvecy:= vecy;
end;
function vector.getx: integer;
begin
getx:= x;
end;
function vector.gety: integer;
begin
gety:= y;
end;
procedure vector.setx(ix: integer);
begin
x:= ix;
end;
procedure vector.sety(iy: integer);
begin
y:= iy;
end;
procedure vector.setvecx(ix: integer);
begin
vecx:= ix;
end;
procedure vector.setvecy(iy: integer);
begin
vecy:= iy;
end;
type triang = object (coords)
dx, dy, cx, cy: integer;
constructor initialize(ix,iy,idx,idy,icx,icy: integer);
procedure draw(c: integer);
procedure move(ix,iy: integer);
end;
procedure triang.
move;
begin
inc(x,ix);
inc(y,iy);
end;
procedure triang.draw;
begin
setcolor(c);
line(x,y,x+dx,y+dy);
line(x+dx,y+dy,x+cx,y+cy);
line(x+cx,y+cy,x,y);
end;
constructor triang.initialize(ix, iy, idx, idy, icx, icy: integer);
begin
x:= ix;
y:= iy;
dx:= x+idx;
dy:= y+idy;
cx:= x+icx;
cy:= y+icy;
end;
type
worldptr = ^objworld;
triangptr = ^triang;
var
vec: vector;
world: worldptr;
triangle: triangptr;
b: integer;
z: boolean;
begin
b:= 0;
z:= true;
vec.setvecx(4);
vec.setvecy(4);
world:= new(worldptr,initworld(vga, vgahi));
triangle:= new(triangptr,initialize(20,20,100,-20,45,50));
world^.create;
setcolor(5);
repeat
triangle^.draw(0);
triangle^.move(vec.vecx,vec.vecy);
triangle^.draw(6);
if(triangle^.x >= 600)or(triangle^.x <= 0)then
begin
vec.vecx:= -vec.vecx;
z:= not z;
if(z = true)then vec.vecy:= 4;
inc(b);
end;
if(triangle^.y >= 300)or(triangle^.y <= 0)then
begin
if(b = 0)then begin vec.vecy:= -4; end;
if(b=3)or(b=2)then begin vec.vecy:= 0; end;
inc(b);
end;
if (z = true) and (b>120) then break;
delay(10000);
until keypressed;
world^.destroy;
end.

Последний раз редактировалось Stilet; 01.02.2010 в 08:57.
Nastery вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ООП VladimirVB Общие вопросы Delphi 4 18.11.2009 22:51
ООП AlekDruzh Паскаль, Turbo Pascal, PascalABC.NET 0 09.09.2009 20:32
Паскаль ООП. Примеры программ с использованием ООП SeЯgey Помощь студентам 5 13.05.2009 21:55
ООП Римма Общие вопросы Delphi 16 15.04.2008 11:32