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

Программирование комбинированных задач на языке С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Автодополнения кода в Emacs http://www.cyberforum.ru/cpp-beginners/thread901344.html
Здравствуйте, как можно включить функцию автодополнения ("например при нажатии на определённую клавишу или автоматический") в редакторе Emacs для С++ кода? Чтото типа intellisense в Visual Studio, но для Emacs. Имееться Emacs версия: GNU Emacs 23.4.1 (i686-pc-linux-gnu, GTK+ Version 2.24.12) of 2012-09-22 on akateko, modified by Debian.
C++ как сделать блок-схему к этой части кода ? int InitArray(int i) { std::cin>>arr; if(arr==0) return count; count++; InitArray(i+1); } http://www.cyberforum.ru/cpp-beginners/thread901341.html
C++ Как передать в функцию указатель на структуру, если эта структура не определена глобально?
Проблема заключается в следующем: предположим есть некая структура, которая была определена внутри функции main. Далее я допустим хочу передать указатель на эту структуру в другую функцию, в которой ее поля будут заполнены. Загвоздка не в том, как написать такую функцию, а в том, как ее объявить. Какой тип данных я должен указать при объявлении заголовка функции? void main (void) { ...
C++ DevCPP перестал компилировать
Уважаемые форумчане, доброго времени суток. У меня такой вопрос: из-за чего может быть такая ошибка в DevCPP 5.4.1: c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../lib/libbgi.a when searching for -lbgi Раньше все работало отлично, а теперь ничего не...
C++ нет информации в выходном файле http://www.cyberforum.ru/cpp-beginners/thread901326.html
Здравствуйте.По заданию (Дан массив размера N. Определить количество его промежутков монотонности (то есть участков, на которых его элементы возрастают или убывают)) написал код.Сначала надо было вводить данные с клавиатуры , а после переделки кода считывать из файла. Но при запуске выдает сообщение ,что введено не число.Выходной файл создается но пустой. Не могу найти ошибку в коде....
C++ Удалить лишние пробелы Сделал програму для удаления лишних пробелов из строки(те что стоят в начале строки, в конце, все кроме одного между словами). Програма вроде работает, но если количесто пробелов(во всей строке) будет больше 5 то появляеться ошибка. Если до 5 то все нормально переделавает. Как решить ету проблему? #include <iostream> #include <string> using namespace std; void delete_spaces(string &str)... подробнее

Показать сообщение отдельно
newyork7776
347 / 340 / 79
Регистрация: 21.05.2013
Сообщений: 1,305
Завершенные тесты: 1
14.06.2013, 03:11     Программирование комбинированных задач на языке С++
Вот код
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
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
FILE *fl;
typedef struct
{
    int number;
    char fio[30];
    int nach;
    int vich;
    int dolg;
unsigned char matem;
unsigned char oaip;
} robot;
robot praz[300]; // Масив структур
char name[20]; // Название файла
int vsegod=0;  //Всего долга
int nst=0; // Число введених структур
int menu(); // Меню
void nnf(); // Ввести ім’я файла
void newf(); // Создать новый файл
void spisok(); // Ввести список
void opf(); // Отрить файл
void resc(); // Вивести результат на екран
void resf(); // Вивести результат в файл
void dolg();  //Узнать долг
void vsegodolga(); // Узнать суму
int main()
{
    setlocale(LC_ALL, "Russian");
 
while (true)
{
switch (menu())
{
case 1: nnf(); break;
case 2: newf(); break;
case 3: spisok(); break;
case 4: opf(); break;
case 5: resc(); break;
case 6: resf(); break;
case 7: return 0;
default: "Введите првельно!";
}
puts("Press any key to continue");
getch(); system("cls");
}}
int menu() // Меню
{
cout << "Виберите" << endl;
cout << "1. Ввести имя файла" << endl;
cout << "2. Новый файл" << endl;
cout << "3. Заполнить файл" << endl;
cout << "4. Открыть файл" << endl;
cout << "5. Показать результат" << endl;
cout << "6. Записать в файл" << endl;
cout << "7. Выход" << endl;
int i;
cin >> i;
return i;
}
void nnf() // Ввести ім’я файла
{
cout << "Введите название фйла" << endl;
cin >> name;
}
void newf() // Створити новий файл
{
if ((fl = fopen(name,"wb"))==NULL)
{
cout << "Ошибка при создание"<<endl;
exit(1);
}
cout << "OK" << endl;
fclose(fl);
}
void spisok() // Ввести список
{
if ((fl = fopen(name,"rtb+"))==NULL)
{
cout << "Ошибка при создание"<<endl;
exit(1);
}
cout << "Введите количество cотрудников = ";
cin >> nst;
for (int i=0; i<nst; i++)
{
    cout << "Табельный номер : ";
    cin >> praz[i].number;
    cout << "Фамилия работника : ";
    cin >> praz[i].fio;
    cout << "Всего начислено: ";
    cin >> praz[i].nach;
    cout << "Всего вычтено : ";
    cin >> praz[i].vich;
 
fwrite( &praz[i], sizeof(robot), 1, fl );
}
fclose(fl);
}
void opf() // відкрити файл
{
if ((fl = fopen(name,"rb"))==NULL)
{
cout << "Ошибка при откритее"<<endl;
exit(1);
}
nst=0; robot std;
while(true)
{
int nwrt = fread( &std, sizeof(robot), 1, fl );
if (nwrt!=1) break;
praz[nst]=std;
cout << " Номер = "<<praz[nst].number << "\n     Фамилия работника = " << praz[nst].fio << "\n     Всего начислено = " 
<< praz[nst].nach << "\n     Всего вычтено = " << praz[nst].vich
<< "\n     Долг = " << praz[nst].dolg << endl;
nst++;
}
fclose(fl);
}
void resc() // Вивести результат на екран
{
for (int i=0; i<nst; i++)
praz[i].dolg=(praz[i].nach - praz[i].vich)
cout << " Долг " << praz[i].fio<< " = " <<praz[i].dolg << endl;
}
void resf() // Вивести результат в файл
{
char namet[30];
FILE *ft;
cout << "Введите имя файла" << endl;
cin >> namet;
if ((ft = fopen(namet,"w"))==NULL)
{
cout << "Ошибка при создание "<<endl;
exit(1);
}
char s[80];
for (int i=0; i<nst; i++)
praz[i].dolg=(praz[i].nach - praz[i].vich);
strcpy(s, praz[i].dolg);
strcat(s, "\n"); // Додати роздільник рядків
fputs(s, ft);
fclose(ft);
}
 
void doolg()
{
    for (int i=0;i<nst;i++)
        praz[i].dolg=(praz[i].nach - praz[i].vich)
}
 
 
void vsegodolga()
{
    for(int i=0;i<nst;i++)
        vsegod=praz[i].dolg+vsegod;
}
если у кого-то будет желание то пусть немного подправит, а то дальше я незнаю что можна сделать

Добавлено через 1 минуту
Deizven, подправь мой код пожалуста
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru