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

матрица, и вывод из\в фаил - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти количество строк в текстовом файле http://www.cyberforum.ru/cpp-beginners/thread207424.html
я не можу написати програму для підрахування кількості стрічок в текстовому файлі. чомусь в результаті видає 3 помилки, я пишу на Turbo C...)) можете допомогти? #include <conio.h> #include...
C++ Описание программы Нужно описать каждую строчку программы #include <stdio.h> #include <conio.h> #include <time.h> //================================================ void keybord(int *Arr, int n) { int i;... http://www.cyberforum.ru/cpp-beginners/thread207422.html
Функция создания подсписка, содержащего элементы основного списка, содержащие введенную подстроку C++
Вот задание:Реализовать односвязный список, в котором в элементах может содержаться строка любой длины. И обеспечить функцию создания подсписка, содержащего элементы основного списка, содержащие...
Не получаетса сделать лабу C++
Цифровым каналом передаются слова (пары байт), два старших бита каждого из них содержат контрольную сумму (CRC), который формируется по такому правилу: 14-й бит - сумма по модулю 2 нечетным битов,...
C++ Дана последовательность символов.Выяснить,имеет ли в этой последовательности пара соседствующих букв НО или ОН http://www.cyberforum.ru/cpp-beginners/thread207415.html
помогите,пожалуйста, написать программу!!! Дана последовательность символов.Выяснить,имеется ли в этой последовательности пара соседствующих букв НО или ОН.
C++ Объяснить рекурсию (на примере ханойской башни) Кто может объяснить рекурсию? Можно на примере ханойской башне.Заранее спасибо. подробнее

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

матрица, и вывод из\в фаил - C++

09.12.2010, 21:12. Просмотров 362. Ответов 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
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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
#include <iostream>
#include <ctime> 
#include <cmath>
#include <stdio.h>
#include <cstdlib>
  
using namespace std;
int sr_geo(); //среднее геометрическое
void s_klav(); //ввод с клавиатуры
void mas_vyv(); //вывод на экран
int m_menu(); //меню программы
int iz_faila(); //ввод из фаила
int masv_file(); //вывод в фаил
int **arr;
int Rw = 0;        //Размерность матрицы
int sr_geo(int **arr, int n)
{
    int sr_geo=0;
    float pr=1;
    for(int i=0; i<n; i++)
        pr*=abs(arr[i][i]);
    
    sr_geo = (int)exp(log((float)pr)/n);
        return sr_geo;
}
 
int main()
{
    char fv;
    if(m_menu())
    {
    cout<<"Resultat: \n";
    mas_vyv();
    
    cout<<"Vyvesti v fail? y/n \n";
    cin>>fv;
    
    if (fv=='y')
        masv_file();
    else printf("Exit \n");
    }
    system("pause");
return 0;
}
void s_klav()
{
    srand((unsigned)time(NULL));
    int n,i,j;
    int sr;
    cout<<"Vvedite razmer massiva: ";
    cin>>Rw;
    arr = new int*[Rw];
    cout<<"Massiv: "<<endl;
    
    for(i=0; i<Rw; i++)
    {
        arr[i] = new int[n];
        for(j=0; j < Rw; j++)
        {
            arr[i][j]=rand()%9+1;
            cout<<arr[i][j]<<"  ";
        }
            cout<<endl;
    }
}
void mas_vyv()
{
    int sr = sr_geo(arr,Rw); 
        cout<<endl;
        cout<<"Sformirovannaya matrica:"<<endl;
        for(int i=0; i < Rw; i++)
        {
            for(int j=0; j < Rw; j++)
            {
                    if((i+j)%2==0)
                    {
                            arr[i][j]=sr;
                    }
                    cout<<arr[i][j]<<"  ";
            }
            cout<<endl;
        }
            delete arr;
}
int m_menu()
{
    int cho;
    
    cout<<"1 - vvesti s klaviaturi\n2 - iz faila\n0 - vyhod\n";
    cin>>cho;
    switch(cho)
    {
    case 0:
        exit('Exit');
        break;
    case 1:
        s_klav();
        return 1;
        break;
    case 2:
        if(iz_faila())
        return 1;
        else return 0;
        break;
    
        default: cout<<"vvedite pynkt menu \n";
    }
    return 1;
}
int iz_faila()
{
    FILE *f;
    char FileName [80];
    printf ("Insert your full address: ");
    gets (FileName);
    printf ("File name %s\n", FileName);
    f=fopen(FileName,"rt");
    int nElements = 0, m=0;
    char ch;
     if(f!=NULL)
    {
        printf("File was open! \n");
        while ( ( ch = getc ( f ) ) != EOF )
        {
            if((ch != '\n') && (ch != ' ')) nElements++;    //Определяем размерность матрицы записанной в файл
                printf(" %c ", ch);            //Выводим
        }
        
        printf("\n Number = %d \n", nElements);
        fseek(f,0,SEEK_SET);
/*      m = new float * [n];
        for (i=0;i<n;i++)
        {
            m[i]=new float [n];
        }
        for (i=0;i<n;i++)
        {
            for (j=0;j<n;j++)
                fscanf(f,"%f",&m[i][j]);
        }   */
       fclose(f);
       return 1;
    }
    else 
    {
        cout<<"Oshibka otkritiya!\n";
        return 0;
    }
}
int masv_file()
{
//    char fname [80];
    cout<<"Vvedite polnoe nazvanie fayla: \n";
//    gets(fname);
    
    FILE *pFile = fopen("File.txt", "w+");
    if(pFile!=NULL)
    {
        for (int i=0; i < Rw; i++)
            for (int j=0; j < Rw; j++)
            {
                fprintf(pFile,"%d ", arr[i][j]);
                printf(" %d ", arr[i][j]);
            }
                fprintf(pFile,"\n");
        fclose(pFile);
            return 1;
    }
    else 
    {
        cout<<"Oshibka otkritiya!\n";
        return 0;
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.