Помогите, пожалуйста решить эту задачу, заранее спасибо!
Определите какие символы и сколько раз встречаються в тексте.
Подсчет количества разных символов в тексте
Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill
Создать массив из 256 элементов типа Integer.
Дальше брать каждый символ текста и повышать на единицу элемент массива с индексом этого символа. Дальше вывести значения всех элементов, не равных 0.
Дальше брать каждый символ текста и повышать на единицу элемент массива с индексом этого символа. Дальше вывести значения всех элементов, не равных 0.
Ни что так не ограничивает фантазию программиста, как компилятор...
litis писал(а):Помогите, пожалуйста решить эту задачу, заранее спасибо!
Определите какие символы и сколько раз встречаються в тексте.
Делфи, паскаль ?
< L3X. (ICQ: 8721378, Mail - l3x@list.ru)
Переименовал тему
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
- un4-funeral
- Сообщения: 60
- Зарегистрирован: 18 апр 2008, 23:40
- Контактная информация:
в тексте? в смысле в текстовом файле ? хотя не важно
в своё время делал для интереса...не откопал исходник
вообще мы в void kol_sim(AnsiString str) отправляем строк и производим с ней действия
писал на скорую руку...так что сорь, если нерационально =)
в своё время делал для интереса...не откопал исходник
Код: Выделить всё
//---------------------------------------------------------------------------
#include <vcl.h>
#include <stdio.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
struct simvoli
{
char s;
int kol;
};
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void kol_sim(AnsiString str)
{
simvoli sim[200]; //Массив структур, содержащий символы и их количество
int point;
point=0; //Число символов
//Занос неповторяющихся символов в массив
for (int i=1;i<=str.Length();++i)
{
int fl;
fl=0;
for (int j=0;j<point;++j)
{
if (str[i]==sim[j].s)
++fl;
}
if (fl==0)
{
sim[point].s=str[i];
sim[point].kol=1;
++point;
}
}
//Подсчёт количества
for (int j=0;j<point;++j)
{
int kol;
kol=0;
for (int i=1;i<=str.Length();++i)
{
if (str[i]==sim[j].s)
++kol;
}
sim[j].kol=kol;
}
//Вывод в Edit2
for (int i=0;i<point;++i)
{
Form1->Edit2->Text=Form1->Edit2->Text+sim[i].s;
Form1->Edit2->Text=Form1->Edit2->Text+sim[i].kol;
}
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
kol_sim(Edit1->Text);
}
//---------------------------------------------------------------------------
вообще мы в void kol_sim(AnsiString str) отправляем строк и производим с ней действия
писал на скорую руку...так что сорь, если нерационально =)
- Oleg_Rus
- Сообщения: 335
- Зарегистрирован: 16 окт 2006, 09:56
- Откуда: г.Улан-Удэ, респ.Бурятия, Российская Федерация
- Контактная информация:
если я не ошибаюсь, в разделе алгоритмов эта тема рассматривалась.
e-mail: garmayev@yandex.ru
---------------------------------------------------------------------------
<a href="http://nick-name.ru/sertificates/711965/"><img src="http://nick-name.ru/img.php?nick=Garmay ... =2&text=t5" alt="Никнейм Garmayev зарегистрирован!" /></a>
---------------------------------------------------------------------------
<a href="http://nick-name.ru/sertificates/711965/"><img src="http://nick-name.ru/img.php?nick=Garmay ... =2&text=t5" alt="Никнейм Garmayev зарегистрирован!" /></a>