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

Ошибки в простых задачах - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Замена в строке каждого второго символа "!" на "$" http://www.cyberforum.ru/cpp-beginners/thread595261.html
Ребята, напишите пожалуйста программу. Я даже представления не имею какую функцию нужно использовать в задаче: "Ввести с клавиатуры строку символов. Признак окончания ввода строки – нажатие клавиши "Ввод". Составить программу для замены в строке длиной К символов каждого второго символа ! на $."
C++ Объяснить работу функции Может кто объяснить работу функции void zagalovok() { Node *t; head=new Node(); t=head; int V; cout<<"Введите список элементов:\n "; cin>>V; http://www.cyberforum.ru/cpp-beginners/thread595260.html
Асемблерный модуль и С++ C++
Программа должна считать количество слов вправо от самого короткого. ввод строки должен быть реализован в модуле С++, а ее обработка в асемблерном модуле. как компилировать программу я разобрался на более простом задании(сложение двух интов), но тут возникают проблемы. Думаю, я совсем не правильно передаю строку в асемблерный модуль. исходники имеются работа алгоритма подсчета слов меня...
C++ Решение краевой задачи для дифференциального уравнения методом сеток
Мне в университете задали данную программу написать. но к сожалению на паре мы не успели пройти этот метод. не могу найти точный пример этого метода, не могли подсказать ? формулы , или прислать может ссылку на конкретный пример?
C++ Шаблон класса (параметризация класса) http://www.cyberforum.ru/cpp-beginners/thread595249.html
Нужна помощь и советы!!! Англо-русский словарь построен как список. Каждая компонента содержит английское слово, соответствующее ему русское слово и счетчик количества обращений к данной компоненте. Первоначально список формируется согласно английскому алфавиту. В процессе эксплуатации словаря при каждом обращении к компоненте в счетчик обраще¬ний добавляется единица. Составить программу,...
C++ Индекс первого появления буквы в строке Всем доброго времени суток! Есть вот такое задание: int find(char *S; char c) Найти место первого появления в строке S какой-либо буквы, если строка S не содержит этой буквы, возвращает значение –1. Задано сделать с помощью указателей и через While. Буду очень признателен за любую помощь. подробнее

Показать сообщение отдельно
Bllaaa
11 / 11 / 1
Регистрация: 08.12.2011
Сообщений: 148
03.06.2012, 19:47     Ошибки в простых задачах
Здраствуйте. Мне, не ождинно для меня, потребовались старые задачки:
1) Количество вхождений слова в текст
2) Вывод только вопросительных предложений
Я нашёл у себя коды, но они совершенно не работают! Помогите, укажите на ошибки, ну или предложите альтернативу.

1)
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
#include "stdafx.h"
#include "iostream"
#include "fstream"
#include "cstring"
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int n = 101;
    char slovo[n], line[n];
    char razdel[] = ".,?!/\<>)(:;"; 
    cout << "Введите слово:" << endl;
    cin >> slovo;
    ifstream fin("d:\\mytext.txt");
    if (!fin) {cout << "Ошибка открытия файла." << endl; system("PAUSE"); return 1;}
    int c = 0;
    while (fin.getline(line, n)) 
    { char *savel = strtok(line, slovo);
         while (savel !=NULL)
         { if ( !strcmp (savel, slovo)) c++;
         savel = strtok( NULL, razdel);
         }
    }
    cout << "Количество вхождений слова: " << c << endl;
    system("PAUSE");
    return 0;
}
2)
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
#include "stdafx.h"
#include "iostream"
#include "fstream"
#include "cstdio"
using namespace std;
 
int main()
{
    ifstream fin("d:\\mytext.txt");
    if ( !fin ) {cout << "Ошибка открытия файла!" << endl; system("PAUSE"); return 1;}
    fin.seekg(0, ios::end);
    long len = fin.tellg();
    char *buf = new char [len+1];
    fin.seekg(0, ios::beg);
    fin.read(buf, len );
    buf[len] = '\0';
    long n = 0, i = 0;
    while(buf[i] == '?')
    {
        if (buf[i] == '?' )
        {
        for (int j = n; j <= i; j++) 
            cout << buf[j];
        n = i + 1;
    }
    if (buf[i] = '.' || buf[i] == '!')
        n = i + 1;
    i++;
    }
    fin.close();
    system("PAUSE");
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru