Vinnaren i pepparkakshustävlingen!
  • 1
  • 2
2014-09-22, 12:38
  #1
Medlem
-Firben-s avatar
Skrev foljande matlab kod

#include <math.h>
#include <stdio.h>

int main(void){
double two_pi = 2.0 * M_PI;
double h = 0.1;
double x;

for (x = 0.0; x < two_pi; x += h)
printf("%5.1f: %.15f\n",x, sin(x) * sin(x) + cos(x) * cos(x)); */ Fel har !
return 0;
}

och fick felmeddelandet

Multiple markers at this line
- undefined reference to
`cos'
- undefined reference to
`sin'

Nagan som vet vad som blir fel ?
Citera
2014-09-22, 13:06
  #2
Medlem
Det ser ut att vara c/c++ kod inte matlab kod

bör väl vara
Kod:
for x = 0:.1:2*pi 
y =  sin(x) * sin(x) + cos(x) * cos(x))
fprintf(x,y) %behöver nog modda fprintf men kommer ej ihåg nu 
end 
Citera
2014-09-22, 14:55
  #3
Medlem
-Firben-s avatar
Jag har kopierat texten från en bok, det ska fungera
Citera
2014-09-22, 15:09
  #4
Medlem
då gör du något fel, skriver jag den koden får jag
"??? Error: File: Untitled123.m Line: 1 Column: 1
The input character is not valid in MATLAB statements or
expressions."
Citera
2014-09-22, 15:22
  #5
Medlem
-Firben-s avatar
Jag har skrivit av samma kod forut och det har fungerat.

#include <math.h>
#include <stdio.h>

int main(void)
{
double two_pi = 2.0 * M_PI;
double h = 0.1;
double x;

for (x = 0.0; x < two_pi; x += h)
printf("%5.1f: %.15f\n",
x, sin(x) * sin(x) + cos(x) * cos(x)); *\ det ar har det blir fel inte pa for loopen. sinx och cosx finns inte med i biblioteket av nagon anledning
return 0;
}
Citera
2014-09-22, 15:24
  #6
Medlem
inneskos avatar
Det är inte Matlab du håller på med, det är C. Testa ta och ha med -lm som argument i kompileringen.
Citera
2014-09-22, 15:30
  #7
Medlem
Tar jag bort dina kommentarer så kan jag köra den med en c-kompilator utan problem men funkar inte i matlab.
Citera
2014-09-22, 15:38
  #8
Medlem
-Firben-s avatar
Citat:
Ursprungligen postat av innesko
Det är inte Matlab du håller på med, det är C. Testa ta och ha med -lm som argument i kompileringen.


Hur tar man med -lm som argument i Matlab ?
Citera
2014-09-22, 15:42
  #9
Medlem
inneskos avatar
Citat:
Ursprungligen postat av -Firben-
Hur tar man med -lm som argument i Matlab ?

Är det mex du sysslar med? Jag har aldrig kompilerat genom det, men skulle gissa på "mex -lm filnamn.c", verkar vara så enligt dokumentationen för mex iaf.
Citera
2014-09-22, 15:46
  #10
Medlem
-Firben-s avatar
Det ar c jag haller pa med
Citera
2014-09-22, 15:48
  #11
Medlem
inneskos avatar
Citat:
Ursprungligen postat av -Firben-
Det ar c jag haller pa med

Okej, men varför håller du på prata om Matlab då?
Citera
2014-09-22, 15:51
  #12
Medlem
-Firben-s avatar
Det ar ett c program i matlab som jag testade, c project .c fil
Citera
  • 1
  • 2

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback