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

Помогите с процедурой для программы. - C++

Восстановить пароль Регистрация
 
If_you_believe
0 / 0 / 0
Регистрация: 21.11.2011
Сообщений: 7
12.12.2011, 23:01     Помогите с процедурой для программы. #1
Помогите пожалуйста сделать так, чтобы процедура возвращала в основную программу результат c и код ошибки k.
Нужно решить выражение с 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
#include <math.h>
#include <stdio.h>
#include <conio.h>
 
int x,p,k;
float a,b,c;
 
 
void main()
 
{
  clrscr();
 
printf("vvedite znachenije x= ");
 scanf("\n %d", &x);
 
printf("vvedite znachenie p= ");
 scanf("\n %d", &p);
 k=0;
 
reshenie(int x, int p, int k, int c);
 
if (k!=4)
 {
  if (k!=3)
   {
    if (k!=2)
     {
      if (k!=1)
       {
    printf("znachenie drobi ravno = %f\n",c);
       }
      else printf("v znamenatele 0");
     }
    else printf("pod logarifmom 0");
   }
  else printf("pod kornem 0");
 
}
}
 
float reshenie(int x, int p, int k, float c)
{
 
  if ((2*x*x-p)>0)
   {
    if (x!=-p)
     {
      if ((tan(log((x+p)*(x+p))-x*x*pow(p,4)))!=0)
       {
    a=3*pow(x,3)*p*p-sqrt(2*x*x-p);
    b=tan(log((x+p)*(x+p))-x*x*pow(p,4));
    c=a/b;
 
    k=1;
       }
      else k=2;
     }
    else k=3;
   }
  else k=4;
 return c;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2011, 23:01     Помогите с процедурой для программы.
Посмотрите здесь:

Помогите придумать 12 функций программы для игры в "Спички" C++
C++ Помогите с написанием программы в С++
C++ Помогите в написании программы
C++ Помогите в написание программы
Помогите с составлением программы C++
Помогите разобраться в коде программы для переворачивания списка (код маленький) C++
В чем разница между процедурой окна и хуковской процедурой? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
If_you_believe
0 / 0 / 0
Регистрация: 21.11.2011
Сообщений: 7
14.12.2011, 20:55  [ТС]     Помогите с процедурой для программы. #2
Я подправил немного через указатели. Помогите разобраться почему результат программа не выводит.
Как я понял параметр k не передается в основную программу. Вот код:

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
#include <math.h>
#include <stdio.h>
#include <conio.h>
 
int x,p,k;
float a,b,c;
 
 
 
float reshenie(int x, int p, int *k, float c)
{
int l=*k;
 
  if ((2*x*x-p)>0)
   {
    if (x!=-p)
     {
      if ((tan(log((x+p)*(x+p))-x*x*pow(p,4)))!=0)
       {
    a=3*pow(x,3)*p*p-sqrt(2*x*x-p);
    b=tan(log((x+p)*(x+p))-x*x*pow(p,4));
    c=a/b;
 
    l=1;
       }
      else l=2;
     }
    else l=3;
   }
  else l=4;
  *k=l;
 return c;
}
 
 
int main()
 
{
  clrscr();
 
printf("vvedite znachenije x= ");
 scanf("\n %d", &x);
 
printf("vvedite znachenie p= ");
 scanf("\n %d", &p);
 
reshenie(x, p, &k, c);
 
if (k!=4)
 {
  if (k!=3)
   {
    if (k!=2)
     {
      if (k!=1)
       {
    printf("znachenie drobi ravno = %f\n",c);
       }
      else printf("v znamenatele 0");
     }
    else printf("pod logarifmom 0");
   }
  else printf("pod kornem 0");
 
}
getch();
return 0;
}
If_you_believe
0 / 0 / 0
Регистрация: 21.11.2011
Сообщений: 7
16.12.2011, 07:57  [ТС]     Помогите с процедурой для программы. #3
Спасибо всем, решил сам:

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
#include <math.h>
#include <stdio.h>
#include <conio.h>
 
int x,p,k,i,n;
float a,b,c;
 
 
float oshibka (int x, int p, int k)
{
  if ((2*x*x-p)>0)
   {
    if (x!=-p)
     {
      if ((tan(log((x+p)*(x+p))-x*x*pow(p,4)))!=0)
       {
    k=1;
       }
      else k=2;
     }
    else k=3;
   }
  else k=4;
 return k;
}
 
float reshenie (int x, int p, float c)
{
    a=3*pow(x,3)*p*p-sqrt(2*x*x-p);
    b=tan(log((x+p)*(x+p))-x*x*pow(p,4));
    c=a/b;
 
 return c;
}
 
int main()
 
{
  clrscr();
 printf("vvedite kolichestvo vuchislenii n= ");
 scanf("\n %d",&n);
 
for (i=1;i<n;i++)
{
 
printf("vvedite znachenije x= ");
 scanf("\n %d", &x);
 
printf("vvedite znachenie p= ");
 scanf("\n %d", &p);
 
k=oshibka(x, p, k);
 
if (k==4)
 {
  printf("pod kornem 0");
 }
  else if (k==3)
   {
    printf("pod logarifmom 0");
   }
  else if (k==2)
     {
      printf("v znamenatele 0");
     }
  else if (k==1)
       {
    c=reshenie(x,p,c);
    printf("znachenie drobi ravno = %f\n",c);
       }
      }
 
getch();
return 0;
}
Yandex
Объявления
16.12.2011, 07:57     Помогите с процедурой для программы.
Ответ Создать тему
Опции темы

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