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

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

Войти
Регистрация
Восстановить пароль
 
PG94
2 / 2 / 0
Регистрация: 15.01.2012
Сообщений: 181
#1

Программа на матрицы с использованием функций - C++

15.01.2012, 13:37. Просмотров 460. Ответов 2
Метки нет (Все метки)

Имеется след. задача:
Даны 2 матрицы(a размером N*M и b размером K*M). Нужно распечатать те, у которых макс элемент среди всех строк, которые упорядочены(или по возр или по убыв), содержит нечётное кол-во цифр.
В программе описать:
-функции проверки вектора на упорядоченность
-функцию, которая для числа n возвращает кол-во цифр
-функцию, которая находит макс элемент матрицы среди упорядоченных строк
(матрица статическая)
Пробовал написать но VC выдаёт ошибку при запуске(см. ниже)
Буду очень благодарен любой помощи по написанию программы и устранению ошибок.
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
#include<iostream>
using namespace std;
const int N=3,K=2;
const int M=5;
//проверка вектора на упоряд по возрастанию
bool OnInc(int *a, int n);
//проверка вектора на упоряд по убыванию
bool OnDec(int *a, int n);
//проверка вектора на упорядоченность(любую)
bool OrdCheck(int n,int a[][M]);
//подсчёт кол-ва цифр в числе и проверка полученного значения на нечётность
bool OpDig(int n);
//поиск макс элемента в матрице
int MaxInMatrix(int n,int a[][M]);
int  main()
{   int a[N][M],b[K][M],i,j,d;
    bool
    printf("Enter a:\n");
    for(i=0;i<N;i++)
        for(j=0;j<M;j++)
            scanf("%d",&a[i][j]);
    for(i=0;i<K;i++)
        for(j=0;j<M;j++)
            scanf("%d",&b[i][j]);
    if(OrdCheck(N,a)) 
    {   if(OpDig(MaxInMatrix(N,a)))
        {   for(i=0;i<N;i++)
                for(j=0;j<M;j++)
                    printf("%5d",a[i][j]);//error C2064: term does not evaluate to a function taking 2 arguments
        }
    }
    else printf("no sortin strings in matrix 'a'\n");//error C2064: term does not evaluate to a function taking 1 arguments
    if(OrdCheck(K,b)) 
    {   if(OpDig(MaxInMatrix(K,a)))
        {   for(i=0;i<K;i++)
                for(j=0;j<M;j++)
                    printf("%5d",b[i][j]);//error C2064: term does not evaluate to a function taking 2 arguments
        }
    }
    else printf("no sortin strings in matrix 'b'\n");//error C2064: term does not evaluate to a function taking 1 arguments
    return 0;
}
bool OnInc(int *a, int n)
{   int i;
    for(i=0;i<n-1;i++)
    if(a[i]>a[i+1])return false;
    return true;
}
bool OnDec(int *a, int n)
{   int i;
    for(i=0;i<n-1;i++)
        if(a[i+1]>a[i])return false;
    return true;
}
bool OrdCheck(int n,int a[][M])
{   int i;
    for(i=0;i<n;i++)
        if(OnInc(a[i],M)||OnDec(a[i],M)) return true;
    return false;
}   
bool OpDig(int n)   
{   int count;
    while(n>0)
    {   n/=10;
        count++;
    }
    if(count%2!=0)return true;
    else return false;
}   
int MaxInMatrix(int n,int a[][M])
{   int i,max,Rmax;
    for(i=0;i<n;i++)
    {   if(OnInc(a[i],M))max=a[i][M-1];
        else if(OnDec(a[i],M))max=a[i][0];
        if(Rmax<max)Rmax=max;
    }
    return Rmax;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2012, 13:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа на матрицы с использованием функций (C++):

Реализовать задание с использованием функций (ввод матрицы, вывод матрицы, вычисление суммы) - C++
Реализовать задание с использованием функций (ввод матрицы, вывод матрицы, вычисление суммы) и цикла for для вычисления суммы. Изменение...

Программа с использованием процедур и функций[C++ 4.5] - C++
Прошу помощи в написании программы: Задание: Составьте программы на языках C + +и Pascal с использованием процедур и функций.

Умножение матрицы на вектор с использованием функций - C++
Помогите разобраться с функциями, что-то читая справочники не особо понятно... Собственно никакой код) Как передавать значения массивов...

программа с директивами процессора или с использованием функций printf и scanf - C++
1) Написать программу вычисления a+b с использованием #define. 2) Написать программу с использованием функций printf и scanf: ввести два...

Программа с использованием функций и ошибка [BCC32 Error] File1.c(2): E2293 ) expected - C++
Нужно написать программу с использованием функцый, вроде все правильно написал но выдает ошибку &quot; File1.c(2): E2293 ) expected&quot; подскажите...

Программа с использованием дружественных функций и классов. Создайте программу с классом student - C++
19..Разработайте алгоритм и создайте программу с использованием дружественных функций и классов. ЯЗЫК С++ Создайте программу с классом...

2
nxnx
Формучанин
362 / 293 / 16
Регистрация: 02.11.2010
Сообщений: 1,234
15.01.2012, 16:34 #2
17 строка:
C++
1
        bool
вероятно пропущенна переменная или 17 строка лишняя.
1
zss
Модератор
Эксперт С++
6404 / 5970 / 1945
Регистрация: 18.12.2011
Сообщений: 15,395
Завершенные тесты: 1
15.01.2012, 17:16 #3
62 строка, неинициализирована count
надо count=0;
71 строка неинициализированы Rmax и max, надо добавить
Rmax=max=a[0][0];
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.01.2012, 17:16
Привет! Вот еще темы с ответами:

Код с использованием функций - C++
Помогите, плиз, переделать програмку С ИСПОЛЬЗОВАНИЕМ ФУНКЦИЙ. #include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; ...

Переделать программу с использованием функций - C++
Помогите пожалуйста переделать в функции, #include &lt;iostream&gt; using namespace std; int main() { setlocale( LC_ALL,...

организация программ с использованием функций - C++
Заданы стороны двух треугольников ABC и DEF. Переменной V присвоить значение TRUE , если площадь треугольника ABC меньше или равна...

Переписать программу с использованием функций - C++
Добрый день. Помогите пожалуйста мою программу переписать так, чтобы она была с функциями. :( Она маленькая и простая. :) //...


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

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

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