Witam, niedawno zacząłem naukę C w liceum ogólnokształczącym.
Dostałem zadanie do domu aby zrobić tabliczkę mnożenia, jednak oczywiście gdzieś leży problem z uruchomieniem go.
Bebrałem się dość długo z conio2.h, aby zaczął mi działać na 64 bitowym systemie, ale już się udało.
Oto kod
#include <stdlib.h>
#include <stdio.h>
#include <conio2.h>
#include <time.h>
#include "ramka.c"
void tabliczka()
{
void ramka(int k,int w,int dl,int sz);
textattr(0x3E);
gotoxy(1,1); insline();
gotoxy(2,1); printf("Tabliczka mnozenia");
int los1, los2;
los1=1+rand()%10;
los2=1+rand()%10;
gotoxy(1,3);
for(int w=1; w<11; w++){
for(int k=1; k<11; k++){
if(los1==k and los2==w or los1==w and los2==k)
{textattr(0xEC);}
else {textattr(0x07);}
printf("%4d",k*w);
}
printf("\n\r");
}
textattr(0x0B);
ramka(1,2,43,13);
printf("\n\r");
textattr(0x07);
printf(" %d * %d = %2d",los1,los2,los1*los2);
textattr(0x3E);
gotoxy(1,15);
insline();
gotoxy(2,15); printf("Marcin Zakrzewski");
}
//-----------------------------------
int main()
{
srand(time(0));
tabliczka();
getch();
return 0;
}
a to ramka.c
void ramka(int k,int w,int dl,int sz)
{
int i;
for (i=0;i<dl-2;i++)
{
gotoxy(k+1+i,w); printf("%c",196); //sciana gorna
gotoxy(k+1+i,w+sz-2); printf("%c",196);//sciana dolna
}
for (i=0;i<sz-2;i++)
{
gotoxy(k,w+i); printf("%c",179); //sciana lewa
gotoxy(k+dl-2,w+i); printf("%c",179); //scaiana prawa
}
gotoxy(k,w); printf("%c",218); //lewy gorny
gotoxy(k+dl-2,w); printf("%c",191); //prawy gorny
gotoxy(k,w+sz-2); printf("%c",192); //lewy dolny
gotoxy(k+dl-2,w+sz-2); printf("%c",217); //prawy dolny
}
//-----------------------------------
Problem leży w każdej linijce z gotoxy i textattr, a dokładniej "undefined reference to 'textattr' lub 'gotoxy'.
Koledze wszystko działa, więc jest szansa ze błąd leży gdzieś po stronie komputera ?
Pozdrawiam