![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Строки [D7, XP]
kop © (2006-03-16 17:48:00)Подскажите как написать программу, находящую согласную, которая встречается реже остальных в слове из Edit1
zorik (2006-03-16 18:02:00) [1]Вместо 2-х массивов
type
TSymb = record
s: char;
k: integer;
end;
TSymbArray = array [0..x] of TSymb;
var
SymbArray: TSymbArray;
kop (2006-03-16 17:59:00) [2]Я делаю так (на С++):
int i,j,min;
AnsiString slovo;
char sogl[20]={'б','в','г','д','ж','з','к','л','м','н','п','р','с','т','ф','х','ц','ч ','ш','щ'};
int count[20];
slovo = Edit1->Text;
for(i=0; i <= slovo.Length(); i++)
for(j=0; j < 20; j++)
{
if (slovo.SubString(i,1)==sogl[j])
{count[j]=+1;
}
}
min = count[0];
for(j=0; j < 20: j++)
{
if (min > count[j])
{min = count[j];
Label2->Caption = sogl[j];
}
}
zorik (2006-03-16 17:58:00) [3]Проехал. Выбирать нужно только согласные. Так как их, согласных, немного можно и статический массив сделать, заполнив его для начала, например "-1"
kop (2006-03-16 17:57:00) [4]То есть наобходимо иметь 2 массива, так? из одного читаем согласные буквы, а в другой пишем количество встречаний каждой согласной в слове?
zorik (2006-03-16 17:55:00) [5]Создать динамический массив записей (символ, кол-во встречаний). Пройтись по всем символам edit. если нет символа в масиве - добавить и записать кол-во 1, если есть - увеличить к-во на единицу. В конце выбрать из массива символ с наименьшим числом повторений.
Ega23 (2006-03-16 17:53:00) [6]1. Определить что есть согласная.
2. Определить, количество каждой согласной в данном слове.
3. Выбрать минимально положительное количество.
4. Вывести на экран.