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

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

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

Помогите найти ошибку в программе! (С++) - C++

24.04.2012, 18:40. Просмотров 289. Ответов 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
42
#include<iostream>
using namespace std;
#include "Rus.h"
int fuction (int,int,int);
int main (void)
{
    int **a,m,n,i,j,num;
    cout<<Rus("Введите количество строк")<<"\t";
    cin>>m;
    cout<<Rus("Введите количество столбцов")<<"\t";
    cin>>n;
    a=new int*[m];
    for (i=0;i<m;i++)
        a[i]=new int [n];
    for (i=0;i<m;i++)
    {
        for (j=0;j<n;j++)
        {
            cout<<Rus("Введите элемент из ")<<i+1;
            cout<<Rus("-й строки и ")<<j+1;
            cout<<Rus("-го столбца")<<("\t");
            cin>>a[i][j];
        }
    }
    num=fuction(**a,m,n);
        cout<<num;
        delete[]a;
            system("pause");
    return 0;
}
int fuction(int **a,int m,int n)
{
    int sum=0,min,num,i,j;
    for(i=0; i<m; ++i)
{    
    for(j=0; j<n; ++j)
      sum+=a[i][j];}
    if(sum<min)
    {min=sum;
    num=i;}
return num;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2012, 18:40     Помогите найти ошибку в программе! (С++)
Посмотрите здесь:

Помогите найти ошибку в программе - C++
вводятся фамилия имя отчество, определить самое редкое имя. Что не так, почему программа не работает? Помогите решить. #include...

помогите найти ошибку в программе - C++
#include &lt;cstdlib&gt; #include &quot;CMatrix.h&quot; #include &lt;conio.h&gt; //Руссификация ostream&amp; operator&lt;&lt;(ostream &amp;stream,char* s){ ...

Помогите найти ошибку в программе - C++
Задание: найти по модулю первый и второй максимальний елемент динамичного массива! Код: #include &lt;math.h&gt; #include...

Помогите найти ошибку в программе - C++
подскажите почему не работает? #include &lt;stdio.h&gt; #include &lt;conio.h&gt; void FormMassive(int A,int B,int IA,int IB,int i,int j) { ...

Помогите найти ошибку в программе - C++
Помогите мне найти ошибку) Реализовать необходимо на С++ #include &lt;iostream&gt; #include &lt;stdlib.h&gt; using namespace std; const...

Структуры. Помогите найти ошибку в программе - C++
3. Сведения об экзамене содержат следующие данные: дисциплину (программирование, социология, иностранный язык, физика), дату сдачи экзамена...

Помогите найти ошибку в моей программе - C++
#include&lt;iostream.h&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; struct uravn {double a, b, e; void define (double a1=0.0, double b1=0.0,...

Помогите найти ошибку в программе. Вычисление формулы. - C++
Написал программу, которая считает формулу, но она не работает. Компилятор ошибок не выдает, но когда вводишь х выдает что-то вроде...

Помогите найти ошибку в программе сортировки массива - C++
Помогите с++ срочно! не сортирует массив! // ConsoleApplication18.cpp: определяет точку входа для консольного приложения. // ...

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
extenup
54 / 54 / 3
Регистрация: 12.11.2011
Сообщений: 109
24.04.2012, 19:20     Помогите найти ошибку в программе! (С++) #2
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
#include<iostream>
using namespace std;
 
int fuction(int **a,int m,int n);
int main (void)
{
    setlocale(LC_ALL, "Russian");
 
    int **a, m, n, i, j, num;
    cout << "Введите количество строк" << "\t";
    cin  >> m;
    cout << "Введите количество столбцов" <<"\t";
    cin  >> n;
    
    a = new int*[m];
    
    for(i = 0; i < m; i++) a[i] = new int [n];
    for(i = 0; i < m; i++)
    {
        for(j = 0; j < n; j++)
        {
            cout << "Введите элемент из " << i + 1;
            cout << "-й строки и " << j + 1;
            cout << "-го столбца"  << ("\t");
            cin  >> a[i][j];
        }
    }
    
    num = fuction(a, m, n);
    cout << num;
    delete[]a;
    
    cout << endl << endl;
    system("pause");
    return 0;
    }
 
int fuction(int **a, int m, int n)
{
    int sum = 0;
    int min = m;
    int num = n;
 
    sum = a[0][0];// по умолчанию 1-ая строка
    num = 1;      // имеет минимальную сумму элементов 
    
    for(int i = 0; i < m; i++)
    {
        int temp_sum = 0;
        for(int j = 0; j < n; j++)
            temp_sum += a[i][j];
 
        if(temp_sum < sum) 
        {
            sum = temp_sum;
            num = i + 1;
        }
    }
 
    return num;
}
Nauna
0 / 0 / 0
Регистрация: 24.04.2012
Сообщений: 3
09.05.2012, 19:11  [ТС]     Помогите найти ошибку в программе! (С++) #3
а если пользователь ввел одинаковые строки, среди них нет минимальной... как задать это условие?
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
09.05.2012, 19:33     Помогите найти ошибку в программе! (С++) #4
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
#include<iostream>
using namespace std;
#include "Rus.h"
int fuction (int**,int,int);
int main (void)
{
    int **a,m,n,i,j,num;
    cout<<Rus("Введите количество строк")<<"\t";
    cin>>m;
    cout<<Rus("Введите количество столбцов")<<"\t";
    cin>>n;
    a=new int*[m];
    for (i=0;i<m;i++)
        a[i]=new int [n];
    for (i=0;i<m;i++)
    {
        for (j=0;j<n;j++)
        {
            cout<<Rus("Введите элемент из ")<<i+1;
            cout<<Rus("-й строки и ")<<j+1;
            cout<<Rus("-го столбца")<<("\t");
            cin>>a[i][j];
        }
    }
    num=fuction(a,m,n);
    if(num==-1)
        cout<<Rus("Нет такой строки")<<endl;
    else
        cout<<num;
        delete[]a;
            system("pause");
    return 0;
}
int fuction(int **a,int m,int n)
{
    int min=0,num=0,i,j,tmp,fl=-1;
    for(i=0; i<n; i++)
        min+=a[0][i];
    for(i=0; i<m; ++i)
    {
        tmp=0;
        for(j=0; j<n; ++j)
            tmp+=a[i][j];
        if(tmp==min)
            fl++;
        if(tmp<min)
        {min=tmp;
        num=i; fl=0;}
    }
    if(fl>0)
        return -1;
    return num;
}
Yandex
Объявления
09.05.2012, 19:33     Помогите найти ошибку в программе! (С++)
Ответ Создать тему
Опции темы

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