bairt
Удален
|
пробовал конечно просто с этой задачкой про радиус запарился и не знаю что с ней делать...
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 25 апр. 2006 12:40 | IP
|
|
miss_graffiti
Долгожитель
|
что именно делал? давай код.
|
Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 25 апр. 2006 19:23 | IP
|
|
bairt
Удален
|
uses crt; type InfoSphere=record x,y,z,r:real; end; const n=10; var InfoSp:InfoSphere; f:text; i:integer; Spheri: array[1..n] of InfoSphere; Rnew,Xnew,Ynew,Znew:real; function Lenght(x0,y0,z0,x1,y1,z1:real):real; begin Lenght:=sqrt(sqr(x0-x1)+sqr(y0-y1)+sqr(z0-z1)); end; procedure SearchMinSpher(x0,y0,z0,r0,x1,y1,z1,r1:real); var L:real; begin L:=Lenght(x0,y0,z0,x1,y1,z1); if (L=0) then begin Xnew:=x0; Ynew:=y0; Znew:=z0; if (r1>r0) then begin Rnew:=r1; end else begin Rnew:=r0; end; end else begin if (r1>r0) and ((r1-r0)>=L) then begin Rnew:=r1; Xnew:=x1; Ynew:=y1; Znew:=z1; end; if (r0>r1) and ((r0-r1)>=L) then begin Rnew:=r0; Xnew:=x0; Ynew:=y0; Znew:=z0; end; Rnew:=(r0+r1+L)/2; Xnew:=(Rnew-r0)*(x1-x0)/L+x0; Ynew:=(Rnew-r0)*(y1-y0)/L+y0; Znew:=(Rnew-r0)*(z1-z0)/L+z0; end; end; begin assign(f,'3_input.txt'); reset(f); {otkrivaem file} with InfoSp do begin for i:=0 to 4*n do begin read(f,Spheri[i div 4].x); read(f,Spheri[i div 4].y); read(f,Spheri[i div 4].z); read(f,Spheri[i div 4].r); end; Rnew:=Spheri[1].r; Xnew:=Spheri[1].x; Ynew:=Spheri[1].y; Znew:=Spheri[1].z; for i:=2 to n do begin SearchMinSpher(Xnew,Ynew,Znew,Rnew,Spheri{{i].x,Spheri{{i].x,Spheri{{i].x,Spheri{{i].x); end; end; close(f); end.
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 26 апр. 2006 9:01 | IP
|
|
bairt
Удален
|
если что можете подправить...
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 26 апр. 2006 9:03 | IP
|
|
brood
Удален
|
Тут возникла проблема: когда начинаю пользоваться видеостраницами изображение дёргается, похоже на то что в видеопамяти "сбилась развёртка" и отображается часть первой страници и часть второй. А хотелось бы плавной анимации движения. Ниже есть упрощённый вариант моей программы. Если кто-нибудь в этом разбирается помогите пожалуйста, а то игру написал а анимация хромает! Uses Graph; Var x,y,GrDr,GrMd,i,Buffer,Activ,Visible:integer; key:char; Procedure Krug(X:integer);{Рисуем две окружности используя заданную координату по оси Х } Var y:integer; Begin y:=getmaxy div 2; SetFillStyle(1,6); Setcolor(10); Ellipse(X+15,y-14,360,0,5,25); Ellipse(X+15,y-14,360,0,25,5); FloodFill(X+14,y-13,10); End; Begin Activ:=1; Visible:=0; {Задаём номера активной и видимой страниц} GrDr:=Detect; Initgraph(GrDr,GrMd,'h:\FMF\students\student\125\TP\BGI'); Repeat SetActivePage(Activ); {Устанавливаем активную страницу} SetVisualPage(Visible); {Устанавливаем видимую страницу} Buffer:=Activ; Activ:=Visible; Visible:=buffer; {Меняем номера активоной и видимой страници, далее мы рисуем на неотображаемой странице} Cleardevice; If X<GetMaxX then X:=X+2 else X:=0; {Задаём координату Х и рисуем фигуру} Krug(X); Delay(1000) ; If keypressed Then key:=readkey; {Если нажата клавиша Esc то выходим из программы} Until key=#27; End.
|
Всего сообщений: N/A | Присоединился: N/A | Отправлено: 26 апр. 2006 9:26 | IP
|
|
KMA
Долгожитель
|
brood ты знаешь у меня была похожая ситуация, но только я нашел более простое решение своей задачи, а так эта ошибка устраняется путем определения драйвера, и точного разрешения. Хотя может это помогло только мне, короче, надо прописать один из стандартных драйверов для своей машины... И у меня еще один вопрос, ты случаем на Live пишешь, ну это так называемая умная игра с жителями, где они размножаются и гибнут по определенным правилам???
|
Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 26 апр. 2006 22:23 | IP
|
|
KMA
Долгожитель
|
biart смотри внешняя ссылка удалена я там все расписал, все недочеты, а так, на мой взгляд задача решена верна, если принять все условия... поэтому смотри сам... над второй, обещаю подумать
|
Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 27 апр. 2006 22:17 | IP
|
|
VF
Administrator
|
Вопрос из другой темы (ее закрыл):
Цитата: 4elove4ek написал 30 апр. 2006 14:51 Взял себе курсовую работу - "создание вируса в turbo pascal". А сейчас не могу найти ничего простого и ясного для меня в инет по этой теме... Вирус может быть совсем не злым... я просто не знаю вообще что он должен делать и как его написать... Паскаль учу уже 3 года.. но с таким раньше не сталкивался... Нахожу вирусы написаные с помощью assembler'а и прочих хитростей... но для меня всё это далёко и не нужно в использовании. Помогите пожалуйста, может быть каким-нибудь исходником, или просто советом, или ссылкой. Заранее благодарен!
В чем отличие вирусов от других программ - они сами распространяются. Так что нужно придумать алгорим, по которому вирус будет передаваться с зараженного на другие компьютеры. Поисковики на фразу "virus pascal" (в т.ч. и по русски) выдают достаточно много информации. Например: внешняя ссылка удалена внешняя ссылка удалена внешняя ссылка удалена внешняя ссылка удалена внешняя ссылка удалена
|
Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 30 апр. 2006 14:38 | IP
|
|
Guest
Новичок
|
Кто нибудь поможет решить пару задачек: 1) Дана матрица A(n,m). Определить k - количество "особых" элементов массива А, считая элемент особым, если в его строке слева от него находиться элементы меньше его, а справа - больше. 2) В одномерном массиве A(n) все элементы не равные нулю, переписать (сохраняя их порядок) в начало массива, а нулевые элементы - в конец массива (новый массив не задавать). Заранее благодарен. )))
|
Всего сообщений: Нет | Присоединился: Never | Отправлено: 2 мая 2006 20:20 | IP
|
|
KMA
Долгожитель
|
Помогу, но не более того... Давай, излагай мысли... Решим однозначно, но хотя бы сам попытайся... Вдруг получиться. Надеюсь наши понимания слова "помочь" сходяться, помочь -- значит рассказать где ошибка, или недочет, или почему не работает прога, а не решить... (Сообщение отредактировал KMA 2 мая 2006 20:40)
|
Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 2 мая 2006 20:39 | IP
|
|
|