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

Функции - C++

Восстановить пароль Регистрация
 
Zoltan
0 / 0 / 0
Регистрация: 20.02.2012
Сообщений: 5
20.02.2012, 22:56     Функции #1
Помогите пожалуйста, на завтра срочно надо=)))

Даны матрицы А(3,5), В(5,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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include "stdafx.h"
#include <stdio.h>
#include<conio.h>
#include<math.h>
 
//Даны матрицы А(6,3) и В(4,5).Найти наибольший и наименьший элементы каждой. Оформить в виде отдельной функции 
 
int MaxMin (int size1, int size2, int **Mass, int *min)
 
{
 
int max = Mass[0][0]; 
*min = Mass[0][0];
int i, j;
for (i= 0; i<size1; i++)
 
        for(j=0; j<size2; j++)
        {
        if(max < Mass[i][j]) {max=Mass[i][j];};
        if(*min > Mass[i][j]) {*min=Mass[i][j];};
        }
 
return (max);
}
 
void Vodim (int size1, int size2, int**Mass)
{
int i,j;  
for(i=0; i < size1; i++)
for(j=0; j<size2; j++)
{printf("Element [%d][%d]  ",i,j);
scanf("  %d", &Mass[i][j] );}
}
 
void Vivodim(int size1, int size2, int **Mass)
{
int i, j;
for(i=0; i<size1; i++)
{
    for(j=0;j<size2;j++)
    printf("    %d", Mass[i][j]);
    printf("\n");}
}
void main()
{
int const an=3, const am=5, const bn=5, const bm=2;
int Amax,Amin,Bmax,Bmin;
int i,j;
printf("Laboratornaya rabota 11\n Vipolnil st. gr. BSitS 11-1 Balyas I.S.\n\n"); 
 
int**A;
A = new int *[an];
for(i=0; i<an;i++)
A[i]=new int[am];
 
int**B;
B = new int *[bn];
for(i=0; i<bn;i++)
B[i]=new int[bm];
 
printf("<<<Vedite elementi massiva A>>>\n");
Vodim(an, am, A);
printf("\n<<<Vedite elementi massiva B>>>\n");
Vodim(bn, bm, B);
printf("\n\n<<<Ishodniy mass A>>>\n");
Vivodim (an,am, A);
printf("\n\n<<<Ishodniy mass B>>>\n");
Vivodim (bn,bm, B);
 
Amax=MaxMin(an, am, A, &Amin);
Bmax=MaxMin(bn, bm, B, &Bmin);
printf("Massiv A:\nMax=%d    Min=%d\nMassiv B:\nMax=%d     Min=%d",Amax,Amin,Bmax,Bmin);
delete A, B;
getch();
return;
}
 Комментарий модератора 
Используйте теги форматирования кода!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2012, 22:56     Функции
Посмотрите здесь:

C++ Как из обыной функции вызвать функции член класса?
C++ Заданы три функции. Определить, являются ли эти функции четными или нечетными
C++ Получить указатель из функции и использовать его в другой функции
C++ Определить конструкторы, функции-члены установки времени, функции получения часа, минуты и секунд
шаблон функции. Задачей функции является округление вышеуказанного вещественного числа с заданной точностью C++
Возврат 2 значений из функции с одним вызовом этой же функции C++
Перевести с Pascal вычисление функции на заданном промежутке и построить график этой функции C++
C++ Определить типы и функции; в функции main() реализовать демонстрацию работы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
21.02.2012, 01:19     Функции #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
62
63
64
65
66
67
68
69
70
71
72
73
74
///////////////////////////////////////
#include <stdlib.h>
#include <stdio.h>
#include <ctime>
#include <conio.h>
 
#define L 2
#define M 3
#define N 5
 
void Set(int arr[], int f_ind, int s_ind);
 
void Pos_neg(int arr[], int f_ind, int s_ind);
 
int main()
{
    srand (time(NULL));
 
    int farr[M][N];
    int sarr[N][L];
 
    printf("First matrix\n\n");
 
    Set(*farr, M, N); //    
 
    Pos_neg(*farr, M, N);      // - //
 
    printf("\n\nSecond matrix\n\n");
 
    Set(*sarr, N, L);        // - //
 
    Pos_neg(*sarr, N, L);       // - //
 
    printf("\n");
 
    _getch();} 
 
/////////////////////////////////////////////////////
//     ФУНКЦИЯ ИНИЦИАЛИЗАЦИИ   МАТРИЦ
///////////////////////////////////////////////////////
 
void Set(int arr[], int f_ind, int s_ind){
 
    for(int i = 0; i < f_ind; i++ ){
 
        for(int j = 0; j < s_ind; j++ ){
 
        arr[i * s_ind + j] = rand() % 100 - 35;   // ЗАПОЛНЯЕМ СЛУЧАЙНЫМИ ЧИСЛАМИ 
 
        printf(" %d ",arr[i * s_ind + j] );   //   ВЫВОД
        }}}
 
/////////////////////////////////////////////////////
//     ФУНКЦИЯ ОПРЕД. И ВЫВОДА КОЛИЧЕСТВА  ПОЛОЖ И ОТРИЦ  ЗНАЧЕНИЙ
///////////////////////////////////////////////////////
 
void Pos_neg(int arr[], int f_ind, int s_ind){
 
    int posit = 0;
 
    int neg = 0;
 
    for(int i = 0; i < f_ind; i++ ){
 
        for(int j = 0; j < s_ind; j++ ){
 
        if(arr[i * s_ind + j] > 0)  {posit ++;} //     ПОЛОЖ
 
        if(arr[i * s_ind + j] < 0)  { neg ++;} //      ОТРИЦ
    }}
 printf("\nPositive elements %d ",posit );//   ВЫВОД КОЛИЧ ПОЛОЖ
 
 printf("\nNegative elements %d ",neg );//   ВЫВОД КОЛИЧ ОТРИЦ
}
Yandex
Объявления
21.02.2012, 01:19     Функции
Ответ Создать тему
Опции темы

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