Tuesday, August 26, 2014

Cho tệp văn bản input.txt mỗi dòng chứa 2 số thực cách nhau ít nhất một dấu cách trống. Cho kiểu cấu trúc số phức gồm 2 thành phần là phần thực và phần ảo. Viết chương trình tạo danh sách LIFO gồm các số phức có phần thực và phần ảo đọc ra từ tệp trên. Tính và thông báo ra màn hình tổng các số phức có mặt trong danh sách LIFO.

Cho tệp văn bản input.txt mỗi dòng chứa 2 số thực cách nhau ít nhất một dấu cách trống. Cho kiểu cấu trúc số phức gồm 2 thành phần là phần thực và phần ảo. Viết chương trình tạo danh sách LIFO gồm các số phức có phần thực và phần ảo đọc ra từ tệp trên. Tính và thông báo ra màn hình tổng các số phức có mặt trong danh sách FIFO.


Tệp input.txt tạo và lưu trên nền ổ C

#include <iostream>
#include <stdio.h>
#include <conio.h>
using namespace std;
typedef struct sp
{
      floatthuc,ao;
      sp *next;
};
sp *doctep(sp *x) // doc tep c://input.txt
{
      FILE *u;
      x=NULL;
      sp *p;
      u=fopen("C:\\input.txt","rt");
      while(!feof(u))
      {
                  p=new sp;
                  fscanf(u,"%f",&p->thuc);
                  fscanf(u,"%f",&p->ao);
                  p->next=x;
                  x=p;
      }
      fclose(u);
      returnx;  
}
void xem(sp x)  // xem tong so phuc
{
      printf("\n   %5.2f  +  %5.2f i  ",x.thuc,x.ao);
}
void xemtoanbo(sp *x)// xem toàn bô sô phuc vua doc tu tep input.txt
{
      sp *tam=x;
      while(tam!=NULL)
      {
            //printf("\n   %5.2f  +  %5.2f i  ",tam->thuc,tam->ao);
            xem(*tam);
            tam=tam->next;
      }
}
sp tong2sp(sp a,sp b) // tong 2 so phuc
{
      sp z;
      z.thuc=a.thuc+b.thuc;
      z.ao=a.ao+b.ao;
      returnz;
}
sp tong(sp *x) // tong danh sach so phuc
{
      sp tong,*tam=x;
     
      tong.thuc=0;   //khoi tao sp tong=0
      tong.ao=0;     //
     
      while(tam!=NULL)
      {
           
            tong=tong2sp(tong,*tam);
            tam=tam->next;
      }
      returntong;
}
void main()
{
      sp *x;
      x=newsp;
      x=doctep(x);
      xemtoanbo(x);
      printf("\nTong mang so phuc  :   ");
      xem(tong(x));
      getch();

}

No comments:

Post a Comment