Forum www.etipg.fora.pl Strona Główna www.etipg.fora.pl
Forum studiów niestacjonarnych Politechniki Gdańskiej na ETI
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy   GalerieGalerie   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

ruszająca się figura

 
Napisz nowy temat   Odpowiedz do tematu    Forum www.etipg.fora.pl Strona Główna -> Semestr I / Praktyka programowania
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
brt
Świeżak



Dołączył: 11 Paź 2010
Posty: 20
Przeczytał: 0 tematów

Ostrzeżeń: 0/5

PostWysłany: Pią 18:30, 05 Lis 2010    Temat postu: ruszająca się figura

Siemka.
Czy może mi ktoś udostępnić cały kod dowolnej figury którą można poruszać, bo czuję że nie wytrzymię i kurw*cy dostanę.. za raz.
Dziękuję serdecznie, pozdrawiam;-)


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Krzyżak
Stały użytkownik



Dołączył: 26 Wrz 2010
Posty: 120
Przeczytał: 0 tematów

Pomógł: 2 razy
Ostrzeżeń: 0/5
Skąd: Gdańsk

PostWysłany: Pią 19:15, 05 Lis 2010    Temat postu:

http://www.etipg.fora.pl/praktyka-programowania,17/zmiana-wielkosci-figury,149.html

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
lewy_master
Yoda



Dołączył: 27 Wrz 2010
Posty: 41
Przeczytał: 0 tematów

Ostrzeżeń: 0/5
Skąd: Kwidzyn

PostWysłany: Wto 17:26, 09 Lis 2010    Temat postu:

Mój Kod - oczywiście jest ŹLE - dlaczego skoro działa?? Niewiem. Ogólnie to trzeba kilka rzeczy wydłubać z tego kodu ale był to mój "prototypowy" kod (taki troche Win 3.11 xP). sporo zmieniłem ale od tego zaczynałem :D

Kod:
/*------------------------------------------------------------------------------
|                    Powered by Adrian Lewandowski                             |
|   Celem projektu jest napisanie programu który będzie rysował trojkat ze     |
| znaku podanego przez urzutkownika. Trojkatem bedzie można sterowac za pomoca |
| strzalek => kursorow. Program nie reaguje na klawisze inne niż Kursory i ESC |
| który kończy Działanie programu.                                             |
|                                                                              |
|                                                               L3VY_M4ST3R    |
------------------------------------------------------------------------------*/

#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<windows.h>

//DEKLARACJA FUNKCJI WEWNĘTRZNEJ POTRZEBNEJ DO OBSŁUGI KARETKI
void gotoxy(int x, int y)
     {
      COORD c;
      c.X = x - 1;
      c.Y = y - 1;
      SetConsoleCursorPosition (GetStdHandle(STD_OUTPUT_HANDLE), c);
     }
     
using namespace std;

int main()
{
 system("cls"); //czyszczenie ekranu - przygotowanie do pracy
 
//DEKLARACJA ZMIENNYCH POTRZEBNYCH DO OBSLUGI PROGRAMU:
 int x=4,y=2; //zmienne odpowiedzialne za ruch figury w pionie i poziomie
 char znak;
 char kurs;   //zmienna sterujaca trojkatem
           
                                                                                //FUNKCJA RYSUJACA RAMKE - Przygotowanie Ekranu do pracy
                                                                                for (int i=2; i<80; i++)       //Ramka Gorna
                                                                                    {
                                                                                     gotoxy(i,1);
                                                                                     cout<<"=";
                                                                                    }     
                                                                                for (int i=2; i<80; i++)       //Ramka Dolna
                                                                                    {
                                                                                     gotoxy(i,25);
                                                                                     cout<<"=";
                                                                                    }
                                                                                for (int i=2; i<25; i++)       //Ramka Lewa
                                                                                    {
                                                                                     gotoxy(1,i);
                                                                                     cout<<"|\n";
                                                                                    }
                                                                                for (int i=2; i<25; i++)       //Ramka Prawa
                                                                                    {
                                                                                     gotoxy(80,i);
                                                                                     cout<<"|";
                                                                                    }
           
//ZAPOZNANIE UZYTKOWNIKA Z PROJEKTEM:
 gotoxy(2,2);
 cout<<"CEL PROJEKTU:";
 gotoxy(2,4);
 cout<<"Projekt ten ma za zadanie wyswietlic na ekranie figure w postaci trojkata,";
 gotoxy(2,5);
 cout<<"zlozonego z dowolnie wybranego znaku, nastepnie program ma umozliwic";
 gotoxy(2,6);
 cout<<"sterowanie trojkatem za pomoca kursorow.";
 gotoxy(2,7);
 cout<<"ESC konczy dzialanie programu.";
 gotoxy(2,9);
 cout<<"Dalej...";
 getch();
 system("cls");
               
                                                                                //FUNKCJA RYSUJACA RAMKE - Wprowadzenie do programu
                                                                                for (int i=2; i<80; i++)       //Ramka Gorna
                                                                                    {
                                                                                     gotoxy(i,1);
                                                                                     cout<<"=";
                                                                                    }     
                                                                                for (int i=2; i<80; i++)       //Ramka Dolna
                                                                                    {
                                                                                     gotoxy(i,25);
                                                                                     cout<<"=";
                                                                                    }
                                                                                for (int i=2; i<25; i++)       //Ramka Lewa
                                                                                    {
                                                                                     gotoxy(1,i);
                                                                                     cout<<"|\n";
                                                                                    }
                                                                                for (int i=2; i<25; i++)       //Ramka Prawa
                                                                                    {
                                                                                     gotoxy(80,i);
                                                                                     cout<<"|";
                                                                                    }
           
 gotoxy(2,2);
 cout<<"Wprowadz znak z ktorego bedzie skladal sie trojkat:";
 gotoxy(2,4);
 cout<<"Twoj znak:\n";
 gotoxy(2,5);
 znak=getchar();

//GLOWNA FORMULA PROGRAMU
 while (1)
       {             
        system("cls");

//FUNKCJA RYSUJACA RAMKE - Praca z Programem
        for (int i=2; i<80; i++)       //Ramka Gorna
            {
             gotoxy(i,1);
             cout<<"=";
            }     
        for (int i=2; i<80; i++)       //Ramka Dolna
            {
             gotoxy(i,25);
             cout<<"=";
            }
        for (int i=2; i<25; i++)       //Ramka Lewa
            {
             gotoxy(1,i);
             cout<<"|\n";
            }
        for (int i=2; i<25; i++)       //Ramka Prawa
            {
             gotoxy(80,i);
             cout<<"|";
            }
       
//FUNKCJA SRAWDZAJACA POPRAWNOSC DANYCH (OGRANICZAJACA RUCH TROJKATA)
        if (40-x==1)    //Lewa granica
           {
            x=38;
           }
        if (40-x==73)   //Prawa granica
           {
            x=-32;
           }
        if (12-y==22)   //Dolna granica
           {
            y=-9;
           }
        if (12-y==1)    //Gorna granica
           {
            y=10;
           }
     
// FORMULA RYSUJACA TROJKAT:

        gotoxy(40-x,12-y);
        cout<<znak<<znak<<znak<<znak<<znak<<znak<<znak<<znak<<"\n";
        gotoxy(40-x,13-y);
        cout<<" "<<znak<<"    "<<znak<<"\n";
        gotoxy(40-x,14-y);
        cout<<"  "<<znak<<"  "<<znak<<"\n";
        gotoxy(40-x,15-y);
        cout<<"   "<<znak<<znak;
        gotoxy(80,25);
       
//FORMULA STERUJACA TROJKATEM     
        kurs=getch();         
        if (kurs==27)         //ESC konczy program
           {
            break;
           } 
        if (kurs==72)         //GORA steruje w gore
           {
            y++;
           }
        if (kurs==80)         //DOL steruje w dol
           {
            y--;
           }
        if (kurs==75)         //LEWO steruje w lewo
           {
            x++;
           }
        if (kurs==77)         //PRAWO steruje w prawo
           {
            x--;
           }
        }
 return (0);
}

P.s. Używam DEV-C++ 4.9.9.2


Post został pochwalony 0 razy

Ostatnio zmieniony przez lewy_master dnia Wto 17:29, 09 Lis 2010, w całości zmieniany 1 raz
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum www.etipg.fora.pl Strona Główna -> Semestr I / Praktyka programowania Wszystkie czasy w strefie CET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach

fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group
Regulamin