Скачать 135.12 Kb.
|
Аннотация Грицай Александр Андреевич п. Шушенское, МБОУ Шушенская СОШ№3 «Рекурсивные алгоритмы и фракталы» руководители: Астальцева Галина Георгиевна, МБОУ Шушенская СОШ №3, учитель математики, Баранова Татьяна Анатольевна, педагог дополнительного образовательного МБОУ ДОД ЦДЮТТ, автор дополнительной образовательной программы «Программирование на языке Паскаль» Цель исследовательской работы: Определение места рекурсивных алгоритмов при создании фрактальной графики через изучение основных операторов, написание и отладку программ на языке программирования Pascal ABC. Методы проведенных исследований: анализ, синтез, сравнение, эксперимент, моделирование. Основные результаты: - изучены понятия «гномон», «фрактал», «самоподобие», «язык программирования», «рекурсия», «рекурсивный алгоритм», «рекурсивная программа»; - выявлены существующие приемы и способы программирования фракталов; - проведено экспериментальное программирование цепочек «гномон» - «фрактал», - написаны программы для построения собственных фракталов, с использованием рекурсивных и не рекурсивных алгоритмов. 1.ВВЕДЕНИЕ Актуальность: Данная работа является продолжением школьного метапредметного исследовательского проекта «Гномоны: от фараонов до фракталов», в котором изучается понятия «гномон» в разных предметных областях, строятся цепочки «гномон – фрактал», определяется возможности практического применения гномонной теории. Результатом данного исследования стали программы, позволяющие строить фракталы, написанные на языке Pascal ABC и попытка менять программу так, чтобы можно было программировать фрактал посредством цикличного построения самоподобных форм с использованием рекурсивных и не рекурсивных алгоритмов. Проблема: при создании программ для построения фракталов возникает вопрос о возможности написать программу таким образом, чтобы она позволяла строить фракталы через программирование самоподобных форм. Разработанность исследуемой проблемы заключается в том, что известные знания о фракталах, способах их построения, посредством программирования на языке Pascal, используются во всем мире. [2], [6], [9], [11]. Мы же попробуем повторить программы, созданные посредством рекурсивных и не рекурсивных алгоритмов и написать собственные программы для построения самоподобных форм. 2. ОСНОВНОЕ СОДЕРЖАНИЕ. Цель: Определение места рекурсивных алгоритмов при создании фрактальной графики через изучение основных операторов, написание и отладку программ на языке программирования Pascal ABC. Задачи: - изучить понятия «гномон», «фрактал», «самоподобие», «язык программирования», «рекурсия», «рекурсивный алгоритм», «рекурсивная программа»; -выявить сущность рекурсивных и не рекурсивных алгоритмов, приемы и способы программирования фракталов; - провести экспериментальное программирование цепочек «гномон» - «фрактал», написать программы для построения собственных фракталов, используя изученные способы; Гипотеза: Зная способы программирования фракталов, разбираясь в сути рекурсивных алгоритмов можно создать программы для построения собственных геометрических фракталов, а затем и многомерных поверхностей. Методы исследования: Анализ, синтез, сравнение, эксперимент, моделирование, программирование. Результаты: - изучены понятия «гномон», «фрактал», «самоподобие», «язык программирования», «рекурсия», «рекурсивный алгоритм», «рекурсивная программа»; - выявлены существующие приемы и способы программирования фракталов; - проведено экспериментальное программирование цепочек «гномон» - «фрактал», - написаны программы для построения собственных фракталов, с использованием рекурсивных и не рекурсивных алгоритмов; - при проведении эксперимента выяснилось, что недостаточное знание основ программирования не дает возможности для полного подтверждения гипотезы о том, что зная способы программирования фракталов, можно создать программы для построения цепочек «гномон» - «фрактал», а также определить способ написания программ для построения собственных геометрических фракталов. Поэтому работу по изучению способов программирования фракталов следует продолжить, изучая при этом и возможности других языков программирования. ХОД РАБОТЫ: 1. «Гномон», «Фрактал», «Самоподобие», «Язык программирования Pascal ABC» Гномон - это самоповторяющаяся форма и как «самоповторяющаяся форма» гномоны имеют место в любой предметной области. Фракталом называется структура, состоящая из частей, которые в каком-то смысле подобны целому. Самоподобие означает, что объект может быть построен на основе любой своей части. Паскаль (англ. Pascal) — язык программирования общего назначения. Один из наиболее известных языков программирования, используется для обучения программированию в старших классах и на первых курсах вузов, является базой для ряда других языков. Рекурсия – наличие в определении, описании, изображении какого-либо объекта или процесса самого этого объекта или процесса, то есть ситуация, когда объект является частью самого себя. В программировании рекурсия — вызов функции (процедуры) из неё же самой. Рекурсивным называется объект, частично состоящий или определяемый с помощью самого себя. Если некоторая процедура P содержит явную ссылку на саму себя, то ее называют прямо рекурсивной. Если некоторая процедура P ссылается на другую процедуру Q, содержащую (прямую или косвенную) ссылку на P, то P называют косвенной рекурсивной процедурой. Рекурсия – фундаментальное понятие в математике и компьютерных науках. В языках программирования рекурсивной программой называется программа, которая обращается сама к себе (подобно тому, как в математике рекурсивная функция определяется через понятия самой этой функции). Рекурсивная программа не может вызывать себя до бесконечности, следовательно, вторая важная особенность рекурсивной программы – наличие условия завершения, позволяющее программе прекратить вызывать себя. Таким образом рекурсия в программировании может быть определена как сведение задачи к такой же задаче, но манипулирующей более простыми данными. Как следствие, рекурсивная программа должна иметь как минимум два пути выполнения, один из которых предполагает рекурсивный вызов (случай «сложных» данных), а второй – без рекурсивного вызова (случай «простых» данных). Рекурсивную программу всегда можно преобразовать в нерекурсивную (итеративную, использующую циклы), которая выполняет те же вычисления. И наоборот, используя рекурсию, любое вычисление, предполагающее использование циклов, можно реализовать, не прибегая к циклам. Язык программирования - формальная знаковая система, используемая для связи человека с цифровой вычислительной машиной; предназначена для описания данных (информации) и алгоритмов (программ) их обработки на вычислительной машине. 2. Мной были определены 7 способов построения фракталов: I способ. Пыль Кантора; II способ. Кривая Коха; III способ. Снежинка Коха (звезда Коха) IV способ. Салфетка Серпинского (треугольник Серпинского); Vспособ. Линия Пеано VI способ. Ковёр Серпинского; VII способ. Губки Менгера Для каждого из этих способов я определил, что будет простейшей самоподобной формой (гномоном), которая подвергнется преобразованию и что станет фракталом. Выполнил программирование этих простейших форм на языке программирования PascalABC. Линия uses crt, graphABC; begin line(200,200,400,200); end. Квадрат Uses crt, graphABC; begin rectangle(20,20,200,200); end. Круг Uses crt, graphABC; begin circle(200,200,100); end. Треугольник uses crt, graphABC; begin line(200,200,400,200); line(400,200,300,100); line(200,200,300,100); end. Ломаная usescrt, graphABC; begin line(40,100,80,100); line(80,100,80,50); line(80,50,120,50); line(120,50,120,100); line(120,100,160,100); end. Трапеция usescrt, graphABC; begin line(100,100,200,100); line(200,100,250,150); line(250,150,50,150); line(50,150,100,100); end. 3. Выявил существующие приемы и способы программирования фракталов
program Koch1; uses CRT, Graphabc; var gd, gm: Integer; procedure Draw(x, y, l, u : Real; t : Integer); procedure Draw2(Var x, y: Real; l, u : Real; t : Integer); begin Draw(x, y, l, u, t); x := x + l*cos(u); y := y - l*sin(u); end; begin if t > 0 then begin l := l/3; Draw2(x, y, l, u, t-1); Draw2(x, y, l, u+pi/3, t-1); Draw2(x, y, l, u-pi/3, t-1); Draw2(x, y, l, u, t-1); End else Line(Round(x), Round(y), Round(x+cos(u)*l), Round(y-sin(u)*l)) end; begin setwindowsize(500,500); Draw(410, 10, 400, -pi, 4); Draw(10, 410, 400, 0, 4); Draw(10, 10, 400, -pi/2, 4); Draw(410, 410, 400, pi/2, 4); ReadKey; end.
program Koh; uses CRT, Graphabc; var gd,gm : Integer; const iter = 50000; procedure Draw; var t, x, y, p : Real; k : LongInt; mx, my, rad : Integer; begin mx := 10; my := 250; rad :=600; Randomize; x := 0.0; y := 0.0; for k := 1 To iter do begin p := Random; t := x; if p <= 1/2 then begin x := 1/2 * x + 1/(2*sqrt(3)) * y; y := 1/(2*sqrt(3)) * t - 1/2 * y; end else begin x := 1/2 * x - 1/(2*sqrt(3)) * y +1/2; y := -1/(2*sqrt(3)) * t - 1/2 * y + 1/(2*sqrt(3)); end; PutPixel(mx + Round(rad * x), my - Round(rad * y), 2); end; end; begin Draw; ReadKey; end.
uses crt,graphabc; var n:integer; procedure kov(A,B,C,D,n:integer); var A1, B1, C1, D1:integer; begin if N=0 then EXIT; A1:= 2 * A div 3 + C div 3; C1:= A div 3 + 2 * C div 3; B1:= 2 * B div 3 + D div 3; D1:= B div 3 + 2 * D div 3; rectangle (A1, B1, C1, D1); delay(50); floodfill(a1+1,b1+1,4); kov(A, B, A1, B1, n-1); kov(A1, B, C1, B1, n-1); kov(C1, B, C, B1, n-1); kov(A, B1, A1, D1, n-1); kov(C1, B1, C, D1, n-1); kov(A, D1, A1, D, n-1); kov(A1, D1, C1, D, n-1); kov(C1, D1, C, D, n-1); end; BEGIN readln(n); //setbrushcolor(4); setpencolor(10); rectangle(200, 40, 550, 390); kov(200, 40, 550, 390,n); end.
uses crt,graphabc; var x1,y1,x2,y2,x3,y3,a,b,n1:integer; c:array[1..23] of integer; procedure tri(x1,y1,x2,y2,x3,y3,N:integer); var x12,y12,x23,y23,x31,y31:integer; begin if N=0 then EXIT; x12:=(x1+x2) div 2; y12:=(y1+y2) div 2; x23:=(x2+x3) div 2; y23:=(y2+y3) div 2; x31:=(x3+x1) div 2; y31:=(y3+y1) div 2; setpencolor(c[15-n]);delay(250); moveto(x31,y31); lineto(x12,y12); lineto(x23,y23); lineto(x31,y31); tri(x1,y1,x12,y12,x31,y31,N-1); tri(x2,y2,x12,y12,x23,y23,N-1); tri(x3,y3,x31,y31,x23,y23,N-1); end; begin C[1]:=clWhite; C[2]:=clLightGray; C[3]:=clGray; C[4]:=clDarkGray; C[5]:=clBlack; C[6]:=clRed; C[7]:=clGreen; C[8]:=clBlue; C[9]:=clYellow; C[10]:=clAqua; C[11]:=clFuchsia; C[12]:=clPurple; C[13]:=clBrown; C[14]:=clMaroon; C[15]:=clMoneyGreen; C[16]:=clSkyBlue; C[17]:=clCream; C[18]:=clOlive; C[19]:=clTeal; C[20]:=clLime; C[21]:=clSilver; C[22]:=clNavy; write('n= '); readln(n1); x1:=320; y1:=0; x2:=600; y2:=400; x3:=0; y3:=400; moveto(x1,y1); lineto(x2,y2); lineto(x3,y3); lineto(x1,y1); tri(x1,y1,x2,y2,x3,y3,n1); readkey; end.
const maxcol=400; maxrow=300; max_colors=16; max_iteration=512; max_size=4; Var x1,y1,x2,y2,k: Integer; Var q:array[0..349] of real; re,im,re1,im1:real; v,x9,y9: integer; c:array[0..22] of integer; XMax,YMax,XMin,YMin:real; P8,deltaP,deltaQ,x8,y8,xsquare,ysquare:real; i8,color,row,col:integer; x5,t5,y5:Real; sign:Integer; n5:Integer; gd,gm:Integer; procedurekub; begin re1:=re*(re*re-3*im*im);im1:=im*(3*re*re-im*im); re:=re1; im:=im1; end; //рекурсивная процедура построения закрученного квадрата Procedure fract(x,y,a,l,k,a1:integer); //x,y: координаты начала каждой ветки, a: угол наклона, l: длина, k: номер ветвей, a1: изменение наклона при каждой новой ветке Var p:integer; Begin p := a1; // наклон в одну сторону if k mod 2 = 0 then // если номер ветки парное число p := -a1; // наклон идет в другую сторону while l > 3 do // пока длина ветки больше 3 begin setpenWidth (6-k); // толщина ветки setpenColor ( rgb(random(255),random(255),random(255))); // её цвет moveto(x,y); // координаты начала линии lineto(x+round(cos(pi*a/180)*l),y+round(sin(pi*a/180)*l)); // прорисовка линии x := x+round(cos(pi*a/180)*l); // конец предыдущей делаем началом новой линии y := y+round(sin(pi*a/180)*l); a := a + p; // изменяем угол l := round(l / 1.17); // уменьшаем длину fract(x,y,a-(p*2),round(l / 1.2),k+1,a1+1);// вызываем рекурсивно эту же процедуру для дальнейшей прорисовки end; end; //рекурсивная процедура построения дракона procedure Paint(x1,y1,x2,y2,k:Longint); vartx,ty:Longint; begin setPenColor(clBlue); // задаем цве ткривой if k=0 then begin MoveTo(x1,y1); LineTo(x2,y2); Exit; end; // формулы вычисления координат точки, находящейся на середине отрезка и удаленной от прямой на такое расстояние, чтобы при соединении этой точки с концами отрезка получился угол в 90 градусов tx := (x1+x2) div 2 + (y2-y1) div 2; ty := (y1+y2) div 2 - (x2-x1) div 2; // рекурсивный вызов функций, соединяющих концы отрезка с данной точкой Paint(x2,y2,tx,ty,k-1); Paint(x1,y1,tx,ty,k-1); end; //рекусивная процедура построения дерева procedure Tree(x, y: Integer; a: Real; l: Integer); var x1, y1: Integer; p, s : Integer; i : Integer; a1: Real; begin if l < 8 then exit; x1 := Round(x + l*cos(a)); y1 := Round(y + l*sin(a)); if l > 100 then p := 100 else p := l; if p < 40 then begin //Генерация листьев if Random(10) > 5 then setPenColor(clgreen) else setPenColor(rgb(90,139,5)); for i := 0 to 3 do Line(x+i,y,x1,y1); end else begin //Генерация веток setPenColor(rgb(100,3,4)); for i := 0 to (p div 6) do Line(x + i - (p div 12), y, x1, y1); end; //Следующие ветки for i := 0 to 9 - Random(9) do begin s := Random(l - l div 6) + (l div 6); a1 := a + 1.6 * (0.5 - Random); //Угол наклона веток x1 := Round(x + s * cos(a)); y1 := Round(y + s * sin(a)); Tree(x1, y1, a1, p - 5 - Random(30)); //Чем меньше вычитаем, тем пышнее дерево end; end; begin setwindowsize(800,600) ; Tree(320, 350, 3*pi/2, 100); //дерево delay(1500); ClearWindow; //дракон setBrushColor (clWhite); // задаем начальные значения для прямой и ставим счетчик в 24 x1 := 200; y1 := 200; x2 := 400; y2 := 400; k := 20; Paint(x1,y1,x2,y2,k); delay(1500); ClearWindow; //закрученный квадрат fract(400,500,270,70,0,20); delay(2000); ClearWindow; //хопалонг x5:=0; y5:=0; n5:=0; While n5<50000 Do Begin t5:=x5; //запоминаем значение x вычисленное на предыдущем шаге if x5>0 then sign:=1 //запоминаем знак x else sign :=-1; x5:=y5-sign*sqrt(abs(4*x5-60)); //вычисляем новое значение x y5:=1-t5; //вычисляем новое значение y inc(n5); PutPixel(round(x5*2)+320,round(y5*2)+240,clred) //рисуем очередную точку End; delay(2000); ClearWindow; XMax:=1.2; XMin:=-2.0; YMax:=1.2;YMin:=-1.2; C[0]:=clWhite; C[1]:=clWhite; C[2]:=clLightGray; C[3]:=clGray; C[4]:=clDarkGray; C[5]:=clBlack; C[6]:=clRed; C[7]:=clGreen; C[8]:=clBlue; C[9]:=clYellow; C[10]:=clAqua; C[11]:=clFuchsia; C[12]:=clPurple; C[13]:=clBrown; C[14]:=clMaroon; C[15]:=clMoneyGreen; C[16]:=clSkyBlue; C[17]:=clCream; C[18]:=clOlive; C[19]:=clTeal; C[20]:=clLime; C[21]:=clSilver; C[22]:=clNavy; deltaP:=(XMax-XMin)/(maxcol); deltaQ:=(YMax-YMin)/(maxrow); q[0]:=YMax; for row:=1 to maxrow do q[row]:=q[row-1]-deltaq; p8:=XMin; for col:=0 to maxcol do begin //if keypressed then exit; for row:=0 to maxrow do begin x8:=0.0; Y8:=0.0;xsquare:=0.0; Ysquare:=0.0; color:=2; repeat xsquare:=x8*x8; ysquare:=y8*y8; y8:=2*x8*y8+q[row]; x8:=xsquare-ysquare+p8; inc(color); until(color>=max_iteration) or (xsquare+ysquare>=max_size); putpixel(col+200,row+100,(c[color mod max_colors])); end; p8:=p8+deltap; end; delay(1500); ClearWindow; x9:=-320; repeat y9:=-240; repeat v:=0; re:=-1+0.005*x9; im:=0+0.005*y9; repeatkub; kub;re:=re-0.85; im:=im+0.2; if re*re>5 then goto 1; ifim*im>6 then goto 1; v:=v+1; until v>10; 1: if ((abs(re)<7) or (abs(im)<3)) and ((v<44) and (v>0)) then putpixel((x9+120),(y9+240),c[v]) elseputpixel((x9+120),(y9+240),clWhite); y9:=y9+1; until y9>241; x9:=x9+1; until x9>420; end. 4. Экспериментальное программирование собственных фракталов В своих предыдущих исследованиях я пытался, используя приемы «Пыль Кантора», «Кривая Коха», «Ковер Серпинского», «Салфетка Серпинского», построить свои фракталы. Представлял свои достижения трижды на краевой междисциплинарной выставке. В предложенной работе мной выполнено программирование своих фракталов на языке программирования Pascal. Шахматная доска Uses crt, graphABC; var n,i,x,y:integer; begin x:=20; y:=20; for n:=1 to 8 do begin for i:=1 to 8 do begin rectangle(x,y,x+20,y+20); if (i mod 2 <>0) and (n mod 2 =0) then floodfill(x+1,y+1,clblack); if (i mod 2 =0) and (n mod 2 <>0) then floodfill(x+1,y+1,clblack); x:=x+20; end; x:=20; y:=y+20; end; end. Мишень Uses crt, graphABC; Var n,i,x,y: integer; Begin x:=180; for n:=1 to 8 do begin circle(200,200,x); if (n mod 2 =0) then floodfill(200,200,clblack) else floodfill(200,200,clwhite); x:=x-20; end; end. Прямоугольники uses crt, graphABC; var n,i,x,y: integer; begin x:=260;y:=60;i:=320;for n:=1 to 8 do begin rectangle(x,y,x+i,y+i); if (n mod 2 =0) then floodfill(x+1,Y+1,clblack) else floodfill(x+1,y+1,clwhite); x:=x+20;y:=y+20;i:=i-40; end; end. ЗАКЛЮЧЕНИЕ В процессе исследования проведена большая работа: - изучены понятия «гномон», «фрактал», «самоподобие», «язык программирования», «рекурсия», «рекурсивный алгоритм», «рекурсивная программа»; - выявлены существующие приемы и способы программирования фракталов; - проведено экспериментальное программирование цепочек «гномон» - «фрактал», - написаны программы для построения собственных фракталов, с использованием изученных способов; Следует отметить, что при проведении эксперимента выяснилось, что зная способы программирования фракталов, разбираясь в сути рекурсивных алгоритмов можно создать программы для построения собственных геометрических фракталов, а затем и многомерных поверхностей. Именно поэтому работу по изучению способов программирования следует продолжить, изучая при этом возможности других языков программирования и попытаться составить программы для построения многомерных поверхностей. Практическое применение данного вопроса подразумевает возможность создания средствами программирования живых моделей любых фрактальных объектов на основе составления программ для самоподобных форм. БИБЛИОГРАФИЧЕСКИЙ СПИСОК 1. Шредер М. Фракталы, хаос, степенные законы / Шредер М.- М., «Просвещение», 2001 г., 528с. 2. Античная наука. - ( http://antic.portal-1.ru/geog.html) 3. Газале М. Гномон: От фракталов до фараонов, - (.http://forex-baza.info/load/knigi/foreks/m_gazale_quot_gnomon_ot_faraonov_do_fraktalov_quot/4-1-0-19) 4. Википедия. – (http://wikipedia.org/wiki ) 5. Cайт профессиональных трейдеров - (http://www.virtuosclub.ru/main/library/f06/skachat-knigu-m-gazale-gnomon-ot-faraonov-do-fraktalov). 7. Фракталы в геометрии. - (http://lol54.ru/education/uvgsfeshshht_informative/28368-ogromnaja-podborka-fraktalov-fractals-176-sht..html) 8. Понятие фрактала. – ( http://www.tyiya.ru/chto-takoe-fraktal/ ) 9. Рост посредством гномического расширения - ( http://www.bb-celitel.ru/iscelit/69.html) 10. Способы построения фракталов. – ( http://sworm.narod.ru/ ) 11.Ушаков Д.Н. Большой толковый словарь - ( http://www.classes.ru/all-russian/russian-dictionary-Ushakov-term-10511.htm) 12. Фрактальная геометрия. – (http://fractbifur.narod.ru/html/index1.html) 13. Фрактальная геометрия и физика. – ( http://shabet.narod.ru/frakgeom.html) 14. Эрудиция. Электронная российская библиотека. - (http://www.erudition.ru/referat/printref/id.33926_1.html ) 15. Фракталы средствами языка С++ http://opita.net/task/fractal 16. Фракталы на языке PascalABC http://fraktalsworld.blogspot.ru/p/blog-page_25.htm 17. Фракталы в программировании http://ru.wikipedia.org/wiki/ 18. Формулы построения фракталов http://pascal.proweb.kz/index.php?page=92 19. Интерактивные плакаты с фракталами http://elementy.ru/posters/fractals 50000> |
Творческий Фестиваль «Южный полюс» В свое время она успешно испытана и совершила несколько полетов. Однако была забыта современниками. Вспомнили о ней только 12 апреля... | Международный детский творческий фестиваль «Южный полюс» Секреты... Охватывает все разделы курса «Русский язык». Основное внимание уделяется грамматике, орфографии и пунктуации в их взаимодействии.... | ||
Международный Фестиваль «Южный полюс» Сай», что в переводе означает мать-река. Эвенки дали ему название «Ионесси», что означает большая вода. В каждом из названий заложены... | Программа по формированию навыков безопасного поведения на дорогах... Чаще всего красным цветом окрашен южный магнитный полюс (теплый цвет), а синим северный (холодный цвет) | ||
08. 11. 2010 / 10: 47Китай сможет отправить экспедицию на Луну в 2025 году Китай сможет направить первых астронавтов на Луну уже в 2025 году, и вероятным местом «прилунения» станет Южный Полюс спутника, пишет... | Программа по формированию навыков безопасного поведения на дорогах... Формировать первоначальное представление детей о глобусе как модели Земли; умение показывать на глобусе Северный и Южный полюс, меридианы... | ||
Методические приемы: самостоятельная групповая работа; сообщения и творческий Всероссийский фестиваль сценариев и внеклассных мероприятий «Педагогический дебют» | Лекция Творческий потенциал человека Вопросы Федеральное агентство по образованию российской федерации фгоу впо «южный федеральный университет педагогический иститут» | ||
Дистанционный всероссийский Фестиваль «Творческий урок» в номинации «Уроки креативного типа» Учебно-тематические планы семинарских занятий (3-й семестр) с. 17-22 | Международный Проект «Антология детских песен мира» — «Творческий центр Юрия Энтина», Компания «art’OK», Фестиваль «Чунга-Чанга», при поддержке | ||
Международный детский творческий фестиваль «Апельсин» Российской Федерации, Правительства Москвы, Департамента науки, промышленной политики и предпринимательства города Москвы, Всемирной... | Урок-соревнование по физической культуре для учащихся 4 класса (всероссийский... Цель урока: развитие скоростно-силовых качеств учащихся в игровой и соревновательной деятельности | ||
Научно-методическая конференция «Современные информационные технологии... В сборнике представлены доклады участников научно-методической конференции «Современные информационные технологии в образовании:... | Российской Федерации Федеральное агентство по образованию южный федеральный Университет В сборнике представлены доклады участников научно-методической конференции «Современные информационные технологии в образовании:... | ||
Отчет об участии в фестивале в г. Усть-Катав Усть-Катав состоялся творческий фестиваль «Шаг к успеху». В фестивале принимали участие воспитанники специальных коррекционных школ-интернатов... | Конкурс – фестиваль детской рекламы и дизайна Конкурс фестиваль проводится с 2008 года миоо на базе цо №1637 для учащихся 1 – 11 классов образовательных учреждений вао |