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

преобразовать задание ввиде функции - C++

Восстановить пароль Регистрация
 
Rikimaru
7 / 7 / 0
Регистрация: 25.09.2010
Сообщений: 31
20.10.2010, 16:02     преобразовать задание ввиде функции #1
Все необходимые данные для
функций должны передаваться им в качестве параметров. Использование гло-
бальных переменных в функциях не допускается.
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
#include "stdafx.h"
#include <stdlib.h>
#include <conio.h>
#include <math.h>
 
int main()
{
    const int n=5;
    int i, j;
    int b[n][n];
//заполняем матрицу случайным образом
    srand(13);
    for (i=0; i<n; i++)
    for (j=0; j<n; j++)
    {
        b[i][j]=(double)rand()/(RAND_MAX+1)*(5-(-5))+(-5);
    }
//выводим матрицу на экран
    for (i=0; i<n; i++)
    {
        for (j=0; j<n; j++)
        printf ("%4d", b[i][j]);
        printf("\n");
    }
//проверяем каждый столбец на наличие отрицательных чисел
    int sum=0;
    bool k;
    for(j=0; j<n; j++)
    {
        k = true; 
        for(i=0; i<n; i++)
        {
            if(b[i][j]<0) k=false;
        }
//если в столбце нет отрицательных чисел, то вычисляем сумму
        if(k==true)
        {  
            for(i=0; i<n; i++) sum+=b[i][j];                
        }
    }
//минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы (включая саму побочную диагональ и точки a[0][0], a[n-1][n-1])
//найдем данный минимум среди побочной диагонали и дигоналей расположенных выше ее
    int sum1, min=abs(b[0][0]), t;
    for (t=0; t<n; t++)//если t=0 то вычисляем побочную диагональ, t=1 вычисляем диагональ расположенную выше и т.д.
    {
        sum1=0;//обнуляем сумму при каждом заходе в цикл
        for (j=n-1-t, i=0; j>=0, i<n-t; j--, i++)
        {
            sum1+=abs(b[i][j]);
        }
    if  (min>sum1) min=sum1;//если сумма меньше min, то запоминаем ее 
    }
//найдем данный минимум среди дигоналей расположенных ниже побочной диагонали   
    for (t=0; t<n-1; t++)//если t=0 то вычисляем диагональ расположенную ниже побочной диагонали, t=1 вычисляем диагональ расположенную ниже предыдущей и т.д.
    {
        sum1=0;//обнуляем сумму при каждом заходе в цикл
        for (i=n-1, j=1+t; i>=1+t, j<n; i--, j++)
        {
            sum1+=abs(b[i][j]);
        }
    if  (min>sum1) min=sum1;//если сумма меньше min, то запоминаем ее 
    }
    printf("summa %d, min sum %d",sum, min);
    getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2010, 16:02     преобразовать задание ввиде функции
Посмотрите здесь:

Задание на функции C++
C++ Вывод данных ввиде таблицы
C++ функции странное задание
Вывод данных ввиде таблицы C++
C++ функции в с++ (преобразовать массив)
Вычислить и вывести на экран ввиде таблицы значения функции F на интервале от Хнач. до Хкон. с шагом dX C++
C++ Составить программу для вычисления значений функции F(x) на отрезке [A,B] с шагом Н.Результат представить ввиде таблицы, первый столбец которой—з
Исправить задачу (Вычислить и вывести на экран ввиде таблицы значения функции F на интервале от Хнач. до Хкон. с шагом dX) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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