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

Исправить код - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сведение о программе написанной на с++ http://www.cyberforum.ru/cpp-beginners/thread1125753.html
Искала по форуму, поиск находит что попало, но не то что нужно: нужно в VS 2008 установить для программы: file version product version product name copyright file description
C++ Увеличение и уменьшение "Квадрата" афтоматически Выкладываю готовый код (возможно кому то пригодится) Задание : Решить предыдущую задачу, только размеры должны изменятся афтоамтически через 1 секунду. Нажатие на левую кнопку мыши меняет направление изменения размеров. Права кнопка завершает работу Код программы: #include <Windows.h> #include <tchar.h> http://www.cyberforum.ru/cpp-beginners/thread1125723.html
C++ Снова try catch
Доброе утро всем!:) Недавно спрашивала как работать с блоками try ... catch. В общем, прозрение так и не пришло, но доделать код хочется. Вот сделала пока такую штуку int_array::int_array(int n) { try{ if (n < 0) throw "Cannot initialize array with negative count of elements!"; mas = new int; for (int i = 0; i < n; ++i)
Задание из Страуструпа C++
Добрый день. При изучении С++ по учебники Страуструпа столкнулся со следующим заданием : "Дайте пользователю возможность определять функции в настольном калькуляторе. Подсказка: определяйте функции как последовательность действий, прямо так, как их набрал пользователь. Такую последовательность можно хранить или как символьную строку, или как список лексем. После этого, когда функция вызывается,...
C++ Файлы и записи c++ http://www.cyberforum.ru/cpp-beginners/thread1125688.html
Составить программу, выводящую на экран анкетные данные учеников (Ф. И. О., год рождения, адрес, сведения о родителях). Распечатать данные об учениках, родившихся ранее заданного года. мы вводим в программе данные через структуру записываем их в новый файл а потом открываем этот файл еще раз и задам условие и исхдя из условия выводим учеников на экран
C++ Количество отрицательных и количество положительных элементов количество отрицательных и количество положительных элементов подробнее

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

Исправить код - C++

21.03.2014, 13:54. Просмотров 251. Ответов 4
Метки (Все метки)

Исправлял код и не могу исправить выделенное(в коде). Помогите чем-нибудь заменить данные строки(сделать более просто без iFile).
В самом низу изначальный код.

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
#include "conio.h"
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main() {
FILE * f1 = fopen("input.txt", "r");
string str, temp;
cin >> str;
cout << "ishodnaya stroka: " << str << endl;
vector<string> pravilo, zamen, tip;
//--------------------------
while(iFile) {
iFile >> temp;  pravilo.push_back(temp);
iFile >> temp;  zamen.push_back(temp);
iFile >> temp;  tip.push_back(temp); }
//---------------------------
 
 
if(!pravilo.size() || !zamen.size() || !tip.size()) {
cout << "Ne pravilnie dannie!" << endl;
getch();
return 1; }
pravilo.pop_back();
zamen.pop_back();
tip.pop_back();
fclose(f1);
 
 
cout << "spisok pravil:" << endl;
for(int i = 0; i < pravilo.size(); i++)
cout << pravilo.at(i) << " " << zamen.at(i) << " " <<tip.at(i) << endl;
cout << "process:" << endl;
for(int k = 0; k < pravilo.size(); k++) {
for(int i = 0; i < str.length() - pravilo.at(k).length() + 1; i++)
if(str.substr(i,pravilo.at(k).length()).compare(pravilo.at(k)) == 0) {
str.replace(i,pravilo.at(k).length(),zamen.at(k));
cout << str << endl;
if(tip.at(k).compare(",") == 0) k = -1; else
if(tip.at(k).compare(".") == 0) k = pravilo.size(); 
break; } }
for(i = 0; i < str.size(); i++)
if(str.substr(i,1).compare("|") == 0)
str.replace(i,1,"");
if(str.size() == 0) str = "|";
 
FILE * f2 = fopen("output.txt", "w");
cout << str;
cout << "rezultat: " << str << endl;
fclose(f2);
getch();
return 0; }



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
#include "conio.h"
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main() {
ifstream iFile ("input.txt");
string str, temp;
iFile >> str;
cout << "ishodnaya stroka: " << str << endl;
vector<string> pravilo, zamen, tip;
while(iFile) {
iFile >> temp;  pravilo.push_back(temp);
iFile >> temp;  zamen.push_back(temp);
iFile >> temp;  tip.push_back(temp); }
if(!pravilo.size() || !zamen.size() || !tip.size()) {
cout << "Ne pravilnie dannie!" << endl;
getch();
return 1; }
pravilo.pop_back();
zamen.pop_back();
tip.pop_back();
iFile.close();
cout << "spisok pravil:" << endl;
for(int i = 0; i < pravilo.size(); i++)
cout << pravilo.at(i) << " " << zamen.at(i) << " " <<tip.at(i) << endl;
cout << "process:" << endl;
for(int k = 0; k < pravilo.size(); k++) {
for(int i = 0; i < str.length() - pravilo.at(k).length() + 1; i++)
if(str.substr(i,pravilo.at(k).length()).compare(pravilo.at(k)) == 0) {
str.replace(i,pravilo.at(k).length(),zamen.at(k));
cout << str << endl;
if(tip.at(k).compare(",") == 0) k = -1; else
if(tip.at(k).compare(".") == 0) k = pravilo.size(); 
break; } }
for(i = 0; i < str.size(); i++)
if(str.substr(i,1).compare("|") == 0)
str.replace(i,1,"");
if(str.size() == 0) str = "|";
ofstream oFile ("output.txt");
oFile << str;
cout << "rezultat: " << str << endl;
oFile.close();
getch();
return 0; }
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru