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

рекурсия B c++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перевод символа в число http://www.cyberforum.ru/cpp-beginners/thread353339.html
У меня такой вопрос. Необходимо прочитать из файла "input.txt" строку типа "D1", означающая координату на шахматной доске. Нужно первый символ (т.е. 'D') перевести в число согласно его порядку в...
C++ типы данных какой диапазон данных у main, getch? и какой тип данных у getch? http://www.cyberforum.ru/cpp-beginners/thread353333.html
Напечатать названия моделей авто, у которых максимальная скорость больше 180 км/ч C++
Известны максимальные скорости 20 моделей легковых автомобилей. Все значения выражены в км/ч. напечатать названия моделей, у которых максимальная скорость больше 180 км/ч. Помогите, пожалуйста, не...
C++ Положительные и отрицательные элементы массива записать в разные переменные
В универе используем компилятор DEV C++. Была дана задача ввести массив разными способами(вручную и рандомно). И сделать следующее: чтобы все положительные элементы множились и записывались в некую...
C++ Производные(похідні) http://www.cyberforum.ru/cpp-beginners/thread353319.html
x^4+x^2+1 Как эту функцию решить в с++? покажите примером. Или там как то спец функция есть. Как находить математически производные я знаю, а вот как записать..
C++ Не получается считать информацию из файла в 2-х мерный массив (С++) Что-то не совсем праильно работает, да и подскажите как потом поменять местами столбики со строками соответственно (т.е. 1-я строка соответстует 1-у столбику и т.д.) и записать в другой файл... подробнее

Показать сообщение отдельно
антон1986
0 / 0 / 0
Регистрация: 18.09.2011
Сообщений: 3

рекурсия B c++ - C++

18.09.2011, 17:19. Просмотров 500. Ответов 5
Метки (Все метки)

пожалуйста помогите,почему не работает?
дело в рекурсии,функция func1 вызывается много раз..

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
 int func1 (float A[z][z],float B[z][z],float C[z][z],int N){ 
 
      int m;
      float P7[q][q],P6[q][q],P5[q][q],P4[q][q],P3[q][q],P2[q][q],P1[q][q],
      B11[q][q],B12[q][q],B21[q][q],B22[q][q],A11[q][q],A12[q][q],A21[q][q],A22[q][q],
      Asum1[q][q],Asum2[q][q],Asum5[q][q],Asum6[q][q],Asum7[q][q],
      Bsum1[q][q],Bsum3[q][q],Bsum4[q][q],Bsum6[q][q],Bsum7[q][q];
      
/////////////////////////////////////////////////////////////
  
    m=N/2;
 
    
     for(int i = 0;  i< m; ++i){
      for(int j = 0; j < m; ++j){
      (A11)[i][j]=0;
      (A11)[i][j]+=(A)[i][j];
      (A12)[i][j]=0;
      (A12)[i][j]+=(A)[i][j+m];
      (A21)[i][j]=0;
      (A21)[i][j]+=(A)[i+m][j];
      (A22)[i][j]=0;
      (A22)[i][j]+=(A)[i+m][j+m];}}
 
 
      for(int i = 0;  i< m; ++i){
      for(int j = 0; j < m; ++j){
      (B11)[i][j]=0;
      (B11)[i][j]+=(B)[i][j];
      (B12)[i][j]=0;
      (B12)[i][j]+=(B)[i][j+m];
      (B21)[i][j]=0;
      (B21)[i][j]+=(B)[i+m][j];
      (B22)[i][j]=0;
      (B22)[i][j]+=(B)[i+m][j+m];}}
      
      
     for(int i = 0;  i< m; ++i){
      for(int j = 0; j < m; ++j){
        
      Asum1[i][j]+=A11[i][j]+A22[i][j];      
     Bsum1[i][j]+=B11[i][j]+B22[i][j];
      
      Asum2[i][j]+=A21[i][j]+A22[i][j];
      
      Bsum3[i][j]+=B12[i][j]-B22[i][j];
      
      Bsum4[i][j]+=B21[i][j]-B11[i][j];
      
      Asum5[i][j]+=A11[i][j]+A12[i][j];
      
      Asum6[i][j]+=A21[i][j]-A11[i][j];
       Bsum6[i][j]+=B11[i][j]+B12[i][j];
       
        Asum7[i][j]+=A12[i][j]-A22[i][j];
        Bsum7[i][j]+=B21[i][j]+B22[i][j];}}
        
        
        if(m<2){   
           
                func2(Asum1,Bsum1,P1,m);
                func2(Asum2,B11,P2,m);
                func2(A11,Bsum3,P3,m);
                func2(A22,Bsum4,P4,m);
                func2(Asum5,B22,P5,m);
                func2(Asum6,Bsum6,P6,m);
                func2(Asum7,Bsum7,P7,m);
                int i;
                for( i=0;i<m;i++){
                for(int j=0;j<m;j++)         
                for(int k=0;k<m;++k) {  
                (C)[i][j]=P1[i][k]+P4[i][k]+P7[i][k]-P5[i][k];
                (C)[i][j+m]=P3[i][k]+P5[i][k];
                (C)[i+m][j]=P2[i][k]+P4[i][k];
                (C)[i+m][j+m]=P1[i][k]-P2[i][k]+P3[i][k]+P6[i][k];}}
                }  
                   
   
                else{ 
                
                          
          return func1(Asum1,Bsum1,P1,m);
          return func1(Asum2,B11,P2,m);
         return func1(A11,Bsum3,P3,m);
         return func1(A22,Bsum4,P4,m); 
         return func1(Asum5,B22,P5,m); 
         return func1(Asum6,Bsum6,P6,m); 
         return func1(Asum7,Bsum7,P7,m);
         int i;
                for( i=0;i<m;i++){
                for(int j=0;j<m;j++)         
                for(int k=0;k<m;++k) {  
                (C)[i][j]=P1[i][k]+P4[i][k]+P7[i][k]-P5[i][k];
                (C)[i][j+m]=P3[i][k]+P5[i][k];
                (C)[i+m][j]=P2[i][k]+P4[i][k];
                (C)[i+m][j+m]=P1[i][k]-P2[i][k]+P3[i][k]+P6[i][k];}}
         }
                
       
                
               
        
        
      
                   
        
    ofstream oos;
    oos.open("rezultatai.txt");
    oos<<"C:\n"<<endl;                                                                
    for(int i=0;i<kiek;i++){
    oos<<endl<<endl;
    for(int j=0;j<kiek;j++){
    oos<<"["<<setw(2)<<C[i][j]<<setw(2)<<"]";}}
    oos.close();
    
//////////////////////////////////////////////////
 
}      
 
    int func2 (float A[z][z],float B[z][z],float C[z][z],int N){ 
         
    for(int i=0;i<N;++i)
    for(int j=0;j<N;++j){
  
     C[i][j]=0;
     for(int k=0;k<N;++k)
     C[i][j]+=A[i][k]*B[k][j];}
     
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.