Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
pyshkinC
0 / 0 / 0
Регистрация: 11.12.2011
Сообщений: 33
#1

2 матрицы читающиеся из файла и 5 пунктов операций - C++

11.12.2011, 12:40. Просмотров 284. Ответов 0
Метки нет (Все метки)

У меня возникла проблема с задачкой, работаю в Visual Studio 2010.
Программа читает из файла две матрицы 3х3, выводит их на экран и затем предлагает пользователю меню из 5 пунктов:
1. Вычисление сумм диагональных элементов матриц
2. Вычисление произведения матриц поэлементно
3. Поменять местами угловые элементы в матрицах ( в каждой отдельно )
4. Найти в матрицах количество элементов кратных 3
5. Выход
Выбор пункта осуществляется вводом соответствующей цифры.
Каждый пункт вызывает функцию, выполняющее действие , описанное в пункте, результат выводится на экран.

Не получается написать 3 и 4 пункт, хз как, да и много косяков в С++ я новичок, помогите.

2 матрицы в файле 3х3 (разделены пробелом)

1 2 3
4 5 6
7 8 9
9 8 7
6 5 4
3 2 1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include "stdafx.h"
#include <cstdio>
#include <stdio.h>
#include <conio.h>
#include <iostream>
using namespace std;
static int A [3][3], B [3][3], C [3][3];
 
 
int _tmain(int argc, _TCHAR* argv[])
{
        FILE * fp;
        int i, j, g;
        fp=fopen("C:\\temp\\new\\file.txt" , "r+");
        if(fp==NULL)return 0;
    for(i=0; i<3; i++)
        for(j=0; j<3; j++)
            fscanf (fp, "%d" , &A[i][j]);
        for(i=0; i<3; i++)
        for(j=0; j<3; j++)
            fscanf (fp, "%d" , &B[i][j]);
   fclose (fp);
   for(i=0; i<3; i++)
   {
       for(j=0; j<3; j++) printf("%3d", A[i][j]);
       putchar('\n');
 
   }
  for(i=0; i<3; i++)
   {
       for(j=0; j<3; j++) printf("%3d", B[i][j]);
       putchar('\n');
 
   }
    
diagmatrix()
{
 
int Sum_Dig_1 = 0, Sum_Dig_2 = 0;
int i, j;
 
    for(i = 0; i < Size; i++)
    {
        for(j = 0; j < Size; j++)
        {
            if(i == j)
            Sum_Dig_1 += A[i][j];
            if(i + j == Size - 1)
            Sum_Dig_2 += A[i][j];
 
        }
    }
 
    printf("Sum of first diogonal = %d \n" "Sum of second diogonal = %d", Sum_Dig_1, Sum_Dig_2);
}
derivative()
{
    for(int i = 0; i < 3; i++)
        for(int j = 0; j < 3; j++)
        {
            C[i][j] = 0;
            for(int g = 0; g < 3; g++)
                C[i][j] += (A[i][g] * B[g][j]);
        }
 
     for(i=0; i<3; i++)
   {
       for(j=0; j<3; j++) printf("%3d", C[i][j]);
       putchar('\n');
 
   }
}
mesta()
{
}
elem_krat()
{
}
 
 
  printf("1 - Vichislenie summ diagonaley elem matrix \n");
  printf("2 - Vichislenie proisvod matrix poelem \n");
  printf("3 - pomenyat mestami yglovie elem v matrix( v kazhdoy otdelno \n");
  printf("4 - Nayti v matrix's kol elem kratnih 3 \n");
  printf("5 - Exit \n");
  scanf("%d", &g);
  if(g==1)
      diagmatrix();
  else if(g==2)
      derivative();
  else if(g==3)
      mesta();
  else if(g==4)
      elem_krat();
  else return 0;
 
    _getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2011, 12:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос 2 матрицы читающиеся из файла и 5 пунктов операций (C++):

Слова читающиеся одинаково слева направо - C++
В строке S записано несколько слов через 1 или несколько пробелов. Определить количество слов и найти самое длинное слово. Найти все слова,...

Строка: Вывести через запятую слова, одинаково читающиеся справа налево и слева направо. - C++
Дана строка, состоящая из слов, разделенных пробелами (одним или несколькими), составить программу обработки данной строки, выводящую через...

Класс арифметических операций матрицы как на другую матрицу так и на число - C++
Описать класс,реализующий тип данных &quot;вещественная матрица&quot; и работу с ними.Класс должен реализовывать слудующие операции над матрицами: ...

Вычислить косинус матрицы в производном классе с помощью перегруженных операций из базового - C++
Писал тут задание с наследованием и перегрузкой и столкнулся с интересной проблемой, может кто из профи поможет. #include &lt;iostream&gt; ...

Запрограммировать меню из 3-х пунктов: создание папки, файла, ссылки - Bash
Нужна помощь с одним заданием. Буду премного благодарен. Итак, суть: Написать командный файл, который в качестве аргументов принимает...

Слова, одинаково читающиеся справа налево и слева направо - PascalABC.NET
Дана строка, состоящая из слов, разделенных пробелами (одним или несколькими). Составить программу обработки данной строки, выводящую через...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2011, 12:40
Привет! Вот еще темы с ответами:

Переписать в другой файл все строки, читающиеся одинаково с начала и с конца. - Pascal ABC
Дан текстовый файл. Переписать в другой файл все строки, читающиеся одинаково с начала и с конца. Задачка так то проста, но не могу...

Выполнение мат. операций считанных из файла - C#
Здравствуйте. Есть такой вопрос. Например, в текстовом файле есть строчка a=b+c; В программе есть переменные b и c. Есть ли готовые способы...

Доработка операций над данными текстового файла - C (СИ)
В общем, вот написал прогу: #include &lt;string.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; struct TMenu{ char Title ; char...

Чтение XML файла, и выполнение операций указанных в этом файле - C#
Приветствую всех! Хотел спросить, как написать код который будет выполнять операции из XML файла. Вот он: &lt;Commands&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru