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

Обращение одной программы к другой - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Что именно выполняет эта программа? http://www.cyberforum.ru/cpp-beginners/thread1178522.html
Прокоментируйте пожалуйста что происходит в программе со строчки : /*максимальное из чисел, встречающихся в заданной матрице более одного раза*/ #include "stdafx.h" #include <iostream> #include <locale> #include <iomanip> #include <math.h> #include <conio.h> #include <time.h> using namespace std;
C++ Задание пути к текстовому файлу Здравствуйте. Передо мной стоит такая задача - нужно создать программу, которая запрашивала бы путь к текстовому файлу. То есть, при компилировании выводилось бы сообщение, наподобие "Введите путь к текстовому файлу". И при введении пути к файлу программа должна находить этот файл и проводить с ним необходимые операции (в моем случае это интегрирование методом правых прямоугольников, но это не... http://www.cyberforum.ru/cpp-beginners/thread1178507.html
Ввод символов в линейный список C++
Народ,наткнулся на этом форуме вот на этот код,нужна помощь,нужно,чтоб вместо числовых данных,вводить в список можно было символьные,меняю на char,программа просто закрывается,не знаю что делать(( #include <iostream> #include <windows.h> using namespace std; class Node { public: int number; Node* next;
Двумерный массив: поменять местами две строки C++
Нужно поменять местами две строки в массиве:строку, которая содержит максимальный элемент матрицы, и строку, содержащую минимальный элемент матрицы. У меня получается, что меняются столбцы, а не строки, не могу понять в чем проблема( #include<iostream> #include<conio.h> using namespace std; void vvod(); void vyvod(int**Arr, int n, int m); void poisk(int**Arr, int n, int m);
C++ Создать массив структур http://www.cyberforum.ru/cpp-beginners/thread1178467.html
Создать массив структур . Структура содержит данные об автомобилях и состоит из следующих полей : модель (до 15 символов) , номер ( код региона , цифровой код , буквенные код ) , цвет , данные о владельце (фамилия , имя , отчество) , дата последнего техосмотра. Созданный массив структур записать в файл. Предусмотреть операции добавления записей в файл и их редактирования. Реализовать запросы: 1...
C++ Указатель и NULL Почему программа выдает сообщение "NOT NULL" ? #include <iostream> using namespace std; void func(int *); int main() подробнее

Показать сообщение отдельно
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
18.05.2014, 09:32     Обращение одной программы к другой
main.cpp:
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
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
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <math.h>
#include <locale>
 
void painter();
 
#define IN "C:\\Users\\st1a3sea\\Desktop\\labs\\input.txt"
 
float a,b,c,n1,n2;
float f1(float x)
{return a*pow(x,3)+b*x+c;}
float f2(float x)
{return a*sin(x+b)+c;}
float f3(float x)
{return a*log(fabs(x+b))+c;}
 
int main()
{
setlocale(LC_ALL,"Russian");
using namespace std;
float s1p=0,s2p=0,s3p=0,s1t=0,s2t=0,s3t=0,h,as1,as2,as3,os1,os2,os3;
int n,i,ans;
float p[500];
printf ("Каким образом хотите задать переменные?\n 1) С клавиатуры\n 2) Из файла\n");//????? ?????? ?? ?????
scanf("%d", &ans);// ?????? ?????? ? ?????????? ans
switch(ans)
{
case 1:
    {
        printf("Введите a=");// ????? ?????? ?? ?????
scanf("%f", &a);// ?????? ?????? ? ?????????? a
        printf("Введите b=");// ????? ?????? ?? ?????
        scanf("%f", &b);// ?????? ?????? ? ?????????? b
        printf("Введите c=");// ????? ?????? ?? ?????
        scanf("%f", &c);// ?????? ?????? ? ?????????? c
        printf("Введите число интервалов разбиения n=");// ????? ?????? ?? ?????
       scanf("%d", &n);// ?????? ?????? ? ?????????? n
       if((n<0)||(n>500))
    {
                printf("Неверное число интервалов разбиения\n");// ????? ?????? ?? ?????
                //system("pause");
                return 1;
           }
                printf("Введите нижний предел интегрирования n1=");// ????? ?????? ?? ?????
 scanf("%f", &n1);// ?????? ?????? ? ?????????? n1
 printf("Введите верхний предел интегрирования n2=");// ????? ?????? ?? ?????
scanf("%f", &n2);// ?????? ?????? ? ?????????? n2
if((n1<-1000)||(n1>1000)||(n2<-1000)||(n2>1000))
 {
    printf("Неверные пределы интегрирования. Нужно ввести пределы интегрирования в заданном диапазоне \n");// ????? ?????? ?? ?????
        //system("pause");
        return 1;
}
break;
}
case 2:
{
        freopen(IN,"r",stdin);
         scanf("%f%f%f%d%f%f", &a,&b,&c,&n,&n1,&n2);
         if((n>500)||(n<0))
      {printf("Неверное число интервалов разбиения\n");// ????? ?????? ?? ?????
                 //system("pause");
        return 1;
                 }
         if((n1<-1000)||(n1>1000)||(n2<-1000)||(n2>1000))
         {
          printf("Неверные пределы интегрирования. Нужно ввести пределы интегрирования в заданом диапазоне\n");// ????? ?????? ?? ?????
                  //system("pause");
        return 1;
          }
                 break;
}
default:
        {
                printf("Необходимо выбрать действие 1 или действие 2");
                //system("pause");
                return 1;
}
}
printf("a=%f\n",a);
printf("b=%f\n",b);
printf("c=%f\n",c);
printf("n=%d\n",n);
printf("n1=%f\n",n1);
printf("n2=%f\n",n2);
    h=(n2-n1)/n;
    for (i=1; i<=n;i++)
    {
        p[i]=n1+i*h;
    }
    for (float x=p[1]; x<=p[n]; x+=h)
    {s1p+=f1(x);
      s2p+=f2(x);
      s3p+=f3(x);
    }
    s1p*=h;
    s2p*=h;
    s3p*=h;
    printf("s1p=%f\n",s1p);
    printf("s2p=%f\n",s2p);
    printf("s3p=%f\n",s3p);
    for(float x=n1; x<=n2; x+=(n2-n1))
    {if(x==n1)
        {
        s1t-=((a*pow(x,4))/4+((b*pow(x,2))/2)+c*x);
        s2t-=(-a*cos(x+b)+c*x);
        s3t-=(a*log(x+b)+c*x);
}
        if(x==n2)
        {
            s1t+=((a*pow(x,4))/4+((b*pow(x,2))/2)+c*x);
            s2t+=(-a*cos(x+b)+c*x);
            s3t+=(a*log(x+b)+c*x);
        }
    }
        printf("s1t=%f\n",s1t);
        printf("s2t=%f\n",s2t);
        printf("s3t=%f\n",s3t);
        as1=fabs(s1t-s1p);
        as2=fabs(s2t-s2p);
        as3=fabs(s3t-s3p);
        os1=as1/fabs(s1p);
        os2=as2/fabs(s2p);
        os3=as3/fabs(s3p);
        printf("as1=%f\n",as1);
        printf("as2=%f\n",as2);
        printf("as3=%f\n",as3);
        printf("os1=%f\n",os1);
        printf("os2=%f\n",os2);
        printf("os3=%f\n",os3);
 
        printf("Хотите построить графики? 1) Да 2) Нет");
        scanf("%d", &ans);
        if (ans == 1)
            painter();
        getch();
        return 0;
}
painter.cpp:
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
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <locale>
#include <graphics.h>
 
void painter()
{
 
const int X0=400;
const int Y0=400;
const float xmin=-10;
const float xmax=10;
 
float a,b,c,x,y,h=0.001;
 
int l;
printf("Выберите график\n 1) y=a*x*x*x+b*x+c\n 2) y=a*cos(x+b)+c\n 3) y=a*log(fabs(x+b))+c;\n");
scanf("%d",&l);
if(l==1)
{
printf ("Введите значение a=");
scanf("%f",&a);
printf ("Введите значение b=");
scanf("%f",&b);
printf("Введите значение c=");
scanf("%f", &c);
initwindow(800,800);
line (X0,0,X0,799);
line (0,Y0,799,Y0);
 
for (x=xmin;x<=xmax;x+=h)
{
    y=a*x*x*x+b*x+c;
 
    putpixel(x+X0,-y+Y0, 3);
 
}
}
else
if(l==2)
{
    printf ("Введите значение a=");
    scanf("%f",&a);
    printf ("Введите значение b=");
    scanf("%f",&b);
    printf("Введите значение c=");
    scanf("%f", &c);
    initwindow(800,800);
    line (X0,0,X0,799);
    line (0,Y0,799,Y0);
 
    for (x=xmin;x<=xmax;x+=h)
    {
        y=a*cos(x+b)+c;
 
        putpixel(x+X0,-y+Y0, 4);
 
    } }
else
    if(l==3)
    {
        printf ("Введите значение a=");
        scanf("%f",&a);
        printf ("Введите значение b=");
        scanf("%f",&b);
        printf("Введите значение c=");
        scanf("%f", &c);
        initwindow(800,800);
        line (X0,0,X0,799);
        line (0,Y0,799,Y0);
 
        for (x=xmin;x<=xmax;x+=h)
        {
            y=a*log(fabs(x+b))+c;
 
            putpixel(x+X0,-y+Y0, 5);
 
        } }
    else
    {printf("Необходимо выбрать график 1, график 2 или график 3");}
    getch();
    
}
 
Текущее время: 15:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru