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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
andyoO
1 / 1 / 0
Регистрация: 19.12.2012
Сообщений: 68
#1

небольшая ошибочка - C++

10.01.2013, 19:06. Просмотров 207. Ответов 0
Метки нет (Все метки)

Задан текст. Задано множество из n символов. Подсчитать количество вхождений в тексте каждого из символов массива.
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
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cstring>
#include <conio.h>
char * findchar(char * str, char ch){
    for(;*str;++str)
        if (*str==ch) return str;
    return NULL;
}
 
 
int main(){
    std::ifstream file("input.txt",std::ios_base::binary);
    file.seekg(0,std::ios::end);
    int txtlen=file.tellg();
    file.seekg(0,std::ios::beg);
    char * txt=new char[txtlen+1];
    file.read(txt,txtlen);
    txt[txtlen]=0;
    char fstr[]="aaadrf";
 
    int slen=strlen(fstr);
    int * countchar=new int[slen];
    memset(countchar,0,slen*sizeof(*countchar));
    for(char *p=txt,*pf;*p;++p){
        if (pf=findchar(fstr,*p)) {
            ++(countchar[pf-fstr]);
        }
    }
    std::cout<<"Text:\n"<<txt;
    std::cout<<"\nFind:\n"<<fstr<<std::endl;
    for(int i=0;i<slen;++i){
        std::cout<<"Char "<<fstr[i]<<std::setw(5)<<countchar[i]<<std::endl;
    }
    delete [] countchar;
    delete [] txt;
    std::cin.get();
    getch();
}
при повторе символа считает неправильно, а вот если символ повторяется 1 раз - все в норме, как исправить этот нюанс?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2013, 19:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос небольшая ошибочка (C++):

Небольшая ошибочка в массиве - C++
Смысл программы в том,Что в ввожу сначала сколько чисел я хочу ввести.Например 2. В итоге преобразований и операций делает например 2+5=7...

ошибочка - C++
происходит ошибка в стрчоке 33, в файле содержаться цифры, подскажите в чем проблема #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include...

Ошибочка - C++
#include &lt;vcl.h&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #define N 5 int main() { ...

IsProcessRun ошибочка - C++
Всем привет. Недавно начал изучать C++ и сразу столкнулся с проблемкой. Делаю проверку на процесс таким образом: bool...

ошибочка с корнем - C++
#include &lt;stdio.h&gt; #include &lt;iostream.h&gt; #include &lt;math.h&gt; int main () { double dX; double dY; dX =...

Ошибочка маленькая и не понятная((( - C++
Исправите ошибку.За ране спасибо! #include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2013, 19:06
Привет! Вот еще темы с ответами:

Работа с матрицами. Ошибочка - C++
class matrix{ private: double **Matrix; int Rows, Cells; public: matrix(int N, int M): Rows(N), Cells(M){} friend ostream&amp;...

Перегрузка оператора, ошибочка - C++
bool MyString::operator==(const MyString &amp;rhs){ if (this-&gt;Length() != rhs.Length()) return false; for(unsigned int...

Class Book ошибочка - C++
Задания: Создать пустой проект и добавить в него файл main.cpp с функцией main. Создать заголовочный файл book.h (не забывая о стражах...

Ошибочка в коде телефонной книги - C++
Добрый день. Задача - написать телефонную книгу. Все работает, но... когда сначала добавляю контакт, потом удаляю и вывожу список......


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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