VladimirKostovsky

Лаба 1.4 (б) Редакция 0.8

Mar 9th, 2022 (edited)
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.95 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4. using namespace std;
  5.  
  6. float value;
  7. int stepen;
  8.  
  9. struct polinom { float data; float power; polinom* next; } *S, * S2, * S3;
  10. void Read_polinom(polinom* S, char text) {
  11.     polinom* t;
  12.     t = S;
  13.  
  14.     ifstream F;
  15.     F.open(text);
  16.  
  17.     if (!F.is_open()) {
  18.         cout << "Ошибка откытия файла" << endl;
  19.     }
  20.     else {
  21.         cout << "Файл открыт" << endl;
  22.  
  23.         while (!F.eof()) {
  24.             F >> value; // заглавное звено
  25.             t->next = new polinom;
  26.             t = t->next;
  27.  
  28.             t->data = value;
  29.             t->power = stepen;
  30.         }
  31.  
  32.         t->next = new polinom;
  33.         t = t->next;
  34.  
  35.         t->data = value;
  36.         t->power = stepen;
  37.         t->next = NULL;
  38.     }
  39.     F.close();
  40. }
  41.  
  42. void Record_polinom(polinom* S, char text) {
  43.     ofstream fout(text, ios_base::app);
  44.     polinom* t;
  45.     fout << "polynom" << endl;
  46.     for (t = S->next; t->next != NULL; t = t->next) {
  47.         fout << t->data << " " << t->power << "| ";
  48.     }
  49.     fout << endl;
  50. }
  51.  
  52. void Sum(polinom* S, polinom* S2) {
  53.     polinom* t;
  54.     polinom* t2;
  55.     polinom* t3;
  56.     ofstream fout("out3.txt", ios_base::app);
  57.     fout << "summa polynom" << endl;
  58.     for (t = S->next, t2 = S2->next; t->next != NULL && t2->next != NULL; t = t->next, t2 = t2->next) {
  59.         if ((t->data + t2->data) != 0) {
  60.             t3->next = new polinomR;
  61.             t3 = t3->next;
  62.             t->power;
  63.                 t3->data = (t->data + t2->data);
  64.             fout << t3 << ' ' << t << endl;
  65.         }
  66.         else {
  67.             cout << "/n";
  68.         }
  69.     }
  70. }
  71.  
  72. int main()
  73. {
  74.     setlocale(LC_ALL, "RUS");
  75.     S = new polinomP;
  76.     S2 = new polinomQ;
  77.     S3 = new polinomR;
  78.     Read_polinom(S, "text1.txt");
  79.     Record_polinom(S, "out1.txt");
  80.     Read_polinom(S2, "text2.txt");
  81.     Record_polinom(S2, "out2.txt");
  82.         Sum(S, S2);
  83. }
Add Comment
Please, Sign In to add comment