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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.69
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
#1

Вызов функции - C++

17.06.2010, 13:56. Просмотров 2005. Ответов 34
Метки нет (Все метки)

Помогите пожалуйста решить завтра зачет, а задачу не могу решить последнюю.
Составить программу формирования элементов массивов Х, У и упорядочивания их в порядке убывания значений элементов и вывода максимальных элементов, если
Вызов функции
буду очень благодарен.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2010, 13:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вызов функции (C++):

Вызов функции внутри другой функции с передачей локальной переменной по ссылке - C++
Столкнулся с очень с интересной проблемой. Можно ли так делать? #include <iostream> using std::cout; void f(const int &ref){...

Вызов родовой функции (нужно передать массив в качестве аргумента функции через указатель) - C++
#include <iostream> using namespace std; template <class T1> class mas { public: T1 n; T1 a; void input() ...

Вызов функции в возврате значения функции - C++
Есть функция: int function1(a) { ...... return function2(function1(b),function1(c)); } Как работает такая хитрая система?

Вызов функции в параметре другой функции - C++
программа: #include <iostream> using namespace std; struct E { E() {} }; void f(const E& e)

вызов функции из под функции - C++
Добрый вечер. Такая ситуация: есть функция, назовем ее MainThreadFunc. Как можно сделать так, чтобы любая другая функция, которую я напишу,...

Вызов функции в C++ - C++
есть циклический вызов функции: for (int i=0; i<start; i++) { if (classicZOT())...

34
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
18.06.2010, 07:03  [ТС] #2
тут модельно программирование, вызов функции. помогитп пожалуйста решить

Добавлено через 1 час 19 минут
знает ктО?

Добавлено через 14 часов 8 минут
народ помогите решить срочно надо
0
accept
4828 / 3249 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
18.06.2010, 08:20 #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int alph(double *p, double x, double m)
{
    *p = x * x + m * m * x;
 
    return 0;
}
 
int bet(double *p, double x)
{
    int alph(double *, double, double);
    
    *p = x + 21 * alph(x);
    
    return 0;
}
1
Миниатюры
Вызов функции  
accept
4828 / 3249 / 165
Регистрация: 10.12.2008
Сообщений: 10,569
18.06.2010, 08:25 #4
ещё сделать функцию, которая вычисляет факториал для double значений
потом останется сделать две функции: для вычисления Xк и Yк
а потом останется сделать функцию для управления этими двумя функциями

а вторую часть задания, про упорядочивание, отдельно делать надо
1
Mr.X
Эксперт С++
3051 / 1696 / 265
Регистрация: 03.05.2010
Сообщений: 3,867
18.06.2010, 08:26 #5
А что означает a с индексом k в первой формуле?
2
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
18.06.2010, 23:53  [ТС] #6
я так и не разобрался может кто паказать как будет выглядеть вся программа?

Добавлено через 9 часов 5 минут
ну вот чтото получилось, помогит плиз найти ошибки.
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
#include<stdio.h>
#include<algorithm>
#include<stdlib.h>
#include<math.h>
unsigned long fact(unsigned long n)
{
if(n<=1)
return 1;
return n*fact(n-1);
}
static long m,l,e,n;
long alpha(long x){
return(x*x+m*m*x);
}
long beta(long x){
return(x+21*alpha(x));
}
long long_fact(long k, long p){
long result;
result=fact(3*k)/fact(2*k+p);
return result;
}
long sum1(int k){
long p, result;
for(p=k;p<=n;p++){
result=long_fact(k,p)*pow(e,(k-p))*alpha(k-2*p);
}
return result;
}
long sum2(int k){
long p, result;
for(p=k;p<=n;p++){
result=long_fact(k,p)*pow((1+e),(k+p))*pow(l,p)*alpha(k+2*p);
}
return result;
}
int main ()
{
long k;
long *arr1, *arr2;
m=1=e=0;
printf("Enter n: ");
scanf("%d",&n);
arr1=new long[n];
arr2=new long[n];
for(k=1;k<=n;k++)
{
arr1[k]=1+k*alpha(k)*(4*k)+sum1(k);
arr2[k]=2*beta(k)+sum2(k);
}
//code to sort arrays
std::sort(arr1,arr1+n);
std::sort(arr2,arr2+n);
//code to display max value
printf("arr1 max: %d/n",arr1[n-1]);
printf("arr2 max: %d/n",arr2[n-1]);
return 0;
}
Ошибки в 2, 26,33,41, 52,52,53,53
Compiling A1111111.CPP:
Error A1111111.CPP 2: Unable to open include file 'ALGORITHM'
Error A1111111.CPP 26: Call to undefined function 'pow' in function sum1(int)
Error A1111111.CPP 33: Call to undefined function 'pow' in function sum2(int)
Error A1111111.CPP 41: Lvalue required in function main()
Warning A1111111.CPP 44: Conversion may lose significant digits in function main()
Warning A1111111.CPP 45: Conversion may lose significant digits in function main()
Warning A1111111.CPP 48: Conversion may lose significant digits in function main()
Warning A1111111.CPP 48: Conversion may lose significant digits in function main()
Warning A1111111.CPP 49: Conversion may lose significant digits in function main()
Warning A1111111.CPP 49: Conversion may lose significant digits in function main()
Error A1111111.CPP 52: Type qualifier 'std' must be a struct or class name in function main()
Error A1111111.CPP 52: Statement missing ; in function main()
Error A1111111.CPP 53: Type qualifier 'std' must be a struct or class name in function main()
Error A1111111.CPP 53: Statement missing ; in function main()
Warning A1111111.CPP 55: Conversion may lose significant digits in function main()
Warning A1111111.CPP 56: Conversion may lose significant digits in function main()

Помогит найти пожалуйст ошибки
1
Egeni
10 / 10 / 1
Регистрация: 17.06.2010
Сообщений: 107
Записей в блоге: 1
19.06.2010, 00:49 #7
ну во первых используй
C++
1
using namespace std;
после инклудов

во вторых чтото ты тут явно накосячил... то ли код не твой то ли ты вообще не шерстишь в нем.
что за заголовок algorithm? который ты внедряешь?
1
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
19.06.2010, 00:51  [ТС] #8
добавил, теперь 9 ошибок

Добавлено через 1 минуту
это не мой код, мне решили, единственная заадча осталась которую я не могу решить, а без нее зачет не получу (((
0
schdub
2959 / 1304 / 239
Регистрация: 19.01.2009
Сообщений: 3,431
Завершенные тесты: 1
19.06.2010, 00:58 #9
DanielDefo,
в С++ программах не желательно использовать функции из этих хидеров
C++
1
2
3
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
если же все таки они нужны, то вместо них используйте хидеры
C++
1
2
3
#include<сstdio>
#include<сstdlib>
#include<сmath>
А под каким компилером Вы это компилите?
1
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
19.06.2010, 01:00  [ТС] #10
я кампилирую Borland C++ 4.5, я не знаю может я не тем кампилирую?
0
mrMRak
38 / 38 / 3
Регистрация: 02.06.2010
Сообщений: 105
19.06.2010, 01:02 #11
Цитата Сообщение от Egeni Посмотреть сообщение
что за заголовок algorithm?
библиотека это. sort() именно оттуда.

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
#include<stdio.h>
#include<algorithm>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
 
unsigned long fact(unsigned long n)
{
    if(n<=1)
        return 1;
    return n*fact(n-1);
}
 
static long m,l,e,n;
 
long alpha(long x)
{
    return(x*x+m*m*x);
}
long beta(long x)
{
    return(x+21*alpha(x));
}
long long_fact(long k, long p)
{
    long result;
    result=fact(3*k)/fact(2*k+p);
    return result;
}
long sum1(int k)
{
    long p, result;
    for(p=k;p<=n;p++)
    {
        result=long_fact(k,p)*pow((float)e,(k-p))*alpha(k-2*p);
    }
    return result;
}
long sum2(int k)
{
    long p, result;
    for(p=k;p<=n;p++)
    {
    result=long_fact(k,p)*pow((float)(1+e),(k+p))*pow((float)l,p)*alpha(k+2*p);
    }
return result;
}
int main ()
{
    long k;
    long *arr1, *arr2;
    m=l=e=0;
    printf("Enter n: ");
    scanf("%d",&n);
    arr1=new long[n];
    arr2=new long[n];
    for(k=1;k<=n;k++)
    {
        arr1[k]=1+k*alpha(k)*(4*k)+sum1(k);
        arr2[k]=2*beta(k)+sum2(k);
    }
    //code to sort arrays
    std::sort(arr1,arr1+n);
    std::sort(arr2,arr2+n);
    //code to display max value
    printf("arr1 max: %d/n",arr1[n-1]);
    printf("arr2 max: %d/n",arr2[n-1]);
    getch();
    return 0;
}
этот код компилится и запускается. что выводится яхз)
1
schdub
2959 / 1304 / 239
Регистрация: 19.01.2009
Сообщений: 3,431
Завершенные тесты: 1
19.06.2010, 01:02 #12
дык, простыню с ошибками в студию :-)
1
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
19.06.2010, 01:03  [ТС] #13
а чем вы кампилируете что у вас без ошибок? у меня 8 ошибок показывает
0
mrMRak
38 / 38 / 3
Регистрация: 02.06.2010
Сообщений: 105
19.06.2010, 01:06 #14
msvc++2008

Добавлено через 1 минуту
имхо там ошибка в функциях sum1 sum2 - так как должна находится сумма элементов. а там последний просто присваивается. то есть заменить на:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
long sum1(int k)
{
        long p, result=0;
        for(p=k;p<=n;p++)
        {
                result+=long_fact(k,p)*pow((float)e,(k-p))*alpha(k-2*p);
        }
        return result;
}
long sum2(int k)
{
        long p, result=0;
        for(p=k;p<=n;p++)
        {
        result+=long_fact(k,p)*pow((float)(1+e),(k+p))*pow((float)l,p)*alpha(k+2*p);
        }
return result;
}
1
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
19.06.2010, 01:12  [ТС] #15
нада скачать, а выводит то что нада? с условием сходится?

Добавлено через 5 минут
установил, но никогда в нем не работал и чтото не пойму, тут аткже как и в Борланде запускается и кампилируется Ctrl + F9 и Alt+F9 ?
0
19.06.2010, 01:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.06.2010, 01:12
Привет! Вот еще темы с ответами:

Вызов функции - C++
Укажите правильный вариант вызова функции вместо пропуска …….. void func(int *p, int n, float k) { } main( ) { int...

Вызов функции - C++
Здравствуйте! Не могу вызвать функцию, объясните причину. template &lt;typename T&gt; void Calc_etalon (QDir &amp; DirTxt) { ...

Вызов функции - C++
#include &quot;stdafx.h&quot; #include &lt;locale&gt; #include &lt;iostream&gt; using namespace std; class Bankomat { public: Bankomat(){}; ...

Вызов функции! - C++
Почему-то подчеркивает вот этот вызовsum sum(pa,pb,pc); . В чем проблема? #include &lt;iostream&gt; #include &lt;locale.h&gt; #include...


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

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

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