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

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

Войти
Регистрация
Восстановить пароль
 
JiL777
0 / 0 / 0
Регистрация: 03.12.2015
Сообщений: 23
#1

Найти значение выражения - C++

20.04.2016, 20:35. Просмотров 413. Ответов 3
Метки нет (Все метки)

Даны натуральные числа N, М . Целые числа а1..аn, b1....bm, c1.....c30. Получить:

http://www.cyberforum.ru/cgi-bin/latex.cgi?<br />l=\begin{cases}\min \left( b_1,\,...,\,b_m\right)+\min \left(c_1,\,...,\,c_{30} \right) & \text{, if } \begin{vmatrix}\min \left( a_1,\,...,\,a_n\right)\end{vmatrix}\,>\,10 \\\\ 1+\left( \max \left(c_1,\,...,\,c_{30} \right)\right)^3 & \text{, otherwise }\end{cases}<br />

Необходимо использовать процедуры (подпрограмы).

Добавлено через 2 часа 29 минут
хеелп...

Добавлено через 23 часа 46 минут
хелпп .. ребят .
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2016, 20:35
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти значение выражения (C++):

Найти значение выражения - C++
# include &quot;stdafx.h&quot; # include &lt;iostream&gt; # include &lt;math&gt; # include &quot;windows.h&quot; using namespace std double ht (double x) { ...

Найти значение выражения - C++
Необходимо найти значение выражения y= a^x-sin(x). Все хорошо, вот только а должен быть больше нуля и не равен единице. Не знаю как после...

Найти значение выражения - C++
Имеется формула 1+ xcos^2(x)+sin^3 (X) Нужно найти значение.

Найти значение выражения - C++
Помогите откорректировать код без функции inline double sqr(double x) { return x * x; Выражение такое...

Найти значение выражения - C++
нужно решить c использованием while

Найти значение выражения - C++
Всем привет! Пожалуйста помогите разобраться с математическими выражениями в Visual Studio 2010. Как записывать их в саму программу. Кто-то...

3
zss
Модератор
Эксперт С++
6928 / 6490 / 2182
Регистрация: 18.12.2011
Сообщений: 17,105
Завершенные тесты: 1
20.04.2016, 21:49 #2
JiL777, Опишите в чем трудность.

1. находите минимум в массиве a.
2. если он больше 10 то
- находите минимумы в b и c, а потом складываете
3. иначе
- находите максимум mxc в с и вычисляете mxc*mxc*mxc+1
Для нахождения минимума напишите такую функцию
C++
1
2
3
4
5
6
7
8
int imin(int* mass,int size)
{
    int mn=mass[0];
    for(int i=1;i<size;i++)
       if(mn>mass[i])
          mn=mass[i];
    return mn;
}
0
JiL777
0 / 0 / 0
Регистрация: 03.12.2015
Сообщений: 23
20.04.2016, 23:20  [ТС] #3
const mi = 100;

type matrix = array [1..mi] of integer;

//генерація та ввід масиву
procedure gen_prn(s: string; var x: matrix; r: integer);
var i: integer;
begin
writeln('Масив ', s, ':');
for i := 1 to r do
begin
x[i] := random(50);
write(x[i]:4)
end;
writeln
end;

//знаходження мінімума та максимума
procedure min_max(var x: matrix; r: integer; d: integer; var t: integer);
var i: integer;
begin
t := x[1];
for i := 2 to r do
if d * x[i] > d * t
then t := x[i]
end;

//ввід розміру масиву
procedure inp_raz(s: string; var x: integer);
begin
repeat
write('Введіть розмір масиву ', s, ' (1..', mi, '): ');
readln(x)
until (x >= 1) and (x <= mi)
end;

var l, m, n, p, q: integer;
a, b, c: matrix;

begin
randomize;
inp_raz('A', n);
inp_raz('B', m);
gen_prn('A', a, n);
gen_prn('B', b, m);
gen_prn('C', c, 30);
min_max(a, n, -1, p);
if p > 10
then begin
min_max(b, m, -1, p);
min_max(c, 30, -1, q);
l := p + q
end
else begin
min_max(c, 30, 1, p);
l := 1 + p * p
end;
write('L = ', l);
end.



Вот ,я смог сделать на Паскале,
а на С++ не выходит почемуто.... нужно както переделать его((( я чайник
0
-ДоМоВоЙ-
147 / 146 / 63
Регистрация: 19.01.2016
Сообщений: 565
Записей в блоге: 1
Завершенные тесты: 1
21.04.2016, 19:23 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
JiL777,
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include<iostream>
 
using namespace std;
void GetArrayA(int *ArrayA,int SIZE)
{
    cout<<"\nВведите массив A: ";
    for (int i=0;i<SIZE;i++)
        cin>>ArrayA[i];
};
 
void GetArrayB(int *ArrayB,int SIZE)
{
    cout<<"\nВведите массив B: ";
    for (int i=0;i<SIZE;i++)
        cin>>ArrayB[i];
};
 
void GetArrayC(int *ArrayC,int SIZE)
{
    cout<<"\nВведите массив C:(30 элементов) \n";
    for (int i=0;i<SIZE;i++)
        cin>>ArrayC[i];
};
 
int SearchAMin(int *ArrayA,int SIZE)
{
    int temp=ArrayA[0];
    for (int i=1;i<SIZE;i++)
        if (temp>ArrayA[i])temp=ArrayA[i];
 
    return temp;
};
 
int SearchBMin(int *ArrayB,int SIZE)
{
    int temp=ArrayB[0];
    for (int i=1;i<SIZE;i++)
        if (temp>ArrayB[i])temp=ArrayB[i];
 
    return temp;
};
 
int SearchCMin(int *ArrayC,int SIZE)
{
    int temp=ArrayC[0];
    for (int i=1;i<SIZE;i++)
        if (temp>ArrayC[i])temp=ArrayC[i];
 
    return temp;
};
 
int SearchCMax(int *ArrayC,int SIZE)
{
    int temp=ArrayC[0];
    for (int i=1;i<SIZE;i++)
        if (temp<ArrayC[i])temp=ArrayC[i];
 
    return temp;
};
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int SIZE,minA,minB,minC,maxC;
    cout<<"Введите размер массива A: ";
    cin>>SIZE;
    int *ArrayA=new int [SIZE];
    const int SizeC=30;
    int *ArrayC=new int[SizeC];
    GetArrayA(ArrayA,SIZE);
    minA=SearchAMin(ArrayA,SIZE);
    
    if (minA>10)
    {
        int SizeB;
        cout<<"\nМинимальный элемент массива A: "<<minA;
        cout<<"\nВведите размер массива В: ";
        cin>>SizeB;
        int *ArrayB=new int [SizeB];
        GetArrayB(ArrayB,SizeB);
        GetArrayC(ArrayC,SizeC);
        minB=SearchBMin(ArrayB,SizeB);
        minC=SearchBMin(ArrayC,SizeC);
        cout<<"Сумма минимальных элементов массивов А и С равна: "<<minB+minC;
 
        delete [] ArrayB;
    }
    else
    {
        cout<<"\nМинимальный элемент массива A: "<<minA;
        GetArrayC(ArrayC,SizeC);
        maxC=SearchCMax(ArrayC,SizeC);
        cout<<"Максимальный элемент массива С равен: "<<maxC;
        cout<<"\nВычисление по формуле: (maxC)3 + 1 = "<<(maxC*maxC*maxC)+1;
    }
 
    cout<<endl;
    delete [] ArrayA;
    delete [] ArrayC;
    system("pause");
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2016, 19:23
Привет! Вот еще темы с ответами:

Найти значение выражения - C++
Помогите написать уравнение на языке с++ s=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\frac{x^4}{4!} \\\psi = x(sinx^3 + cos^2y) Жду...

Найти значение выражения - C++
Найти значение выражения если n&gt;0, 1/2+2/4+3/8... что неправильно? #include &lt;iostream&gt; #include &lt;clocale&gt; int main () { ...

Найти значение выражения 1.1-1.2+1.3-1.4-1.5 до n - C++
Дано целое число n(n&gt;0) Найти значение выражения 1.1-1.2+1.3-1.4-1.5 до n (слагаемых знаки чередуются) Условный оператор не использовать...

Найти значение выражения - C++
Доброго утра всем! Сразу к делу... Нам преподаватель дал решить такую задачку по С++. Скрин снизу! Вот я не понимаю как все это пишется, то...


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

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

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