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

функция - C++

Восстановить пароль Регистрация
 
PtahaOne
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 33
17.01.2012, 01:11     функция #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
#include <iostream>
#include <limits>
#include <iomanip>
#include <fstream>
 
using namespace std;
void min_sum(int **arr, int size)
{
    int rw,cl,i;
    int min = numeric_limits<int>::max();
    
    for( i = 0; i < size - 1; ++i)
    {
        int sum = 0;
        for(rw = 0, cl = i; cl >= 0; ++rw, --cl)
            sum +=abs(arr[rw][cl]);
        if(sum < min)
            min = sum;
        sum = 0;
        for( rw = size - i - 1, cl = size - 1; rw < size; ++rw, --cl)
            sum += abs(arr[rw][cl]);
        if(sum < min)
            min = sum;
    }
    cout << min << endl;
}
void sum(int **arr,int n)
{
            for(int j=0;j<n;j++) 
    {      
           bool bol=true;   
    for(int i=0;i<n;i++)
    if (arr[i][j]<0) bol=false;
    
    if(bol==true)
    {
                 int sum=0;
    for(int m=0;m<n;m++)
    sum+=arr[m][j];
    cout<<endl;cout<<endl;
    cout<<"Summa "<<j<<" stolbika = "<<sum<<endl;
}
}
}
int main()
{
    const int n =5;
    int size=n;
    
    
    int **arr = new int *[n]; 
    ifstream fin("D:\\test.txt", ifstream::in);
    if(!fin)
    {
        cout << " not found" << endl;
        return 1;
    }
    cout << "Matrix:" << endl;
    
    for(int i=0;i<n;i++)
    {
        arr[i] = new int[size];
        for(int j=0;j<n;j++)
        {
            fin >> arr[size][size];
            cout << setw(3) << arr[size][size];
        }
        cout << endl;
    }
 
    sum(arr,n);
    min_sum(arr,size);
    return 0;}
Почему программа тупо выдает ошибку и закрывается?? вроде же все правильно...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2012, 01:11     функция
Посмотрите здесь:

Функция C++
Функция a,b,c C++
C++ Функция y=f(x)
функция C++
C++ Функция
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
romedal
 Аватар для romedal
53 / 53 / 1
Регистрация: 18.03.2010
Сообщений: 345
Записей в блоге: 1
17.01.2012, 01:24     функция #2
Цитата Сообщение от PtahaOne Посмотреть сообщение
Почему программа тупо выдает ошибку и закрывается??
Какую ошибку-то?
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
17.01.2012, 01:26     функция #3
в строках 65 и 66 вместо
C++
1
fin >> arr[size][size];
должно быть
C++
1
fin >> arr[i][j];
PtahaOne
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 33
17.01.2012, 01:32  [ТС]     функция #4
не помогло, запускается консоль, появляется слово Matrix и все... прекращена работа...
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
17.01.2012, 01:40     функция #5
Цитата Сообщение от PtahaOne Посмотреть сообщение
не помогло, запускается консоль, появляется слово Matrix и все... прекращена работа...
Ну и? Работа прекращена, программа закрылась. Что вы еще хотите? Чтобы она не закрывалась после вывода результата? Так сделайте так, чтобы она сразу не закрывалась.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
17.01.2012, 01:41     функция #6
Цитата Сообщение от PtahaOne Посмотреть сообщение
не помогло, запускается консоль, появляется слово Matrix и все... прекращена работа...
помогло, помогло
почитай
PtahaOne
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 33
17.01.2012, 01:43  [ТС]     функция #7
Да нет вы меня не поняли, выводится 1 слово...
Миниатюры
функция  
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
17.01.2012, 01:48     функция #8
мде? значит ваш нынешний код отличается от того что вы дали вначале, и не только этим:
Цитата Сообщение от retmas Посмотреть сообщение
в строках 65 и 66 вместо
C++
1
fin >> arr[size][size];
должно быть
C++
1
fin >> arr[i][j];
потому что у меня матрицу выводит, а вот что и правильно ли прога с этой матрицей делает не разбирал
PtahaOne
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 33
17.01.2012, 01:52  [ТС]     функция #9
Цитата Сообщение от retmas Посмотреть сообщение
мде? значит ваш нынешний код отличается от того что вы дали вначале, и не только этим:

потому что у меня матрицу выводит, а вот что и правильно ли прога с этой матрицей делает не разбирал
я исправил на arr[i][j] все равно так же...

Добавлено через 1 минуту
Вот само задание, ошибка все та же
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
17.01.2012, 01:54     функция #10
не верю (с) выкладывайте снова сюда весь код

Добавлено через 1 минуту
Цитата Сообщение от PtahaOne Посмотреть сообщение
Вот само задание
где оно?
PtahaOne
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 33
17.01.2012, 01:56  [ТС]     функция #11
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
#include <iostream>
#include <limits>
#include <iomanip>
#include <fstream>
 
using namespace std;
void min_sum(int **arr, int size)
{
    int rw,cl,i;
    int min = numeric_limits<int>::max();
    
    for( i = 0; i < size - 1; ++i)
    {
        int sum = 0;
        for(rw = 0, cl = i; cl >= 0; ++rw, --cl)
            sum +=abs(arr[rw][cl]);
        if(sum < min)
            min = sum;
        sum = 0;
        for( rw = size - i - 1, cl = size - 1; rw < size; ++rw, --cl)
            sum += abs(arr[rw][cl]);
        if(sum < min)
            min = sum;
    }
    cout << min << endl;
}
void sum(int **arr,int n)
{
            for(int j=0;j<n;j++) 
    {      
           bool bol=true;   
    for(int i=0;i<n;i++)
    if (arr[i][j]<0) bol=false;
    
    if(bol==true)
    {
                 int sum=0;
    for(int m=0;m<n;m++)
    sum+=arr[m][j];
    cout<<endl;cout<<endl;
    cout<<"Summa "<<j<<" stolbika = "<<sum<<endl;
}
}
}
int main()
{
    const int n =5;
    int size=n;
    
    
    int **arr = new int *[n]; 
    ifstream fin("D:\\test.txt", ifstream::in);
    if(!fin)
    {
        cout << " not found" << endl;
        return 1;
    }
    cout << "Matrix:" << endl;
    
    for(int i=0;i<n;i++)
    {
        arr[i] = new int[size];
        for(int j=0;j<n;j++)
        {
            fin >> arr[i][j];
            cout << setw(3) << arr[size][size];
        }
        cout << endl;
    }
 
    sum(arr,n);
    min_sum(arr,size);
    return 0;}
не могу заного залить фотку) Найти сумму элементов столбцов матрицы, не содержащих отрицательных элементов
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
17.01.2012, 01:58     функция #12
ок, похоже не дошло)
еще раз пишу и выделяю
Цитата Сообщение от retmas Посмотреть сообщение
в строках 65 и 66 вместо
C++
1
arr[size][size];
должно быть
C++
1
arr[i][j];
там в 2х местах править надо, а не в одном
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2012, 02:00     функция
Еще ссылки по теме:

Функция C=(x^a + y^(TM))/((x+y)^a) C++
Функция C++
C++ z функция

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

Или воспользуйтесь поиском по форуму:
PtahaOne
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 33
17.01.2012, 02:00  [ТС]     функция #13
Информатика убивает....
Yandex
Объявления
17.01.2012, 02:00     функция
Ответ Создать тему
Опции темы

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