Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 27.05.2015
Сообщений: 41

Какие математические формулы используются в приведенных программах?

02.06.2015, 22:01. Показов 1476. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Учусь, студент , написали со знакомым две программы к курсовой, а преподавателдь требует еще и математические формулы . Вот программы может подскажите что нибудь дельное.

Первая программа .

C++ (Qt)
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <iostream.h>
#include <math.h>
#include <stdlib.h>
#include <iomanip.h>
#include <stdio.h>
#include <values.h>
 
int main()
{
    double m [100];
    int ke, i, koe = 0, n_min = 0, min, summa = 0, ykaz = 1;
    randomize();
    while (ykaz > 0)
    {
        cout<<"Укажите действие, которое необходимо сделать с массивом:"<<"\n"<<"1 - Заполнить массив в ручную. "<<endl;
                cout<<"2 - Заполниь массив в автоматическом режиме."<<endl;
        cout<<"3 - Количество отрицательных элементов. "<<endl;
        cout<<"4 - Сумма модулей элементов после минимального по модулю. "<<endl;
    cout<<"5 - Замена отрицательных элементов их квадратами. "<<endl;
    cout<<"6 - Сортировка массива по возрастанию."<<endl;
                cout<<"0 - Выход."<<endl;
                cin>>ykaz;
        switch(ykaz)
        {
            case 1:
                cout <<"Введите размер массива: ";
                cin >> ke;
                cout<<endl;
                for ( i = 0; i < ke; i++)
                {
                    cout << " m [" << i << "] = ";
                    cin >> m [i];
                }
                cout<<"\n======================================================\n";
                break;
            case 2:
                cout<<"Введите размер массива : ";
                cin>>ke;
                for (int i=0; i<ke; i++)
                                  {
                    m[i] = random(100) + 1;
                    cout<<"m["<<i<<"] = "<<m[i]<<endl;
                                   }
        cout<<"\n======================================================\n";
        break;
            case 3:            
 
                for ( i=0; i<ke; i++)
                    if (m[i]<0) 
                        koe++;
                        
                cout<<"Количество отрицательных элементов массива : "<<koe<<".\n";
                cout<<"\n======================================================\n";
                break;
            case 4:
                n_min = 0;
                for ( i=0; i<ke; i++) 
                if (fabs(m[i]) < fabs(m[n_min]))
                    n_min=i;
                if (n_min==ke-1)
                    cout<<"Минимальный по модулю элемент последний.\n";
                else
                {
                    for ( i=(n_min+1); i<ke; i++) 
                    summa+=fabs(m[i]);
                    cout<<"Сумма модулей элементов после минимального по модулю : "<<summa<<".\n";
                }
                cout<<"\n======================================================\n";
                break;
            case 5:
                for (i=0; i<ke; i++)
                    if (m[i]<0) 
                        m[i]=pow(m[i],2);
                    cout<<"Замена отрицательных элементов их квадратами:\n";
                for (i = 0; i < ke; i ++)
                    cout<<m[i]<<" ";
                cout<<"\n======================================================\n";
                break;
            case 6:
                double k;
            for ( i=0; i<(ke-1); i++) 
            {
                for (int j=i+1; j<ke; j++)
                {
                    if (m[i] > m[j])
                    {
                        k=m[i];
                        m[i]=m[j];
                        m[j]=k;
                    }
                }
            }
            cout<<"Отсортированный массив:\n";
            for ( i=0; i<ke; i++)
                cout << m[i] << ' ';
            cout<<"\n======================================================\n";
                break;
            default:
                            ykaz = 0;
                            break;
                }
    }
    return 0;
}
Вторая программа.

C++ (Qt)
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>
#include <values.h>
 
int _schet(int **, int, int);       //функция подсчета одинаковых чисел в строках матрицы
int *_sort(int *, int);                 //функция сортировки одномерного массива
int *_revers(int *, int);               //функция реверса массива 
int _otric(int **, int, int);           //функция подсчета отрицатеьных элементов в столбцах матрицы
 
int main()
{
    randomize();// случайный набор чисел                                                         
    int n = 0, m = 0, **mas = 0, i = 0, j = 0, s = 0, a = 0, b = 0, k = 0, *rez = 0, *rez2, zn = 0, *znak = 0;//описание необходимых переменных              
    cout<<"Укажите размерность матрицы(n*m): ";                                                                             
    cin>>n>>m;                                                                                                              
    rez = (int *)malloc(n * sizeof(int));       //                                                                             
        znak = (int *)malloc(m * sizeof(int));    //                                                                              
    mas = (int **)malloc(n * sizeof(int *));      //                                                                          
    for (i = 0; i < n; i ++)                                                          // цикл ввода массива чеез функцию                                      
            mas[i] = (int *)malloc(m * sizeof(int));                                                                        
    cout<<"Укажите способ заполнения(1 - вручную, 2 - автоматически): ";                                                    
    cin>>s;
    if (s == 1)                                                    //выбор 1-ого варианта
    {
        for (i = 0; i < n; i ++)
            for (j = 0; j < m; j ++)
                            cin>>mas[i][j];
    }
    if (s == 2)                                                  //выбор 2-ого варианта
    {
        cout<<"Введите интервал значений(a..b): ";
                cin>>a>>b;
        for (i = 0; i < n; i ++)
            for (j = 0; j < m; j ++)
            {
                while (1)
                {
                    zn = random(2);
                    k = random(b + 1);
                    if (zn == 1)
                        k = -random(b + 1);
                    if (zn == 0)
                                            k = random(b + 1);
                    if ((k >= a) && (k <= b))
                                        {
                        mas[i][j] = k;
                        break;
                    }
                                }
                        }
    }
        
    for (i = 0; i < n; i ++) //Выводим получившуюся матрицу
        {
        for (j = 0; j < m; j ++)
            cout<<mas[i][j]<<"\t";
        cout<<endl;
    }
 
    for (i = 0; i < n; i ++)     //Применяем функцию INT _SCHET(INT **MAS,INT M, INT POS). 
    {                            //Сортируем полученный при помощи функции INT _SCHET(INT **MAS,INT M, INT POS) массив по возрастанию.  
        rez[i] = 0;
        rez[i] = _schet(mas, m, i);
                //cout<<rez[i]<<" ";
    }
    //cout<<endl;
    rez2 = _sort(rez, n);
        cout<<"Задание 1:\n";
    for (i = 0; i < n; i ++)       //Выводим результат выполнения 1 задания.
        {
        for (j = 0; j < m; j ++)
        {
                    cout<<mas[rez2[i]][j]<<"\t";
        }
        cout<<endl;
    }
    cout<<"Задание 2:\n"; //Применяем функцию INT _OTRIC(INT **MAS, INT N, INT POS).
    for (j = 0; j < m; j ++)  //Выводим результат выполнения 2 задания.
    {
            znak[j] = 0;
        znak[j] = _otric(mas, n, j);
        //cout<<znak[j]<<" ";
    }
        cout<<endl;
        i = 0;
    while (1)
    {
        if (znak[i ++] == 0)
        {
            cout<<"Номер первого из столбцов, не содержащего ни одного отрицательного числа - №"<<i<<endl;
            break;
                }
        }
    return 0;
}
 
int _schet(int **mas, int m, int pos)           //в функцию передается матрица, количество столбцов и номер текущей строки для подсчета количества одинаковых чисел
{
    int *rez = 0, i = 0, now = 0, j = 0, max = 0, max_i = 0;
    rez = (int *)malloc(m * sizeof(int));
    for (i = 0; i < m; i ++)
        rez[i] = 0;
    for (i = 0; i < m; i ++)
    {
        now = mas[pos][i];
        for (j = 0; j < m; j ++)
            if (mas[pos][j] == now)
                rez[i] ++;
    }
    for (i = 0; i < m; i ++)
    {
        if (rez[i] > max)
        {
            max = rez[i];
                        max_i = i;
                }
    }
        return rez[max_i];
}
 
int *_sort(int *mas, int n)             //в функцию передается массив mas, который нужно отсортировать и количество элементов в нем
{
    int *rez = 0, *rez2 = 0, i = 0, j = 0, max = -MAXINT, max_i = 0;
    rez = (int *)malloc(n * sizeof(int));
    for (i = 0; i < n; i ++)
    {
        for (j = n - 1; j > -1; j --)
        {
            if (mas[j] > max)
            {
                max = mas[j];
                                max_i = j;
                        }
        }
                max = -MAXINT;
        mas[max_i] = -MAXINT;
                rez[i] = max_i;
    }
        rez2 = _revers(rez, n);
        return rez2;
}
 
int *_revers(int *mas, int n)                           //в функцию передается массив mas, который нужно "развернуть" и количество элементов в нем
{
    int *rez = 0, i = 0;
    rez = (int *)malloc(n * sizeof(int));
    for (i = 0; i < n; i ++)
        rez[i] = mas[n - i - 1];
    return rez;
}
 
int _otric(int **mas, int n, int pos)                   //в функцию передается матрица, количество строк и номер столбца, в котоом необходимо поститать количество отрацительных элементов
{
    int i = 0, sum_otric = 0;
    for (i = 0; i < n; i ++)
        if (mas[i][pos] < 0)
            sum_otric ++;
    return sum_otric;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.06.2015, 22:01
Ответы с готовыми решениями:

Какие из приведенных конструкций являются выражениями?
Определите, какие из приведенных ниже конструкций являются выражениями. 1) x + 1.5 2) sin( x ) 3) y = x +1; 4) 127 5) x = y...

Записать математические формулы
Полный код в С++ если знаете паскаль то в паскале тож.. спс

Записать математические формулы
Пожалуйста П.5.18.Правил Запрещено размещать задания и решения в виде картинок и других файлов с их текстом. ha=bsiny V=пR2H

4
15 / 15 / 4
Регистрация: 11.11.2014
Сообщений: 122
02.06.2015, 23:01
Математические формулы чего, простите?
0
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
02.06.2015, 23:08
Vanko, открываете список функций из math.h и начинаете фантазировать с элементами матриц. Вообще всякое можно напридумывать.
0
0 / 0 / 0
Регистрация: 27.05.2015
Сообщений: 41
03.06.2015, 01:25  [ТС]
Формулы по которым написана программа, т.е. какие математические операции применялись в ней
0
15 / 15 / 4
Регистрация: 11.11.2014
Сообщений: 122
03.06.2015, 07:58
Vanko, закомментируйте math.h и скомпилируйте программу. Везде, где заругается с отсылки на этот заголовочный файлфайл, будет ваш ответ. А там гуглите, что эти функции делают
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.06.2015, 07:58
Помогаю со студенческими работами здесь

Как математические формулы записать
Первую формулу записал,а дальше не пойму. // zadanie_3.cpp: определяет точку входа для консольного приложения. // #include...

Как запрограммировать математические многочлены, формулы?
Каким образом запрограммировать математические вычисления вида: (a1+a2+… + an)/n ( a1+(a2+a3)/2+(a4+a5+a6)/3+… +(a'n-k'+...+an)/k ) / p...

Зафиксировать какие символы используются в строке
Многоуважаемые форумчане с большими и чистыми сердцами, как вывести в отдельный массив буквы, которые использовались в строке. Если в...

Какие модули (библиотеки) используются программами ОС Windows
Интересует каким способом делаются различные визуальные эффекты, например, как в калькуляторе в Win 7. Столкнулся с такой проблемой: ...

Какие паттерны используются в программе и для чего?
Помогите, пожалуйста, разобраться. Определите какие паттерны в программе. для чего они там? class Man{ char* mpName; char* mpsername;...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru