Revision 56

View differences:

logic/trunk/simulacija/simulation_function.c
1
#include <stdio.h>
2
#include <stdlib.h>
3
#include <time.h>
4
#include <string.h>
5
double measure();
6

  
7

  
8
int main(void) {
9
	//testiranje funkcije
10
   double x= measure();
11
   printf("trenutna meritev = \"%f\"\n", x);
12
   
13
   return 0;
14
}
15

  
16

  
17
//funkcija:
18
double measure() {
19
	// nastavitev, minimalne in maksimalne temperature:
20
	//funkcija, torej od ure 00:00 raste od minimalne do maximalne, ki jo dose?e pri uri 12:00 in nato spet pada do minimalne pri 24:00
21
	
22
	double minimum=20;
23
	double maximum=27;
24
	
25
	
26
	
27
	
28
	time_t     now;
29
    struct tm  *ts;
30
    char       buf1[80];
31
    
32
    now = time(NULL);
33
	    
34
    ts = localtime(&now);
35
    strcpy(buf1, asctime(ts));
36
	
37
	int x1 = buf1[11]-48;
38
	int x2 = buf1[12]-48;
39
	int m1 = buf1[14]-48;
40
	int m2 = buf1[15]-48;
41
	
42
	//printf("%d%d:%d%d \n",x1,x2,m1,m2);
43
	
44
	int minutes = (x1*10+x2)*60 + m1*10+m2;
45
	int variable = minutes;
46
	
47
	if(variable>720) {
48
	variable= 720-(variable-720);
49
	}
50
	
51
	double k = ((double)variable)/((double)720);
52
	//printf("%f",k);
53
	double meritev=0;
54
	meritev = minimum + k * (maximum-minimum);
55
	//int x1 = atoi(&buf[1]);
56
	/*int x2 = atoi(&buf[16]);
57
	int m1 = atoi(&buf[17]);
58
	int m2 = atoi(&buf[18]);*/
59
	//printf("%d minut\n", minutes);
60
	//printf("%s, %s, %s ,%s, %d ur in %d minut\n",buf[0], buf[1], buf[2], buf[3], hour, minute);
61
	
62
	
63
	return meritev;
64
}

Also available in: Unified diff