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

Треугольная матрица (Файлы) - C++

Восстановить пароль Регистрация
 
OffSide
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 111
24.12.2010, 00:30     Треугольная матрица (Файлы) #1
BorlandC

Дан файл действительных чисел; первое число определяет размер квадратной матрицы(дробная часть его равно нулю), остальные числа являются элементами этой матрицы. Проверить, является ли матрица треугольной наддиагональной, т.е такой, у которой элементы, расположенные ниже главной диагонали, равны нулю.

Буду премного благодарен!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OffSide
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 111
28.12.2010, 15:34  [ТС]     Треугольная матрица (Файлы) #2
ребят помогите. скоро экзамен
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
28.12.2010, 18:10     Треугольная матрица (Файлы) #3
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
#include<iomanip>
#include <conio.h>
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;
 
int main()
{
    char p[50];
    int n; float x;
    cout<<"enter file path\n\n";
    cin>>p;
    ifstream ifs(p);
    if(!ifs){cerr<<"file not found";getch();return 1;}
    ifs>>n;
    float **mat=new float*[n];
    for(int i=0;i<n;i++) mat[i]=new float[n];
    for(int i=0;i<n;i++){
            for(int j=0;j<n;j++){
                ifs>>x;
                mat[i][j]=x;
            }
        }
    cout<<"\nSozdana matrica\n\n";
   for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            cout<<setw(4)<<mat[i][j]<<"  ";
        }
        cout<<"\n\n";
    }
    for(int i=0;i<n;i++){
        if(search_n((*(mat+i)+n-i), *(mat+i)+n, i, 0)!=*(mat+i)+n-i){
            cout<<"\n\n--No--\n\n";
            getch(); 
            return 0;
        }
    }
    cout<<"\n\n--Yes--\n\n";
    getch();
}
OffSide
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 111
28.12.2010, 18:51  [ТС]     Треугольная матрица (Файлы) #4
за сиауты нас карают, ибо в борланде пишем)) попробую переделать, хотя вряд ли получиться , и можно комментарий небольшой к кажд. строчке. Спасибо!
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
17.01.2011, 16:15     Треугольная матрица (Файлы) #5
строка поиска
search_n((*(mat+i)+n-i), *(mat+i)+n, i, 0)!=*(mat+i)+n-i)
если число нулей в конце i- й строки меньше чем i, то не является, функция:
http://www.cplusplus.com/reference/algorithm/search_n/
OffSide
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 111
18.01.2011, 20:05  [ТС]     Треугольная матрица (Файлы) #6
блинн, завтра сдавать, помогите переделать код под борланд и коменты плизз)

Добавлено через 2 часа 47 минут
ребята, ну помогите вместо cout и cin сделать printf и scanf
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2011, 14:04     Треугольная матрица (Файлы)
Еще ссылки по теме:

Дана матрица целых чисел, из n строк и n столбцов (n < = 100).Определить является ли матрица нулевой (состоит из одних нулей) C++
C++ дана квадратичная матрица z[n][n]. составить программу, которая если матрица симметричная(транспонированная матрица равна исходной), сделает ее не сим

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

Или воспользуйтесь поиском по форуму:
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
19.01.2011, 14:04     Треугольная матрица (Файлы) #7
Цитата Сообщение от OffSide Посмотреть сообщение
ребята, ну помогите вместо cout и cin сделать printf и scanf
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
#include<iostream>
#include<conio.h>
#include<fstream>
#include<algorithm>
using namespace std;
 
int main(){
        char p[50];
        int n;
        printf("enter file path\n");
        gets(p);
        ifstream ifs(p);
        if(!ifs){printf("file not found"); getch(); return 1;}
        ifs>>n;
        float **mat=new float*[n];
        for(int i=0;i<n;i++) mat[i]=new float[n];
        for(int i=0;i<n;i++){
                        for(int j=0;j<n;j++){
                                ifs>>mat[i][j];
                        }
                }
        printf("\nSozdana matrica\n\n");
   for(int i=0;i<n;i++){
                for(int j=0;j<n;j++){
                        printf("%4.2f  ", mat[i][j]);
                }
                printf("\n\n");
        }
        for(int i=0;i<n;i++){
                if(search_n((*(mat+i)+n-i), *(mat+i)+n, i, 0)!=*(mat+i)+n-i){
                        printf("\n\n--No--\n\n");
                        getch();
                        return 0;
                }
        }
        printf("\n\n--Yes--\n\n");
        getch();
}
Yandex
Объявления
19.01.2011, 14:04     Треугольная матрица (Файлы)
Ответ Создать тему
Опции темы

Текущее время: 21:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru