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

потоковый ввод - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Текст http://www.cyberforum.ru/cpp-beginners/thread113853.html
Привет всем. Помогите с задачей. Дан текст словами, разделенные пробелом. Выдать этот текст по словам. Заранее огромнейшее спасибо
C++ Квадратный корень как вычислить корень из числа в консольном виде , я имею ввиду код для консольного приложения http://www.cyberforum.ru/cpp-beginners/thread113851.html
C++ 2 вопроса про скорость - указатели и строки
Здравствуйте. Скажите, а работа с большими массивами с помощью указателей происходит быстрее (при передаче указателя в функцию), чем если эти же массивы объявлять глобально и работать из функций как с глобальными? И второй вопрос. Что быстрее - встроенные методы класса string или аналогичные самописные (например, compare, length, find)? Спасибо.
Найти сумму и число тех элементов массива, которые попадают на заданный отрезок C++
Помогите написать программу по теме: одномерные массивы. Найти сумму и число тех элементов заданного массива X1,X2, … ,Xn, которые попадают на заданный отрезок.
C++ setprecision() http://www.cyberforum.ru/cpp-beginners/thread113833.html
Есть задача: Написать программу выводящую в текстовый файл таблицу значений функций exp(x) и ln(x) на отрезке с шагом 0,2. x выводить с одной цифрой в дробной части, exp(x) с пятью, ln(x) с семью. for(double x=1;x<4.2;x+=0.2){ fout<<setw(3)<<setprecision(1)<<x <<setw(9)<<setprecision(5)<<exp(x) <<setw(11)<<setprecision(7)<<log(x)<<"\n"; Результат:
C++ Как узнать, что текстовый файл пуст? Обычная проверка на if(feof(f)) не работает...файл пуст- я его проверял, но пока я с пустого файла что-то не считаю feof(f) true не станет...можно как то по-другому проверить его? Или что я делаю не так? подробнее

Показать сообщение отдельно
Ленка
 Аватар для Ленка
0 / 0 / 0
Регистрация: 01.08.2009
Сообщений: 24
07.04.2010, 17:22  [ТС]     потоковый ввод
ну вот что-то в этом духе...



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
#include <iostream>       
 #include <fstream>
 #include <stdlib.h> 
 
     
using namespace std; 
 
double coef(double x, double y);
double coef1 (double x, int i, int j);
double coef2 (double x, int i, int j);
double fi (double x);
 
int main () {
    double R2=0;
    double h=0;
    double t=0;
    const double T=0.5;
    const double y0=1;
    const double y1=1;
    const double s=1;    
    
    ofstream fout("result.txt");
    
    cout<<"R2= ";
    cin>>R2;
        
    cout<<"step r = ";
    cin >>h;
        
    cout<<"step t = ";
    cin >>t;    
    
    
    int n=R2/h; 
    int m=T/t;  
    double* p = new double [n];
    double* q = new double [n];
    double a, b, c, d, x=0; 
 
    int i=0, j=0;
    
//динамический массив
    double** y = new double* [n];                
    for (int k=0; k<n+1; k++) y[k]=new double[m];
   
 
 
    for (i=0; i<n+1; i++) {                                                   
             y[i][0]=y0;
            }
 
for (j=0; j<n; j++){
    
   p[0]=1;
   q[0]=0; 
    
    for(i=1; i<n+1; i++) {                                                   //прямо ход прогонки
             x=i*h;
             
             a=coef2(x,i,j)/h/h/x;
             b=1/t+coef1(x,i,j)/h/h/x+coef2(x,i,j)/h/x/h;
             c=coef1(x,i,j)/h/h/x;
             d=fi(x)*(-1)-y[i][j]/t;
             
             p[i]=c/(b-a*p[i-1]);                                  
             q[i]=(a*q[i-1]-d)/(b-a*p[i-1]);
             }
             
    y[n][j+1]=(y[n][j]/t+y1*2/h/h/x*coef(R2,y[n][j])*s*h-q[n]*2/h/h/x*coef(R2,y[n][j])-fi(x))/(1/t-2/h/h/x*coef(R2,y[n][j])*(h*s+1+p[n]));
             
    for (i=n; i>-1; i--)  {                                                  //обратный ход прогонки
        y[i][j+1]=y[i+1][j+1]*p[i]+q[i];
        fout << y[i][j+1] << "  ";
        }
   fout << endl;     
        }    
        delete [] y;
        delete [] p;        
        delete [] q;        
      system ("PAUSE")  ;
   
   return 0;
}  
 
 
double coef(double x, double y) {
       return x*y;
       }
       
double coef1 (double x, int i, int j) {
       int m,n;    
       double** y = new double* [n];                
       for (int k=0; k<n+1; k++) y[k]=new double[m];
       return (1/2*(coef(x,y[i+1][j])+coef(x,y[i][j])));
       }
       
double coef2 (double x, int i, int j) {
       int m,n;
       double** y = new double* [n];                
       for (int k=0; k<n+1; k++) y[k]=new double[m];
       return (1/2*(coef(x,y[i][j])+coef(x,y[i-1][j])));
       }
       
double fi (double x) {
       return 1;}
 
Текущее время: 20:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru