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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Ключевое слово static_cast http://www.cyberforum.ru/cpp-beginners/thread428568.html
Чё это такое?Зачем оно нужно?
C++ Добить-Отполировать Задачу на Строки В строке, состоящей из слов и знаков препинания(пробел . : , ! ? - ; ), найти слово максимальной длины, не содержащее заданную букву. код написал пока для строки, в которой есть только пробелы. Наверное можно проще, но вроде все работает. Необходимо добавить чтобы все окей было и со знаками препинания, подскажите идею там , или пример, пожалуйста) #include<iostream> ... http://www.cyberforum.ru/cpp-beginners/thread428567.html
C++ Определить, на каком из островов среднегодовая температура максимальна
Задача: Известна среднемесячная температура воздуха на следующих островах Карибского моря: Куба, Тринидад, Ямайка, Гаити. Определить, на каком из островов среднегодовая температура максимальна. Прошу помощи знающих людей.:cofee2:
C++ Как получить имя нажатой клавиши
Может кто занет, есть ли какая-нибудь функция которая возвращает по коду нажатой клавиши ее название? Например, была нажат ESC - мы получили код 27 на экран выводим ESC. Если функция такой нет как это можно реализовать? Не писать же названия в ручную для всех возможных кодов..
C++ Невозможность ввода значения второй переменной http://www.cyberforum.ru/cpp-beginners/thread428551.html
Недано начал изучать С++. Застопорился на такой проблеме - у меня есть две переменные и пользователь должен ввести их значения с клавиатуры. У меня получился такой код: #include <stdio.h> main() { int c=getchar(); int e=getchar(); }
C++ Для исходных матриц любой размерности найти их сумму и разность Для исходных матриц любой размерности найти их сумму и разность. Для реализации этих функций использовать форму с несколькими вкладками (объект TabControl). На первой вкладке при выполнении пользователь определяет размерность исходных матриц и вводит элементы матриц. На второй вкладке при выполнении выводятся исходные матрицы и результат суммы. На третьей вкладке при выполнении выводятся... подробнее

Показать сообщение отдельно
PG94
2 / 2 / 0
Регистрация: 15.01.2012
Сообщений: 181
15.01.2012, 13:37     Программа на матрицы с использованием функций
Имеется след. задача:
Даны 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;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru