![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 16.01.2011
Сообщений: 25
|
![]()
а) преобразования комплексного числа из алгебраической формы в показательную;
б) преобразования комплексного числа из показательной формы в алгебраическую; в) получения сопряженного комплексного числа; г) возведения комплексного числа в целую положительную степень; д) умножения комплексных чисел в алгебраической форме; с) умножения комплексных чисел в показательной форме; #include<stdio.h> #include<conio.h> #include<math.h> #include<iostream> int Complex(); int Complex1(); int Complex2(); int Complex3(); int Complex4(); float r,fi,x,y,pi=3.14,a,b,r1,x1,y1,a1,b1 ,r2,r3,r4,fi1,fi2,x2,y2; int n; void main() { FILE *ctPtr; int request; if((ctPtr=fopen("complex.dat","w")) ==NULL); printf("FILE NOT OPEN!!"); puts("Enter request: 1-Complex; 2-Complex1; 3-Complex2; 4-Complex3; 5-Complex4; 6-Exit; "); scanf("%d",&request); switch(request){ case1:Complex(z1.a,z1.b,&r,&fi); break; case2:Complex1(z1.a,z1.b,&a,&b); break; case3:Complex2(z1.a,z1.b,r,&r1,&fi) ; break; case4:Complex3(z1.a,z1.b,z2.a,z2.b, &a1,&b1); break; case5:Complex4(z3.a,z3.b,&r2,&fi1,& fi2); break; case6:Exit(1); default ![]() return; struct complex { float a; float b; }z1,z2,z3; puts("Vvedite deystvitel'nuyu chast' pervogo chisla"); fscanf(ctPtr,"%f",&z1.a); puts("Vvedite mnimuyu chast' pervogo chisla"); fscanf(ctPtr,"%f",&z1.b); puts("Vvedite deystvitel'nuyu chast' vtorogo chisla"); fscanf(ctPtr,"%f",&z2.a); puts("Vvedite mnimuyu chast' vtorogo chisla"); fscanf(ctPtr,"%f",&z2.b); Complex(z1.a,z1.b,&r,&fi); fprintf(ctPtr,"Preobrazoannoe chislo iz algebraicheskoi formi v pokazatel'nuyu"); fprintf(ctPtr,"z1=%.2f*^e(%.2fi)\n" ,r,fi); puts("\n"); Complex1(z1.a,z1.b,&a,&b); puts("Preobrazovannoe chislo iz pokazatel'noi formi v algebraicheskuyu"); fprintf(ctPtr,"z1=%.2f+(%.2f)i\n",a ,b); puts("\n"); puts("Chislo v algebraicheskoi forme"); fprintf(ctPtr,"z1=%.2f+(%.2f)i\n",a ,b); puts("Sopryajennoe chislo"); fprintf(ctPtr,"z1=%.2f-(%.2f)i\n",a,b); puts("\n"); puts("Vvedite znachenie stepenya - n"); fscanf(ctPtr,"%d",&n); Complex2(z1.a,z1.b,r,&r1,&fi); puts("Chislo vozvedennoie v stepen' n"); fprintf(ctPtr,"z=%.2f((%.2f)+i(%.2f ))\n",r1,x,y,fi); puts("\n"); Complex3(z1.a,z1.b,z2.a,z2.b,&a1,&b 1); puts("Proizvedenie kompleksnix chisel v algebraicheskoi forme"); fprintf(ctPtr,"z3=%.2f+(%.2f)i\n",a 1,b1); puts("\n"); Complex4(z3.a,z3.b,&r2,&fi1,&fi2); puts("Proizvedenie kompleksnix chisel v pokazatel'noi forme v algebraicheskoi zapisi"); fprintf(ctPtr,"z3=%.2f(%.2f+%.2fi)\ n",r4,x2,y2,fi1,fi2); puts("\n"); fclose(ctPtr); getch_(); } void Complex(float x,float y,float *r,float *fi) { float pi=3.14; *r=sqrt(x*x+y*y); if(x>0) *fi=atan(y/x); if(x<0 && y>=0) *fi=atan(y/x)+pi; if(x<0 && y<0) *fi=atan(y/x)-pi; if(x==0 && y>0) *fi=pi/2; if(x==0 && y<0) *fi=-pi/2; puts("\n"); } void Complex1(float x,float y,float *a,float *b) { *a=x*cos(y); *b=x*sin(y); } void Complex2(float x,float y,float r,float *r1,float *fi) { float pi=3.14; int n; if(x>0) *fi=atan(y/x); if(x<0 && y>=0) *fi=atan(y/x)+pi; if(x<0 && y<0) *fi=atan(y/x)-pi; if(x==0 && y>0) *fi=pi/2; if(x==0 && y<0) *fi=-pi/2; x=cos(n*(*fi)); y=sin(n*(*fi)); r=(sqrt(x*x+y*y)); *r1=pow( r,n); } void Complex3(float x,float y,float x1,float y1,float *a1,float *b1) { *a1=x*x1-y*y1; *b1=x*y1+y*x1; } void Complex4(float x2,float y2,float *r4,float *fi1,float *fi2) { float x,y,x1,y1; float r2,r3; *r4=(sqrt(x*x+y*y))*(sqrt(x1*x1+y1* y1)); x2=cos((*fi1)+(*fi2)); y2=sin((*fi1)+(*fi2)); } была структура,сказали переделать как файлы произвольного доступа.что-то слишком много ошибок выдает( |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Настройка сетевого доступа к файл-серверу | DEKARO | Свободное общение | 10 | 05.08.2010 07:40 |
Pascal файл прямого доступа | AfeR | Помощь студентам | 2 | 13.07.2010 02:25 |
файлы произвольного доступа и множества(горю)) | drcoxer | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 03.06.2010 11:02 |
Создать в редакторе текстовый файл, внести в него 10 строк произвольного текста. Разработать программу, к | Pan_rust | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 24.05.2010 23:04 |
Задача:поиск и сортировка.(файл произвольного размера) | xxxBITxxx | Помощь студентам | 3 | 11.01.2009 19:48 |