1 / 9

Backtracking - BALL “Rolling all around”

Backtracking - BALL “Rolling all around”. Producers: Butucea Coman Petrovan. Ana. Antonia. Johana. Backtracking. Manipularea timpului. Cel mai fericit om este acela care traieste in prezent....insa trecutul sta la baza unui prezent sigur!.

tim
Download Presentation

Backtracking - BALL “Rolling all around”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Backtracking - BALL “Rolling all around” Producers: Butucea Coman Petrovan Ana Antonia Johana

  2. Backtracking Manipularea timpului Cel mai fericit om este acela care traieste in prezent....insa trecutul sta la baza unui prezent sigur! Spre deosebire de realitatea ce ne inconjoara , backtracking-ul aduce o idee originala la care multi dintre noi visam si anume schimbarea trecutului cu scopul de a aduce un viitor benefic… Backtracking-ul permite reintoarcerea la un nivel inferior pentru rezolvarea solutiei!

  3. De ce problema Bilei?... De ce nu…? Putem asocia principiile acestei probleme cu cele ale vietii cotidiene… Constransi de situatiile dificile ale vietii, invatam sa le depasim urmand anumite drumuri cu un grad mai mic de dificultate.

  4. Problema BILEI Se da un teren sub forma de matrice cu n linii si m coloane. Fiecare element al matricei reprezinta un subteren cu o anumita altitudine data de valoarea retinuta de element(nr. natural). Intr-un astfel de subteren de coordonate (lin,col) se gaseste o bila. Stiind ca bila se poate deplasa in orice portiune de teren aflata la N-E-S-V, de altitudine strict inferioara portiunii pe care se gaseste bila; se cere sa se gaseasca toate posibilitatile ca bila sa paraseasca terenul…

  5. -pentru rezolvarea problemei este necesara utilizarea unei matrici. -elementele matricei sunt preluate dintr-un fisier; -initial bila va sta pe o pozitie (lin,col); -neputandu-se deplasa decat in casutele cu un numar strict inferior, se verifica daca pozitiile N, E, S, V (in aceasta ordine) indeplinesc conditia; -aceasta se repeta pana cand bila poate iesi din labirint. Initial : (2,2)  Solutii: (2,2) ; (2,3) ; (2,4) (2,2) ; (2,3) ; (3,3) ; (3,4) ; (2,4) (2,2) ; (2,3) ; (3,3) ; (3,4) (2,2) ; (2,3) ; (3,3) ; (3,4) ; (4,4)

  6. Problema Bilei \ C++ main() {char s[100]; int gd=DETECT, gm; initgraph(&gd,&gm,"C:\\TC\\BGI"); cout<<"m=";cin>>m; cout<<"n=";cin>>n; ifstream f("bilutza.cpp"); for(i=0;i<m;i++) {for(j=0;j<n;j++) {x=i+j; if(x%2==0)setfillstyle(1,BLUE); else setfillstyle(1,CYAN); bar3d(100+r,100+p,r+140,p+140,0,0); f>>t[i][j];itoa(t[i][j],s,10); setcolor(BLACK); settextstyle(5,0,3);outtextxy(r+100,p+100,s); r=r+40; } p=p+40; r=50; } for(i=0;i<m;i++) for(j=0;j<n;j++) f>>t[i][j]; cout<<"lin=";cin>>lin; cout<<"col=";cin>>col; back(1,lin,col); getch(); } #include<fstream.h> #include<conio.h> #include<graphics.h> #include<stdlib.h> int sol[100][3],t[10][10],m,n,i,j,lin,col,p=50,r=50,x,y; void tipar(int k) {cout<<"SOLUTIE "<<endl; for(i=1;i<k;i++) cout<<sol[i][1]<<" "<<sol[i][2]<<endl; } void back(int k,int lin,int col) {if(lin==0||lin==m+1||col==0||col==n+1) tipar(k); else {sol[k][0]=0; sol[k][1]=lin; sol[k][2]=col; while(sol[k][0]<4) {sol[k][0]++; switch(sol[k][0]) {case 1:if(t[lin-1][col]<t[lin][col]) back(k+1,lin-1,col);break; case 2:if(t[lin][col+1]<t[lin][col]) back(k+1,lin,col+1);break; case 3:if(t[lin+1][col]<t[lin][col]) back(k+1,lin+1,col);break; case 4:if(t[lin][col-1]<t[lin][col]) back(k+1,lin,col-1);break; } } } }

  7. BILUTA.EXE Executabil:

  8. Ce am invatat? Ce am castigat prin realizarea proiectului? • Am inteles problema “BILEI” si in ce consta utilizarea backtrackingului pentru realizarea problemei; • Am reusit sa cream o solutie a problemei in grafica in c++; • Am gasit o corelatie intre informatica si viata de zi cu zi; • Am reusit sa petrecem o zi intreaga impreuna reusind sa ne cunoastem mai bine descoperind si laturi amuzante si interesante ale informaticii;

  9. Bibliografie: • http://www.google.ro/images • Manualul de informatica

More Related