Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2015, 14:33   #11
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,430
По умолчанию

Код:
    ofstream k("output.txt", ios::out);
    k << "text";
    k.close();
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 26.04.2015, 15:13   #12
Vitalyas
Пользователь
 
Регистрация: 25.11.2014
Сообщений: 47
По умолчанию

Всем спасибо большое за помощь!

Решил так сказать опубликовать конечную программу, которая получилась после всех изменений и добавлений. Если найдете какие-либо недочеты или у вас есть советы, то с радостью готов их выслушать.

Функционал данной программы:
1. Считывание матриц с файлов (с указанием путей файлов)
2. Произведение матриц
3. Запись результирующей матрицы в файл (с указанием пути файла)
4. Маленькое меню

Код:
#include <iostream.h>
#include <conio.h>
#include "stdio.h"
#include <fstream.h>
#include <algorithm>
#include <ctime>
#pragma hdrstop
#pragma argsused
using namespace std;

int main(int argc, char* argv[])
{
   l1:
   //Input Matrix A
   int M, N;
   char s[40];
   cout<<"Enter filename for input matrix A: \n";
   cin>>s;
   ifstream ifs(s);
   ifs >> M >> N;
   int ** a = new int * [M];
   //Output Matrix A
   cout << "Matrix A:\n";
   for (int r = 0; r < M; r++, cout << endl)
      {
         a[r] = new int [N];
         for (int c = 0; c < N; c++)
            {
               ifs >> a[r][c];
               cout << a[r][c] << " ";
            }
      }
   cout << endl;
   //Input Matrix B
   int m, n;
   char f[40];
   cout<<"Enter filename for input matrix B: \n";
   cin>>f;
   ifstream ifs1(f);
   ifs1 >> m >> n;
   int ** a1 = new int * [m];
   //Output Matrix B
   cout<<"Matrix B:\n";
   for (int r1 = 0; r1 < m; r1++, cout << endl)
      {
         a1[r1] = new int [n];
         for (int c1 = 0; c1 < n; c1++)
            {
               ifs1 >> a1[r1][c1];
               cout << a1[r1][c1] << " ";
            }
      }
   cout << endl;

   if (N==m)
     {
        //Input Matrix C
        int i,j;
        int **c = new int *[M];
        for ( i = 0; i < M; i++)
           c[i] = new int [n];
        //Multiplication of Matrices
        for(i = 0; i < M; i++)
           for( j = 0; j < n; j++)
              {
                 c[i][j] = 0;
                 for(int k = 0; k < n; k++)
                 c[i][j] += (a[i][k] * a1[k][j]);
              }
        //Output Matrix C
        cout << "Matrix C: " << endl;
        for(i = 0; i < M; i++)
           {
              for (j = 0; j < n; j++)
                 cout << c[i][j] << " ";
                 cout << endl;
           }
        char t[40];
        cout<<"Enter filename for output matrix C: \n";
        cin>>t;
        ofstream k(t);
        for(i = 0; i < M; i++)
           {
              for (j = 0; j < n; j++)
                k << c[i][j] << " ";
                k << endl;
           }
        k.close();
        for (int i = 0; i < M; i++) delete[] c[i];
        delete[] c;
   }
   else cout<<"The number of columns of the matrix A is not equal to the number of rows of the matrix B\n";
   ifs.close();
   ifs1.close();
   for (int r = 0; r < M; r++) delete[] a[r];
   for (int r1 = 0; r1 < m; r1++) delete[] a1[r1];
   delete[] a;
   delete[] a1;
   {
        //Menu
        int g;
        cout<<"\n1-Repeat\n0-Exit\n";
        cin>>g;
        if (g!=0 && g!=1) {cout<<"\nEntered an incorrect value. The program automatically closes\n"; getch();}
        else
            {
             if (g==1) {goto l1;}
             else {goto l2;};
            }
        l2:
        exit(0);
     }
   getch();
}

Последний раз редактировалось Vitalyas; 26.04.2015 в 15:15.
Vitalyas вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
произведение матриц mary1010 C++ Builder 0 12.12.2012 00:57
Произведение матриц.. (Pascal) Groslerg Помощь студентам 0 13.11.2012 18:39
Произведение разреженных матриц MafoR Помощь студентам 1 24.04.2010 18:37
произведение матриц Lampard Помощь студентам 3 30.03.2009 19:00
Произведение двух матриц 010 Паскаль, Turbo Pascal, PascalABC.NET 5 03.06.2008 11:33