Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 30.08.2010
Сообщений: 29
1

не могу понять, почему не вычисляет

23.11.2011, 21:28. Показов 710. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вот задача, почему не правильно находит я, подскажите?

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
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cstdlib>
#include <cstddef>
using namespace std;
//Прототип функции для ввода матрицы
double** inputm(int n, int m);
//Прототип функции для вывода матрицы
void outputm(double** a, int n, int m);
//Прототип функции для поиска номера первого из столбцов, содержащих хотя бы один нулевой элемент
void nule(double** a, int n, int m, int &z);
// Главная функция 
void main()
{
    setlocale(LC_ALL,"Russian");
    double** a;
    int n, m, z;
    cout<<"\n Введите кол-во строк матрицы A = \n";
    cin>>n;
    cout<<"\n Введите кол-во столбцов матрицы A = \n";
    cin>>m;
    // Ввод матрицы A
    cout<<"\n Введите элементы матрицы A\n";
    a=inputm(n,m);
    // Вывод матрицы А
    cout<<"\n *** Матрица А *** \n";
    outputm(a,n,m);
    //Номер первого из столбцов
    nule(a, n, m, z);
    cout<<"\n Номер первого столбца = "<<z;
    cout<<endl;
}
 
 
// Ввод матрицы
double** inputm(int n, int m)
{
    double** a;
    int i, j;
    a=new double* [n];
    if (a==NULL)    {
                        cout<<"\n Не хватило ОП \n";
                        exit(1);
                    }
    for(i=0;i<n;i++)
    {
        a[i]=new double [m];
        if(a[i]==NULL)  {
                            cout<<"\n Не хватило ОП \n";
                            exit(1);
                        }
    }
    for(i=0;i<n;i++)
    {
        cout<<"\n Введите "<<i<<" строку \n";
        for(j=0;j<m;j++)
            cin>>a[i][j];
    }
    return a;
}
 
 
// Вывод матрицы
void outputm(double** a, int n, int m)
{
    int i, j;
    for(i=0;i<n;i++)
    {
        cout<<endl;
        for(j=0;j<m;j++)
            cout<<setw(10)<<a[i][j];
    }
}
//Определение функции для поиска номера первого из столбцов, содержащих хотя бы один нулевой элемент
void nule(double** a, int n, int m, int &z)
{
int i, j;
for(i=0;i<n;i++)
    {for(j=0;j<m;j++)
     if (a[i][j]=0) 
                    {z=j;
                     break;
                    }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2011, 21:28
Ответы с готовыми решениями:

Не могу понять почему не вычисляет
Ребят, помогите. Запускаю программу, все значения совпадают кроме -1, там напротив должен 0 стоят,...

Не могу понять почему не могу считать символьный ряд через cin.getline
Не могу понять почему не могу считать символьный ряд через cin.getline.Помогите позязя. #define ...

Не могу понять, почему программа работает неправильно( Знаю, что где-то ошибки, но не могу найти
{Ввести последовательность натуральных чисел Aj j=1...n (n&lt;=1000). Упорядочить последовательность...

Программа вычисляет длину, площадь, диаметр окружности через радиус. Не могу понять, что с ней не так
#include&lt;iostream&gt; #include&lt;conio.h&gt; #include &lt;locale.h&gt; using namespace std; int main() ...

3
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
23.11.2011, 21:38 2
Цитата Сообщение от Шмаков Дмитрий Посмотреть сообщение
C++
1
if (a[i][j]=0)
Строчка 81. Думаю предполагалось сравнение (==). Возможно ошибка из-за этого.
0
0 / 0 / 1
Регистрация: 30.08.2010
Сообщений: 29
23.11.2011, 23: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
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
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cstdlib>
#include <cstddef>
using namespace std;
//Прототип функции для ввода матрицы
double** inputm(int n, int m);
//Прототип функции для вывода матрицы
void outputm(double** a, int n, int m);
//Прототип функции для поиска номера первого из столбцов, содержащих хотя бы один нулевой элемент
void nule(double** a, int n, int m, int &z);
// Главная функция 
void main()
{
        setlocale(LC_ALL,"Russian");
        double** a;
        int n, m, z;
        cout<<"\n Введите кол-во строк матрицы A = \n";
        cin>>n;
        cout<<"\n Введите кол-во столбцов матрицы A = \n";
        cin>>m;
        // Ввод матрицы A
        cout<<"\n Введите элементы матрицы A\n";
        a=inputm(n,m);
        // Вывод матрицы А
        cout<<"\n *** Матрица А *** \n";
        outputm(a,n,m);
        //Номер первого из столбцов
        nule(a, n, m, z);
        cout<<"\n Номер первого столбца = "<<z;
        cout<<endl;
}
 
 
// Ввод матрицы
double** inputm(int n, int m)
{
        double** a;
        int i, j;
        a=new double* [n];
        if (a==NULL)    {
                                                cout<<"\n Не хватило ОП \n";
                                                exit(1);
                                        }
        for(i=0;i<n;i++)
        {
                a[i]=new double [m];
                if(a[i]==NULL)  {
                                                        cout<<"\n Не хватило ОП \n";
                                                        exit(1);
                                                }
        }
        for(i=0;i<n;i++)
        {
                cout<<"\n Введите "<<i<<" строку \n";
                for(j=0;j<m;j++)
                        cin>>a[i][j];
        }
        return a;
}
 
 
// Вывод матрицы
void outputm(double** a, int n, int m)
{
        int i, j;
        for(i=0;i<n;i++)
        {
                cout<<endl;
                for(j=0;j<m;j++)
                        cout<<setw(10)<<a[i][j];
        }
}
//Определение функции для поиска номера первого из столбцов, содержащих хотя бы один нулевой элемент
void nule(double** a, int n, int m, int &z)
{
int i, j;
for(i=0;i<n;i++)
        {for(j=0;j<m;j++)
         if (a[i][j]==0) 
                                        {z=j;
                                         break;
                                        }
        }
}
0
26 / 26 / 4
Регистрация: 23.04.2011
Сообщений: 130
23.11.2011, 23:55 4
Может break и для второго for написать???
0
23.11.2011, 23:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.11.2011, 23:55
Помогаю со студенческими работами здесь

Не могу понять почему
Всем привки, короче такая тема: я создал регистрацию и авторизацию на сайте, она работает, но...

Не могу понять почему
Есть кода программы(код взят разобраться): #include&lt;iostream&gt; using namespace std; class coord {...

Не могу понять почему...
#include &quot;stdafx.h&quot; void main() { funct(); _getch(); } void funct() {

Не могу понять почему
код вроде правильный а страничка не открываеться &lt;html&gt; &lt;head&gt; &lt;title&gt;Название вродебы&lt;/title&gt;...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru