Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.11.2008, 20:22   #1
ivan89
Пользователь
 
Аватар для ivan89
 
Регистрация: 22.09.2008
Сообщений: 59
По умолчанию

Установить сколько согласных букв в каждом слове данного предложения. Выделить слово в котором больше всего согласных букв.

Код:
#include <iostream>
int main()
{
	using namespace std;
	char str[256];
	char st[]="wrtpsdfghklzxcvbnm";
	cout<<"vvide stroku:=";
	  cin.get(str,256);
	  int n=strlen(str);
             int n1=strlen(st);
	  
	  int max=0,j=0,k=0,t1=0;
	  int t2=0,m;
	  for(int i=0; i<n; i++)
	  {
		  if(str[i]!=' ')
		  {
                                for(int t=0; t<n1; t++)
                                if(st[t]==str[i])
			   j++;
			   t2++;   
		  }
		  

		  if(str[i]==' '|| str[i]=='.')
		  {
		       if(max<j)
		       {
			  max=j;
                                      k=i;
		             m=t2;
				
		        }
			  j=0;
			  t2=0;
		  }
	  }
	  for(i=k-m; i<k; i++)
	  cout<< str[i] ;
	  cout<<endl;
	  return 0;
}
ivan89 вне форума Ответить с цитированием
Старый 11.11.2008, 21:32   #2
Artiom8585
 
Регистрация: 11.11.2008
Сообщений: 1
По умолчанию

ivan89
спасибо,
программа выдаёт слово с макс. количеством согласных букв, как её дополнить чтобы она ещё выдала анализ каждого слова? например

мама 2/4
клин 3/4
ага 1/3
Artiom8585 вне форума Ответить с цитированием
Старый 12.11.2008, 15:29   #3
ivan89
Пользователь
 
Аватар для ivan89
 
Регистрация: 22.09.2008
Сообщений: 59
По умолчанию

выдаёт слово с макс. количеством согласных букв и анализ каждого слова
Код:
#include <iostream>
void onaliz(char *st1, int lim);
char st[]="wrtpsdfghklzxcvbnm";
using namespace std;
int main()
{
	char str[256];
	cout<<"vvide stroku:=";
	  cin.get(str,256);
	  int n=strlen(str);
              int n1=strlen(st);
	  
	  int max=0,j=0,k=0,t1=0;
	  int t2=0,m;
	  for(int i=0; i<n; i++)
	  {
		  if(str[i]!=' ')
		  {
                           for(int t=0; t<n1; t++)
	                  if(st[t]==str[i])
		         j++;
		         t2++;
				   
		  }
		  

		  if(str[i]==' '|| str[i]=='.')
		  {
			 
			  if(max<j)
			  {
			      max=j;
                                         k=i;
			      m=t2;
			  }
			  j=0;
			  t2=0;
		  }
	  }
	  for(i=k-m; i<k; i++)
	  cout<< str[i] ;
	  cout<<endl;
             onaliz(str,n);
	  return 0;
}
void onaliz(char *st1, int lim)
{
	int j1=0,t2=0;
	int n1=strlen(st);
	for(int i=0; i<lim; i++)
	{
		if(st1[i]!=' ')
		{
			for(int t=0; t<n1; t++)
			   if(st1[i]==st[t])
			     j1++;
                                      t2++;
		}
		if(st1[i]==' '|| st1[i]=='.')
		{	
			 for(int k=i-t2; k<i; k++)
			 cout<< st1[k];
			 cout<<"  "<< j1 <<"/"<< t2 <<endl;  
			   j1=0;
			   t2=0;
		}
	}
}
ivan89 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти и вывести все слова,у котоpых число гласных букв пpевышает число согласных. Briz Помощь студентам 2 11.05.2008 00:56
процедура, которая выводит все слова, начинающиеся с согласных букв латинского алфавита. sergeyfsd Паскаль, Turbo Pascal, PascalABC.NET 6 21.02.2008 22:29
Перебор заглавных букв в слове =LeonZone= Общие вопросы Delphi 8 02.11.2007 14:59