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

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

Восстановить пароль Регистрация
 
diskbob
0 / 0 / 0
Регистрация: 18.01.2012
Сообщений: 3
23.01.2012, 19:30     переписать код с++ #1
Задача:
Написать программу, которая считывает текст из файла и выводит его на экран, после каждого предложения добавляя, сколько раз встретилось в нём введенное с клавиатуры слово.

Была написано прога в mingw studio, но требуется чтобы она работала на vc++.
Я пробовал её переписать, но ошибок при компиляции стало больше.

Сам код:
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
#include <iostream>
#include <cstdio>
#include <fstream>
using namespace std;
 
string s[100][100], a, t;
int b[100], n;
char ch;
 
int main()
{
//чтение данных из файла input.txt
ifstream in;
in.open("input.txt");
while(in) {
in >> a;
 
if(a[a.size() - 1] == '.') {
a.erase(a.size() - 1, 1);
s[n][b[n]] = a;
b[n]++;
n++;
 
} else {
s[n][b[n]] = a;
b[n]++;
}
}
// чтение слова с клавиатуры
cout << "input word: ";
cin >> t;
// подсчет количества вхождений слова в предложение и вывод
for(int i = 0; i < n; i++) {
int sum = 0;
for(int j = 0; j < b[i]; j++) {
cout << s[i][j] << ' ';
if(s[i][j] == t) sum++;
}
cout << " " << sum << endl;
}
return 0;
}
Заранее спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
23.01.2012, 19:48     переписать код с++ #2
просто добавьте
C++
1
#include <string>
и будет вам счастье
diskbob
0 / 0 / 0
Регистрация: 18.01.2012
Сообщений: 3
23.01.2012, 19:55  [ТС]     переписать код с++ #3
дописывал, но все равно ругается. могу лог выложить.

Добавлено через 2 минуты
Ооо. она сегодня заработала
спасибо
retmas
Жарю без масла
803 / 685 / 143
Регистрация: 13.01.2012
Сообщений: 1,580
23.01.2012, 19:58     переписать код с++ #4
если в начале
C++
1
2
3
#include <iostream>
#include <fstream>
#include <string>
а далее все идентично написанному в 1м посте. то должна компилится в современных и в gcc и в vs и в dmc и в ... вобщем - "не верю"(с)
diskbob
0 / 0 / 0
Регистрация: 18.01.2012
Сообщений: 3
23.01.2012, 21:07  [ТС]     переписать код с++ #5
С поиском слова-заработала. Спасибо.

У меня тут ещё одна есть. думаю условия писать смысла нет.
Опять же ругается, 3 ошибки и 10 предупреждений.

Если не сложно, можете посмотреть:
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
#include <iostream>
#include <map>
using namespace std;
 
struct ZNAK{
    string F, I, Z;
    int a[3];
};
 
ZNAK a[8];
map < string, int > m;
int n;
bool flag = false;
 
bool f(ZNAK a, ZNAK b) {
    return m[a.Z] < m[b.Z];
}
 
int main()
{
    //задается порядок знаков зодиака
    m["Aries"] = 1;
    m["Taurus"] = 2;
    m["Gemini"] = 3;
    m["Cancer"] = 4;
    m["Leo"] = 5;
    m["Virgo"] = 6;
    m["Libra"] = 7;
    m["Scorpio"] = 8;
    m["Sagittarius"] = 9;
    m["Capricorn"] = 10;
    m["Aquarius"] = 11;
    m["Pisces"] = 12;
    
    // считывание данных
    for(int i = 0; i < 8; i++)
        cin >> a[i].F >> a[i].I >> a[i].Z >> a[i].a[0] >> a[i].a[1] >> a[i].a[2];
    cout << "input number of month: ";
    cin >> n;
    
    sort(a, a + 8, f); // сортировка по знакам зодиака
    
    // вывод отсартированных данных по знаку зодиака
    cout << endl;
    for(int i = 0; i < 8; i++)
        cout << a[i].F << ' ' << a[i].I << ' ' << a[i].Z << ' ' << a[i].a[0] << ' ' << a[i].a[1] << ' ' << a[i].a[2] << endl;
    // вывод данных о людях родившехся в месяце введенного с клавиатуры
    cout << endl;
    for(int i = 0; i < 8; i++)
        if(a[i].a[1] == n) {
            flag = true;
            cout << a[i].F << ' ' << a[i].I << ' ' << a[i].Z << ' ' << a[i].a[0] << ' ' << a[i].a[1] << ' ' << a[i].a[2] << endl;
        }
    if(!flag) cout << "No people with " << n << " month";
    return 0;
}
Добавлено через 1 час 4 минуты
Может кому поможет, в общем надо добавить #include <algorithm>
Yandex
Объявления
23.01.2012, 21:07     переписать код с++
Ответ Создать тему
Опции темы

Текущее время: 04:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru