diff --git a/proglabs/lab6/1.c b/proglabs/lab6/1.c deleted file mode 100644 index 53c5fdf..0000000 --- a/proglabs/lab6/1.c +++ /dev/null @@ -1 +0,0 @@ -#include diff --git a/proglabs/lab6/10.c b/proglabs/lab6/10.c new file mode 100644 index 0000000..b62b845 --- /dev/null +++ b/proglabs/lab6/10.c @@ -0,0 +1,42 @@ +#include + +#define n1 0.15 //tax1 +#define n2 0.28 + +#define m1 17850 +#define m2 23900 +#define m3 29750 +#define m4 14875 + + +int main() { + int m,sw,swt,exit; + float d,tax; + exit = swt = 1; + while(exit){ + do{ + printf("Choose tarif:\n"); + printf("1) odin\t2) main\n"); + printf("3) brak sov\t4) Brak razd\n"); + printf("5) exit\nInput: "); + sw = getchar(); + switch(sw){ + case '1': m = m1; swt = 0; break; + case '2': m = m2; swt = 0; break; + case '3': m = m3; swt = 0; break; + case '4': m = m4; swt = 0; break; + case '5': exit = 0; break; + } + }while(swt&&exit); + if(exit){ + printf("dohod: "); + scanf("%f",&d); + while(getchar() != '\n'); + + if (d>m){tax = ((m*n1)+((d-m)*n2));} + else (tax = (d*n1)); + + printf("Tax: %.2f\n\n\n",tax); + }} + return 0; +} diff --git a/proglabs/lab6/11.c b/proglabs/lab6/11.c new file mode 100644 index 0000000..983747e --- /dev/null +++ b/proglabs/lab6/11.c @@ -0,0 +1,60 @@ +#include + +#define arti 2.05 +#define svek 1.15 +#define carr 1.09 + +#define skid 0.05 + +#define zatrporog1 5 +#define zatrporog2 20 +#define zatrmin 6.50 +#define zatrsr 14.00 +#define zatrmax 0.5 + +int main() { + int ch,a,s,c,tmp; + float sk,st,zt; + + printf("a - Artishok\nb - Svek\nc -Carrot\nq - quit\nInput: "); + while((ch = getchar())!='q'){ + switch(ch){ + case 'a': + printf("Arti: "); + scanf("%d",&tmp); + a+=tmp; + break; + case 'b': + printf("svek: "); + scanf("%d",&tmp); + s+=tmp; + break; + case 'c': + printf("Carrot: "); + scanf("%d",&tmp); + c+=tmp; + break; + } + printf("\n\nzakaz:\nArti\tSvek\tCarrot\n%d\t%d\t%d\n",a,s,c); + printf("a - Artishok\nb - Svek\nc - Carrot\nq - deal\nInput: "); + } + + if((a>0)||(s>0)||(c>0)){ + + st = ((a*arti)+(s*svek)+(c*carr)); + tmp = (a+s+c); + if(tmp>zatrporog1){ + if(tmp>zatrporog2){ + zt=(zatrsr+((tmp-zatrporog2)*zatrmax)); + }else(zt=zatrsr); + }else(zt=zatrmin); + if(st>100){sk=(st+zt)*skid;} + + printf("zakaz: arti-%d Svek-%d Carr-%d\n",a,s,c); + printf("Arti-%d sum-%0.2f stoimost-%0.2f/1\n",a,a*arti,arti); + printf("Svek-%d sum-%0.2f stoimost-%0.2f/1\n",s,s*svek,svek); + printf("Carrot-%d sum-%0.2f stoimost-%0.2f/1\n",c,c*carr,carr); + printf("stoimost-%.2f skidka-%.2f zatrat-%.2f\nitogo: %.2f",st,sk,zt,zt+st-sk); + } + return 0; +} diff --git a/proglabs/lab6/2.c b/proglabs/lab6/2.c index 53c5fdf..0db65be 100644 --- a/proglabs/lab6/2.c +++ b/proglabs/lab6/2.c @@ -1 +1,28 @@ #include + +int main(){ + int ch,c,m[8]; + ch = c = 0; + printf("ascii symb - its num until #\n"); + while((ch = getchar()) != '#'){ + m[c] = ch; + c++; + if(c == 8){ + for(c = 0; c < 8; c++){ + switch(m[c]){ + case '\n': + printf("\\n - %d ",m[c]); + break; + case ' ': + printf("\"%c\" - %d ",m[c],m[c]); + break; + default: + printf("%c - %d ",m[c],m[c]); + } + } + printf("\n"); + c = 0; + } + } + return 0; +} diff --git a/proglabs/lab6/3.c b/proglabs/lab6/3.c index 53c5fdf..4bed706 100644 --- a/proglabs/lab6/3.c +++ b/proglabs/lab6/3.c @@ -1 +1,16 @@ #include + +int main(){ + int a,n1,sum1,n2,sum2; + n1 = sum1 = n2 = sum2 = 0; + printf("num: "); + a = 1; + while(scanf("%d", &a) && a != 0){ + if (a % 2 == 0){n1++; sum1 += a;} + else if (a % 2 == 1 || a % 2 == -1){n2++; sum2 += a;} + printf("num: "); + } + printf("eve nums: %d \t eve summ: %d \t mean: %d\n",n1,sum1,(sum1/n1)); + printf("odd nums: %d \t odd summ: %d \t mean: %d",n2,sum2,(sum2/n2)); + return 0; +} diff --git a/proglabs/lab6/4.c b/proglabs/lab6/4.c new file mode 100644 index 0000000..0516d6d --- /dev/null +++ b/proglabs/lab6/4.c @@ -0,0 +1,14 @@ +#include + +int main() { + int ch,r; + r = 0; + printf("Print something:\n"); + while((ch = getchar()) != '#'){ + if(ch == '!'){r++;putchar('!');putchar('!');} + else if(ch == '.'){r++;putchar('!');} + else putchar(ch); + } + printf("\nr: %d",r); + return 0; +} diff --git a/proglabs/lab6/5.c b/proglabs/lab6/5.c new file mode 100644 index 0000000..790e2fd --- /dev/null +++ b/proglabs/lab6/5.c @@ -0,0 +1,16 @@ +#include + +int main() { + int ch,r; + r = 0; + printf("Print something:\n"); + while((ch = getchar()) != '#'){ + switch(ch){ + case '!': r++;putchar('!');putchar('!');break; + case '.': r++;putchar('!');break; + default : putchar(ch); + } + } + printf("\nr: %d",r); + return 0; +} diff --git a/proglabs/lab6/6.c b/proglabs/lab6/6.c new file mode 100644 index 0000000..ecd87a0 --- /dev/null +++ b/proglabs/lab6/6.c @@ -0,0 +1,13 @@ +#include + +int main() { + int a,b,c; + a = b = c = 0; + printf("count ef:\n"); + while((a = getchar()) != '#'){ + if(a == 'i' && b == 'e'){c++;} + b = a; + } + printf("count: %d",c); + return 0; +} diff --git a/proglabs/lab6/7.c b/proglabs/lab6/7.c new file mode 100644 index 0000000..92f77ed --- /dev/null +++ b/proglabs/lab6/7.c @@ -0,0 +1,29 @@ +#include +#define t 10 //zp +#define s 40 //sverh +#define u 1.5 //sverh* +#define n1 0.15 //tax1 +#define n2 0.2 +#define n3 0.25 +#define m1 300 //maxbeftax2 +#define m2 150 + + +int main() { + int h,tax,a; + printf("hours: "); + scanf("%d",&h); + + if (h>s){tax = a = (s*t + ((h-s) * (t*u)));} + else(tax = a = h*t); + + if (tax>m1) + { + if(tax>m2){tax = (m1*n1) + (m2*n2) + ((tax-m1-m2)*n3);} + else(tax = (m1*n1) + ((tax-m1)*n2)); + } + else (tax*=n1); + + printf("Acc: %d\nTax: %d\nReceived: %d",a,tax,a-tax); + return 0; +} diff --git a/proglabs/lab6/8.c b/proglabs/lab6/8.c new file mode 100644 index 0000000..a427e0a --- /dev/null +++ b/proglabs/lab6/8.c @@ -0,0 +1,52 @@ +#include +#define t1 8.75 +#define t2 9.33 +#define t3 10.00 +#define t4 11.20 +// #define t 10 //zp +#define s 40 //sverh +#define u 1.5 //sverh* +#define n1 0.15 //tax1 +#define n2 0.2 +#define n3 0.25 +#define m1 300 //maxbeftax2 +#define m2 150 + +int main() { + int h,sw,x,swt,exit,scan; + float t,tax,a; + exit = x = swt = scan = 1; + while(exit){ + printf("hours: "); + scanf("%d", &h); + while (getchar() != '\n'); + do{ + printf("Choose tarif:\n"); + printf("1) $%.2f/h\t2) $%.2f/h\n",t1,t2); + printf("3) $%.2f/h\t4) $%.2f/h\n",t3,t4); + printf("5) exit\nInput: "); + sw = getchar(); + switch(sw){ + case '1': t = t1; swt = 0; break; + case '2': t = t2; swt = 0; break; + case '3': t = t3; swt = 0; break; + case '4': t = t4; swt = 0; break; + case '5': exit = 0; break; + } + }while(swt&&exit); + + if(!swt && exit){ + if (h>s){tax = a = (s*t + ((h-s) * (t*u)));} + else(tax = a = h*t); + + if (tax>m1) + { + if(tax>m2){tax = (m1*n1) + (m2*n2) + ((tax-m1-m2)*n3);} + else(tax = (m1*n1) + ((tax-m1)*n2)); + } + else (tax*=n1); + printf("Acc: %.3f\nTax: %.3f\nReceived: %.3f\n",a,tax,a-tax); + }} + + return 0; +} diff --git a/proglabs/lab6/9.c b/proglabs/lab6/9.c new file mode 100644 index 0000000..5afb800 --- /dev/null +++ b/proglabs/lab6/9.c @@ -0,0 +1,26 @@ +#include +int pr(long long n); + +int main() { + long long int x,i; + int y = 1; + if(!(scanf("%lld",&x)))return 1; + + for(i = x; i > 1; --i) + if(pr(i)) + printf("%lld\t",i); + + return 0; +} + +int pr(long long x) { + if (x < 2) return 0; + if (x == 2 || x == 3) return 1; + if (x % 2 == 0 || x % 3 == 0) return 0; + + for (long long i = 5; i * i <= x; i += 6) { + if (x % i == 0 || x % (i + 2) == 0) + return 0; + } + return 1; +} diff --git a/proglabs/lab6/tmp.out b/proglabs/lab6/tmp.out new file mode 100755 index 0000000..7d59dd1 Binary files /dev/null and b/proglabs/lab6/tmp.out differ