Moj wykładowca powiedział że nie podoba mu się to że mam tak długiego maina i musze użyć funkcji, ale nie mam pojecia jak... :( oto kodzik:
//Projekt 1 PRM £ukasz Chajewski
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
//#include <windows.h>
int main()
{
int g,i,j,x,y;
char tab[80][24],obiekt[4][2]={'$','%','%','$','*','&','&','*'};;
float t;
for(g=1;y>0;g++) // tutaj określamy ile razy wykona się ta pętal
{
system("clear");
//system("cls");
t=g*M_PI/40; // t jest kątem w kolejnych powtórzeniach
x=-(t*sin(t))+40; // współrzędna pozioma pętli
y=t*cos(t)+11; // współrzędna pionowa pętli
memset(tab, ' ', 80*24); // uzupełniamy tablice pustymi polami
for(j=0;j<24;j++) //liczba kolumn
{
for(i=0;i<80;i++) //liczba wierszy
{
if(i==(x-1) && j==(y-1)) //jezeli petla natrafi na i i j -wspolrzedne tabeli ,odpowiadajace x i y spirali to w zaleznosci od g wybiera jakie znaki z tabeli obiekt wpisac w puste pola, jak widac usupelniamy na raz az 4 pola tabeli tab
{
if(g%2==0)
{
tab[i][j]=obiekt[0][0];
}
else
tab[i][j]=obiekt[2][0];
}
if(i==x && j==(y-1))
{
if(g%2==0)
{
tab[i][j]=obiekt[0][1];
}
else
tab[i][j]=obiekt[2][1];
}
if(i==(x-1) && j==y)
{
if(g%2==0)
{
tab[i][j]=obiekt[1][0];
}
else
tab[i][j]=obiekt[3][0];
}
if(i==x && j==y)
{
if(g%2==0)
{
tab[i][j]=obiekt[1][1];
}
else
tab[i][j]=obiekt[3][1];
}
{
printf("%c",tab[i][j]);
}
}
}
usleep (100000); // pauzujemy dzialanie programu zeby byl czytelniejszy dla uzytkownika
}
printf("Lukasz Chajewski, projekt semigrafiki. \n\n\n\n");
return 0;
}