Author Topic: ZADANIA Z predmetu PROGRAMOVANIE  (Read 206113 times)

Palike

  • Full Member
  • ***
  • Posts: 230
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #400 on: 25.04.2010, 05:46:38 »
ako mam pouzit ncurses?.. stiahol som nieco ale nejak to neviem dostat do toho devcpp .. neviete ako na to?..

elros

  • Newbie
  • *
  • Posts: 41
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #401 on: 25.04.2010, 17:31:21 »
pre kniznice curses na dev c++ pouzi tote kniznice co sme pouzivali este jak sme s karlom hybali, co su na stranke s cvikami, tote pdcurses.lib a pdcurses.dll  a includni ich tak isto jak predtym sme includovali do projektu.

Palike

  • Full Member
  • ***
  • Posts: 230
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #402 on: 25.04.2010, 17:40:45 »
pre kniznice curses na dev c++ pouzi tote kniznice co sme pouzivali este jak sme s karlom hybali, co su na stranke s cvikami, tote pdcurses.lib a pdcurses.dll  a includni ich tak isto jak predtym sme includovali do projektu.

dakujem velmi pekne a to potom tam musim davat este to include ncurses ?.. ci to uz netreba ked som to pridal tak?..

a naco je ta strukturovana premenna myslim to typedef struct Robot  ... ja som to spravil bez toho a ide to... v com je vyhoda?..

take nieco je spravne?..

Code: [Select]
int frontIsBlocked()
{
    if (frontIsClear()) return 0;
    else return 1;
}
« Last Edit: 25.04.2010, 19:27:44 by Palike »

Vikinger

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #403 on: 25.04.2010, 19:07:40 »
aj ja by som rad vedel ako sa robi s ncursess :D chcel by som to trošku farebne zvýrazniť :D

tommy-sv

  • Sr. Member
  • ****
  • Posts: 308
  • kapitalista
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #404 on: 25.04.2010, 19:51:38 »
a naco je ta strukturovana premenna myslim to typedef struct Robot  ... ja som to spravil bez toho a ide to... v com je vyhoda?..

Teraz to ide a rozdiel je mozno minimalny, ale predstav si ze by si mal vo svete viac robotov a robot by mal viac atributov ako len pozicia, orientacia a pocet beeprov. Napr. farbu.. alebo rozne schopnosti - ze vie aj cuvat :D vytvarat pre kazdeho robota premmenne vo forme robotCislo1Farba asi nie je naj riesenie ;) pre dvoch este mozno, ale co ked je ich pocet dynamicky?
Vyhod je mnoho. Ide snad hlavne o to ze mas organizovane premenne, mozes strukturu resp. smernik na nu odovzdavat medzi funkciami ako jeden parameter bez ohladu na to co struktura obsahuje a mas spominanu moznost vytvarat lubovolny (pamatou obmedzeny) pocet instancii struktury (robot1, robot2 ...).
"Čím skôr zomrieš, tým dlhšie budeš mŕtvy."
"Radšej viac vypiť, ako menej zjesť."

Palike

  • Full Member
  • ***
  • Posts: 230
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #405 on: 26.04.2010, 14:31:36 »
uz som prisiel na to ako to robit farebne.. ale v curses.h na konci funkcie musi byt getch() aby to slo... nwm preco.... neda sa to nejako odstranit.. lebo ked to mam v draw tak mi to vykresluje..ale pred kazdym dalsim vykreslenim to musim potvrdit enterom... ale ked tam to getch nedam tak to neide :-$

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #406 on: 26.04.2010, 15:05:29 »
uz som prisiel na to ako to robit farebne.. ale v curses.h na konci funkcie musi byt getch() aby to slo... nwm preco.... neda sa to nejako odstranit.. lebo ked to mam v draw tak mi to vykresluje..ale pred kazdym dalsim vykreslenim to musim potvrdit enterom... ale ked tam to getch nedam tak to neide :-$

neviem, ako ti ten kod vyzera, ale pravdepodobne vykreslujes cez funkciu printw(). curses "scenu" uklada do buffra, ktory ked chces potom vykreslit/vypisat, musis zavolat funkciu refresh() (ak si dobre pamatam). takze getch() pravdepodobne vola ten refresh() sam.
So say we all!

Palike

  • Full Member
  • ***
  • Posts: 230
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #407 on: 26.04.2010, 15:15:50 »
ahaa uz to ide, ja som tam to refresh nemal vobec...ale ked to tam mam tak mi to zobrazi asi na stotinu sekundy..aj ked tam mam sleep(1500); som z toho na nervy =/ ale aj tak dakujem velmi pekne :)  :beer1: 
« Last Edit: 26.04.2010, 15:19:20 by Palike »

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #408 on: 26.04.2010, 15:28:32 »
ahaa uz to ide, ja som tam to refresh nemal vobec...ale ked to tam mam tak mi to zobrazi asi na stotinu sekundy..aj ked tam mam sleep(1500); som z toho na nervy =/ ale aj tak dakujem velmi pekne :)  :beer1: 
problem moze byt este v tom, ze kde mas ten sleep() umiestneny. mal by nasledovat hned za volanim funkcie refresh() - teda - hned, ako scenu vykreslis, tak si na tu chvilku oddychnes.
So say we all!

Palike

  • Full Member
  • ***
  • Posts: 230
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #409 on: 26.04.2010, 15:38:05 »
problem moze byt este v tom, ze kde mas ten sleep() umiestneny. mal by nasledovat hned za volanim funkcie refresh() - teda - hned, ako scenu vykreslis, tak si na tu chvilku oddychnes.

je to logicke no.. ja som to mal pred tym..asi preto ze sa akurat ucim na elektrotechniku a nejak nad tym nerozmyslam len som to tam hodil nech to je ... dakujem za trpezlivost :D  :embarassed: :embarassed:

Shwollo

  • Sr. Member
  • ****
  • Posts: 436
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #410 on: 26.04.2010, 23:25:30 »
prečo mi furt chodí mimo sveta?

Code: [Select]
karelInWorld()
{
  int x = karel_x;
  int y = karel_y;      
  if (x <= width && y <= height && x>=0 && y >= 0) return 1;  // width=6 height=5
     else return 0;
}
 
 
      
frontIsClear()
{    
  int x = karel_x;
  int y = karel_y;
       if(karel_direction==0) x++;             // v
       else if(karel_direction==180)x--;       // ^
       else if(karel_direction==90) y++;       // >
       else if(karel_direction==270) y--;      // <
   if (karelInWorld() == 1);
      {
      if (world[x][y] == EMPTY && world[x][y] >= 0 ) return 1;
         else return 0;
      }
}

a prečo mi nejde táto podmienka? keď narazí na beeper tak si myslí, že je tam stena
Code: [Select]
if (world[x][y] == EMPTY && world[x][y] >= 0 ) return 1;
         else return 0;

celý zdroják
Code: [Select]
#define MAX_HEIGHT 20
#define MAX_WIDTH 20
#define WALL -1
#define EMPTY 0
int width,height;
int world[MAX_HEIGHT][MAX_WIDTH];
int karel_x;
int karel_y;
int karel_direction;
int karel_beepers = 20;


void turnOn(){
    

     karel_y = 3;
     karel_x = 3;
     width=6;
     height=5;

    
int newWorld[5][6]={
   { 0, -1, -1,  0,  0, 0 },
   { 0, -1, -1,  0,  0, 0 },
   { 0, -1, -1,  0,  0, 0 },
   { 0, -1, -1,  0,  0, 0 },
   { 0, -1, -1, -1, -1, 0 }
};

karel_direction = 90;

int x,y;
for(x=0; x<height; x++){
for(y=0; y<width; y++)
world[x][y]=newWorld[x][y];

}
}

void draw()
{
  system("cls");
  printf("pozicia: %d %d \n",karel_x, karel_y);  
  printf("orientacia: ");
  if (karel_direction == 0) printf("juh\n");
  if (karel_direction == 180) printf("sever\n");
  if (karel_direction == 270) printf("zapad\n");
  if (karel_direction == 90) printf("vychod\n");
  printf("pocet beeprov v batohu: %d\n", karel_beepers);
  printf("tu je %d beeprov", world[karel_x][karel_y]);
  printf(" \norientacia %d  \nclear?    %d\nblocked?  %d \n",  karel_direction, frontIsClear(), frontIsBlocked());

  printf("\n");
     int x,y;

     for(x=0; x<height; x++){
     for(y=0; y<width; y++){
                     if(karel_y==y && karel_x==x)
                                            {
                                            
                                            if (karel_direction==0) printf("v");
                                            else if(karel_direction==90) printf(">");
                                            else if(karel_direction==180) printf("^");
                                            else if(karel_direction==270) printf("<");
                                            }
                     else
                     {
                      if (world[x][y] == WALL)   printf("#");
                      if (world[x][y] == EMPTY)  printf(".");
                      if (world[x][y] > 0)      printf("*");
                     }
   }
   printf("\n");
  
}
sleep(1000);

}

void turnLeft()
{
      karel_direction += 90;
      karel_direction = karel_direction % 360;
      draw();
}

karelInWorld()
{
  int x = karel_x;
  int y = karel_y;      
  if (x <= width && y <= height && x>=0 && y >= 0) return 1;  // width=6 height=5
     else return 0;
}
 
 
      
frontIsClear()
{    
  int x = karel_x;
  int y = karel_y;
       if(karel_direction==0) x++;             // v
       else if(karel_direction==180)x--;       // ^
       else if(karel_direction==90) y++;       // >
       else if(karel_direction==270) y--;      // <
   if (karelInWorld() == 1);
      {
      if (world[x][y] == EMPTY && world[x][y] >= 0 ) return 1;
         else return 0;
      }
}
  
frontIsBlocked()
{    
 return !frontIsClear();
}  
 
void movek()
{
     int x,y;
     if (frontIsClear() == 1)    
      {    
      if(karel_direction==0) karel_x++;       //v            
      if(karel_direction==180) karel_x--;     //^              
      if(karel_direction==90) karel_y++;      //>              
      if(karel_direction==270) karel_y--;     //<            
      draw();
      
      }
      else printf("\nchyba, je tu stena\n\n");
}

beepersInBag()
{
  if (karel_beepers >= 1) return 1;
     else return 0;
}

noBeepersInBag()
{
  return !beepersInBag();
}

beepersPresent()
{
  if (world[karel_y][karel_x] > 0) return 1;
    else return 0;
}

putBeeper()
{
 if (world[karel_y][karel_x] >= 0)
    {
      world [karel_y][karel_x] += 1;          
      karel_beepers--;
    }
    else printf("nie su tu beepre\n");  
    draw();
}

pickBeeper()
{
 if (world[karel_y][karel_x] >0)
    {
      world [karel_y][karel_x] -= 1;
      karel_beepers++;  
    }
    else printf("tu nie ju beper");        
    draw();
}


 


void testSensors()
{
        
  //  printf("suradnice: x:%d y:%d \norientacia %d  \nclear?    %c\nblocked?  %c \n", karel_x, karel_y, karel_direction, frontIsClear(), frontIsBlocked());
    printf("\nma beepre? %d\npocet beeprov v batohu: %d \nje tu beeper? %d\n", beepersInBag(), karel_beepers, beepersPresent());
    printf("tu je %d beeprov\n", world[karel_y][karel_x]);

}


diky  :D
« Last Edit: 26.04.2010, 23:43:31 by Shwollo »
nepíšte mi SS - radšej mi píšte mail. (tá obálka pod mojim avatarom :)))

totaluser

  • Hero Member
  • *****
  • Posts: 621
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #411 on: 26.04.2010, 23:50:21 »
lebo vyhodnoti world
  • [y] == EMPTY ako false, kedze to neni 0 ale kladne cislo  teda dalej uz nic nevyhodnocuje

Safyia

  • Hero Member
  • *****
  • Posts: 1328
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #412 on: 27.04.2010, 00:29:35 »
To, aby ti nechodil mimo sveta daj do funkcie frontIsClear. ak spravis karelInWorld, musis to dat na zaciatok move, aj draw a tak, co je zbytocne. :)
Steny tak ako vravi totaluser... Ak mas stenu -1, tak porovnavaj radsej ci je [ x ] [ y ]<EMPTY, teda ti to pri beeproch nebude haprovat.

meroving

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #413 on: 27.04.2010, 02:27:51 »
caute....potreboval by som pomoc..... neviem urobit zadanie z programovania...kto by mi to urobil??? aj za peniaze...

sulo

  • Sr. Member
  • ****
  • Posts: 284
    • View Profile
    • Web
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #414 on: 28.04.2010, 02:40:23 »
Neviete, či komentáre k funkciám API majú byť po slovensky alebo po anglicky?
« Last Edit: 28.04.2010, 04:41:26 by sulo »

Vikinger

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #415 on: 28.04.2010, 02:54:47 »
Ahojte, potreboval by som funkciu na zistenie počtu Beeprov,  chcem aby to obišlo celu mapu, a zaroven ukladalo do premennej tu hodnotu ktora je najvacsia, cize maximalnu, a potom na konci aby sa vratilo na tu poziciu kde bolo najviac Beeprov. Ja som tak porozumel ulohe, ak by vedel dakto nejaky lahsi spôsob tak by mi mohol poradiť, je to uloha c. 25 :-/

 http://stargate.cnl.tuke.sk/~mirek/pvjc/scenarios/zadania.html

Vedeli by ste mi nejak pomôct?
Za vaše nazory dakujem
« Last Edit: 28.04.2010, 03:18:10 by Vikinger »

ursus

  • Hero Member
  • *****
  • Posts: 595
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #416 on: 28.04.2010, 03:12:18 »
do maxima prihraj prvy prvok pola a ptm cyklom prejdi cely svet a vzdy porovavaj aktualny prvok na ktorom stojis s maximom a ak je dany prvok vacsi ako maximum tak ho prirad do maxima
So this router walks into the doctor’s office…
- Doctor, it hurts when IP.

ursus

  • Hero Member
  • *****
  • Posts: 595
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #417 on: 28.04.2010, 04:00:12 »
Mirku, mam na teba dotaz

tie zadania, resp algoritmy, mam robit pre konkretne rozmery sveta zadane tym obrazkom alebo pre univerzalne pre rozmerovo hocijaky svet?
ak hej, tak mozem to aj nejako kontrolovat? kedze napr pri niektorych zadaniach postrebujes stred, cize idealne by bolo aby to malo neparny pocet prvkov v danom riadku/stplci

atd

dufam ze vies co myslim
So this router walks into the doctor’s office…
- Doctor, it hurts when IP.

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #418 on: 28.04.2010, 04:24:26 »
Mirku, mam na teba dotaz

tie zadania, resp algoritmy, mam robit pre konkretne rozmery sveta zadane tym obrazkom alebo pre univerzalne pre rozmerovo hocijaky svet?
ak hej, tak mozem to aj nejako kontrolovat? kedze napr pri niektorych zadaniach postrebujes stred, cize idealne by bolo aby to malo neparny pocet prvkov v danom riadku/stplci

atd

dufam ze vies co myslim

samozrejme, ze musi byt algoritmus univerzalny - pre lubovolnu mapu/svet, ktory vyhovuje zadanym podmienkam. v opacnom pripade by stacila len postupnost funkcii podobne, ako tomu bolo v prvom cviku (nieco, co sa dalo spravit na par riadkov, sme robili na strasnevelkypocet riadkov). takze ziadny hardcode.

no a niekedy by bolo idealne, aby bol svet neparny, ale budes sa musiet asi vysporiadat aj s tym, ze bude proste parny.
So say we all!

ursus

  • Hero Member
  • *****
  • Posts: 595
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #419 on: 28.04.2010, 05:15:20 »
Mirku, mam na teba dotaz

tie zadania, resp algoritmy, mam robit pre konkretne rozmery sveta zadane tym obrazkom alebo pre univerzalne pre rozmerovo hocijaky svet?
ak hej, tak mozem to aj nejako kontrolovat? kedze napr pri niektorych zadaniach postrebujes stred, cize idealne by bolo aby to malo neparny pocet prvkov v danom riadku/stplci

atd

dufam ze vies co myslim

samozrejme, ze musi byt algoritmus univerzalny - pre lubovolnu mapu/svet, ktory vyhovuje zadanym podmienkam. v opacnom pripade by stacila len postupnost funkcii podobne, ako tomu bolo v prvom cviku (nieco, co sa dalo spravit na par riadkov, sme robili na strasnevelkypocet riadkov). takze ziadny hardcode.

no a niekedy by bolo idealne, aby bol svet neparny, ale budes sa musiet asi vysporiadat aj s tym, ze bude proste parny.

okej, fpohode
ja len k tej ulohe s paskalovym trojuholnikom (10.pyramida) by som to mal v pripade parneho sveta vypisovat ako
a) pokial sa mi prvky zmestia do roadku, tzn posledny bude prazdny
b) alebo pokial zaplnim secky riadky, tj odrezem prvky z konca riadku

thx
So this router walks into the doctor’s office…
- Doctor, it hurts when IP.

mirek

  • Sr. Member
  • ****
  • Posts: 448
  • darkman ZX 128k
    • View Profile
    • domovská stránka
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #420 on: 28.04.2010, 05:18:27 »
Mirku, mam na teba dotaz

tie zadania, resp algoritmy, mam robit pre konkretne rozmery sveta zadane tym obrazkom alebo pre univerzalne pre rozmerovo hocijaky svet?
ak hej, tak mozem to aj nejako kontrolovat? kedze napr pri niektorych zadaniach postrebujes stred, cize idealne by bolo aby to malo neparny pocet prvkov v danom riadku/stplci

atd

dufam ze vies co myslim

samozrejme, ze musi byt algoritmus univerzalny - pre lubovolnu mapu/svet, ktory vyhovuje zadanym podmienkam. v opacnom pripade by stacila len postupnost funkcii podobne, ako tomu bolo v prvom cviku (nieco, co sa dalo spravit na par riadkov, sme robili na strasnevelkypocet riadkov). takze ziadny hardcode.

no a niekedy by bolo idealne, aby bol svet neparny, ale budes sa musiet asi vysporiadat aj s tym, ze bude proste parny.

okej, fpohode
ja len k tej ulohe s paskalovym trojuholnikom (10.pyramida) by som to mal v pripade parneho sveta vypisovat ako
a) pokial sa mi prvky zmestia do roadku, tzn posledny bude prazdny
b) alebo pokial zaplnim secky riadky, tj odrezem prvky z konca riadku

thx

ak to ma byt trojuholnik, musia tam byt vsetky prvky. ak budes orezavat, uz to bude stvoruholnik.
So say we all!

ursus

  • Hero Member
  • *****
  • Posts: 595
    • View Profile
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #421 on: 28.04.2010, 05:33:07 »
Mirku, mam na teba dotaz

tie zadania, resp algoritmy, mam robit pre konkretne rozmery sveta zadane tym obrazkom alebo pre univerzalne pre rozmerovo hocijaky svet?
ak hej, tak mozem to aj nejako kontrolovat? kedze napr pri niektorych zadaniach postrebujes stred, cize idealne by bolo aby to malo neparny pocet prvkov v danom riadku/stplci

atd

dufam ze vies co myslim

samozrejme, ze musi byt algoritmus univerzalny - pre lubovolnu mapu/svet, ktory vyhovuje zadanym podmienkam. v opacnom pripade by stacila len postupnost funkcii podobne, ako tomu bolo v prvom cviku (nieco, co sa dalo spravit na par riadkov, sme robili na strasnevelkypocet riadkov). takze ziadny hardcode.

no a niekedy by bolo idealne, aby bol svet neparny, ale budes sa musiet asi vysporiadat aj s tym, ze bude proste parny.

okej, fpohode
ja len k tej ulohe s paskalovym trojuholnikom (10.pyramida) by som to mal v pripade parneho sveta vypisovat ako
a) pokial sa mi prvky zmestia do roadku, tzn posledny bude prazdny
b) alebo pokial zaplnim secky riadky, tj odrezem prvky z konca riadku

thx

ak to ma byt trojuholnik, musia tam byt vsetky prvky. ak budes orezavat, uz to bude stvoruholnik.

well, je to pyramida  ;D , a tie nemali odzaciatku nutne trojuholnikove strany ;D
okej, beriem ze a) je spravne
So this router walks into the doctor’s office…
- Doctor, it hurts when IP.

cenki

  • Guest
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #422 on: 28.04.2010, 18:51:20 »
Zdravim, podla tutorialov a pod. som spichol Makefile z 11teho cvika:
Code: [Select]
CC   = gcc.exe
LIB  =  -L"D:/Programy/Dev-Cpp/lib" pdcurses.lib 
INC  =  -I"D:/Programy/Dev-Cpp/include"

library.o: library.c
gcc.exe -c library.c -o library.o $(INC)

main.o: main.c
gcc.exe -c main.c -o main.o $(INC)

all: main.o library.o
gcc.exe main.o library.o -o "program.exe" $(LIB)

clean: clean-custom
erease main.o library.o
Robene podla Devkoveho Makefilu a tutov na nete... takto to bolo asi myslene? A aky prikaz by mal byt aby mi zmazalo potom .o subory v poslednom riadku? Erease ani del neberie :/ respektive nemaze.

sulo

  • Sr. Member
  • ****
  • Posts: 284
    • View Profile
    • Web
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #423 on: 28.04.2010, 19:10:43 »
V tom prvom riadku máš premennú CC, ktorá určuje názov C kompilátora. Takže potom ju môžeš používať neskôr v texte, asi takto:

Code: [Select]
library.o: library.c
$(CC) -c library.c -o library.o $(INC)

Čo sa týka mazania, malo by byť použité rm. Na Windows síce štandardne nie je, ale je napr. súčasťou Dev-Cpp, ktoré už predpokladám máš nainštalované.

psicho

  • VIP
  • Hero Member
  • *****
  • Posts: 3173
  • Markus[pSicho]Fesi
    • View Profile
    • codemazing
Re: ZADANIA Z predmetu PROGRAMOVANIE
« Reply #424 on: 28.04.2010, 20:09:25 »
learn some :

Code: [Select]
# final product of this makefile
all: zadanie

# compilator
CCC = gcc

# compilator options
CFLAGS  = -O -Wall

LIBS = -L. -lkarel

# the zadanie itself
zadanie: main.o library.o
$(CCC) -o zadanie ./main.o ./library.o

main.o:   ./main.c
$(CCC) $(CFLAGS) -c ./main.c

library.o: ./library.c
$(CCC) $(CFLAGS) -c ./library.c

library: ./library.c ./library.h
$(CCC) $(CFLAGS) -c ./library.c
ar cq libkarel.a library.o

clean:
rm library.o
rm main.o

read my blog> www.codemazing.com <read my blog