1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
| #include <stdio.h>
#include <math.h>
#define pi 3.14
#define e 2.718
float x1,x2,y1,y2;
int funkcija;
void preberiParametre() {
printf("Vpisi x1: ");scanf("%f",&x1);
printf("Vpisi x2: ");scanf("%f",&x2);
printf("Vpisi y1: ");scanf("%f",&y1);
printf("Vpisi y2: ");scanf("%f",&y2);
printf("0 .. sin, 1 ... cos, 2 ... tan, 3 ... e^x");
scanf("%d", &funkcija);
}
main() {
int i, j;
float x, y;
preberiParametre();
// deklaracija in inicializacija tabele
char zaslon[80][25];
for(i=0; i<80; i++)
for(j=0; j<25; j++)
zaslon[i][j]=' ';
// koordinatni sistem
for(i=0;i<80;i++) zaslon[i][12]='-';
for(j=0;j<25;j++) zaslon[40][j]='|';
// izracun funkcije
for(i=0; i<80; i++) {
x = (x2-x1)/79 * i + x1;
switch (funkcija) {
case 0: y = sin(x); break;
case 1: y = cos(x); break;
case 2: y = tan(x); break;
case 3: y = pow(e, x); break;
default: y = x;
}
j=24*(y-y1)/(y2-y1);
if ((j>=0) && (j <25))
zaslon[i][j]='*';
}
// izpis rezultata
for(j=0; j<25; j++) {
for(i=0; i<80; i++)
printf("%c", zaslon[i][j]);
printf("\n");
}
}
|